问题标签 [aad-pod-identity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4898 浏览

kubernetes - 如何编辑/修补 kubernetes 部署以使用 python 添加标签

我对 kubernetes 相当陌生 - 我已经开发了 Web UI/API,它使用 Azure 机器学习服务到 Azure Kubernetes 服务 (AKS) 自动部署模型。作为一项强化措施,我打算使用此文档为 AKS 中部署的 pod 设置托管标识。其中一个步骤是编辑部署以在部署中添加身份特征标签(请参阅本节/spec/template/metadata/labels中开头Edit the deployment to add ...的段落)。

我希望使用 python kubernetes 客户端(https://github.com/kubernetes-client/python)自动执行此步骤。浏览可用的 API,我想知道这可能patch_namespaced_deployment允许我编辑部署并在/spec/template/metadata/labels. 我一直在寻找一些使用 python 客户端的示例代码 - 任何帮助实现上述目标将不胜感激。

0 投票
1 回答
318 浏览

azure - 如何使用 Azure pod 身份与 Keda 合作

我正在尝试将 pod 身份与KEDA结合使用来访问一些 Azure 资源,准确地说是 Azure 服务总线和 Keyvaults。

我注意到aadpodbinding应该在根据这些说明部署操作员时进行设置。我可能误解了这些说明,因为我阅读它的方式是我需要一个aadpodbindingie。有某种集群范围的“keda-identity”吗?

我想知道如何在我的场景中使用 pod 身份:我希望我的 AKS 集群中运行的每个解决方案都有一个单独的身份。这些身份将为解决方案提供对 Azure 资源的访问权限,然后我想使用这些身份为 KEDA 提供身份验证。我不希望共享身份访问我的订阅中的多个资源。

当然这是可能的,我以某种方式误解了说明(不是以英语为母语的人)?

0 投票
0 回答
161 浏览

spark-streaming - 带有 Azure 事件中心的 Azure AAD pod 标识

我需要使用托管标识机制从运行在 kubernetes 中的 Spark 流应用程序访问事件中心我正在通过 azure AAD pod 托管标识连接到 Azure 事件中心,但没有找到任何有关事件中心的文档

  1. azure AAD pod 标识是否支持使用 azure Active Directory 安全地访问事件中心资源。

  2. 任何人都可以提供将事件中心与 AAD pod 一起使用的步骤/代码吗

提前致谢

0 投票
0 回答
160 浏览

azure - 正确部署 AAD Pod 身份

我打算使用 AAD Pod 身份,以便我的 kubernetes 工作负载可以利用我在 Azure 中创建的托管身份。

目前,我通过 ARM 模板创建身份和角色分配。之后,我需要创建一个AzureIdentityCRD 实例,其中包含clientId对托管标识的引用。

我来自另一个不需要 CRD 来代表服务帐户行事的云提供商,所以我想知道管理此配置的最佳实践是什么?

理想情况下,我希望留在 ARM 模板的范围内,这样我就不必在多个地方拆分集群部署。但是,我不知道这将如何工作,因为我需要生成一个 yaml,其中包含对来自其他 ARM 模板的内容的引用。无需打开脚本即可通过 az cli 进行查询的自动执行此操作的正确方法是什么:

  1. 通过 ARM 模板部署托管集群 + 托管身份
  2. 创建一个Azure Identity绑定到这些托管标识之一的

我不确定这是否可能,但很想看看其他人做了什么。

0 投票
2 回答
999 浏览

azure - Azure Key Vault 与 AKS 的集成适用于 nginx 教程 Pod,但不适用于实际项目部署

根据标题,我按照文档进行了集成。

我可以部署nginx.yaml并在大约 70 秒后打印出秘密:

现在我正在尝试将其应用于 PostgreSQL 部署进行测试,我从 Pod 获得以下信息description

nmi logs

不知道为什么,因为我基本上将设置nignx.yamlpostgres.yaml. 他们来了:

关于这里的问题的建议?

0 投票
1 回答
310 浏览

azure-aks - 使用 pod 身份安全访问 Azure 文件共享

我使用 Azure 文件在 AKS 中的许多 pod 之间共享存储。

在这个集群中,我们有多个应用程序,我希望访问这个存储是安全的,每个存储帐户只能通过分配给这些 pod 的一个用户管理身份访问:

  • 使用 pod 身份
  • 将“存储文件数据 SMB 共享参与者”角色分配给我们的托管身份。

option1 : 使用 pod-identity,当我们创建存储类和持久化卷声明时,它会自动创建 PV 和存储帐户,那么如何动态检索这个存储帐户的名称?(带有 Terraform 的 IaC)

选项 2:不使用 pod-identities,我们如何才能安全地从 pod 访问此存储帐户?

0 投票
1 回答
250 浏览

kubernetes - aks 集群创建上的 pod 身份

目前,在集群创建时不可能在 arm 模板(和 terraform)上分配用户分配的身份。我已经尝试了很多东西,并且在手动插入后更新效果很好:

但是,我想通过部署立即完成此操作,因此我需要将 pod 用户身份自动插入集群。我还尝试使用 运行命令,DeploymentScripts但部署脚本尚未准备好使用preview aks extersion

我的配置如下所示:

我总是遇到同样的问题:

"statusMessage": "{\"error\":{\"code\":\"InvalidTemplateDeployment\",\"message\":\"The template deployment 'deployment_test' is not valid according to the validation procedure. The tracking id is '.....'. See inner errors for details.\",\"details\":[{\"code\":\"PodIdentityAddonUserAssignedIdentitiesNotAllowedInCreation\",\"message\":\"Provisioning of resource(s) for container service cluster-12344 in resource group myrc failed. Message: {\\n \\\"code\\\": \\\"PodIdentityAddonUserAssignedIdentitiesNotAllowedInCreation\\\",\\n \\\"message\\\": \\\"PodIdentity addon does not support assigning pod identities on creation.\\\"\\n }. Details: \"}]}}",

0 投票
2 回答
265 浏览

azure - 使用托管标识将 Azure Key Vault 与 Azure Kubernetes 服务集成

我正在 Azure 中设置 Keyvault 与 k8s 的集成。我可以使用托管标识在 Azure 中使用 csi 驱动程序装载包含机密的卷。我可以通过在 pod 中执行并找出秘密来验证秘密是否已安装。但是,现在我想将秘密公开为环境变量,但我不清楚如何做到这一点。以下是我已经部署SecretProviderClass的以下内容。Pod

spc-keyvault.yaml:

pod.yaml:

这是我部署 Pod 清单时的错误:

错误很明显,没有秘密命名:foobar-secret。我认为 csi 驱动程序会自动创建所需的机密。因此,经过一些研究和挖掘文档和源代码后,我找到了添加nodePublishSecretRef到 pod yaml 的建议。然后您需要nodePublishSecretRef使用 aad 客户端 ID 和客户端密码进行设置。[1, 2] 但是,由于我使用的是托管身份,因此我不确定如何执行此操作。

有没有人使用托管身份进行这项工作并且可以提供任何见解?或者我是否需要创建一个启动脚本(通过 configmap?)以将卷安装填充为 env。变量。

  1. https://azure.github.io/secrets-store-csi-driver-provider-azure/configurations/identity-access-modes/service-principal-mode/
  2. https://medium.com/swlh/integrate-azure-key-vault-with-azure-kubernetes-service-1a8740429bea
0 投票
1 回答
54 浏览

node.js - 尝试在 aks 中使用 V1 版本执行时添加 CustomResourceDefinition 引发错误

我正在尝试在 aks 中添加 customresourcedeployment。早些时候我们使用了我认为已弃用的 V1beta1 版本。现在我正在尝试使用抛出架构验证错误的 v1 版本。V1beta1版本如下。

现在我正在尝试使用以下模板。

我正在尝试使用以下代码进行部署。

错误如下。

*{ "message": "CustomResourceDefinition.apiextensions.k8s.io "azureassignedidentities.aadpodidentity.k8s.io" 无效:[spec.versions[0].schema.openAPIV3Schema:必需值:需要架构,spec.versions[1 ].schema.openAPIV3Schema:必需值:需要模式,spec.versions[2].schema.openAPIV3Schema:必需值:需要模式,spec.versions[3].schema.openAPIV3Schema:必需值:需要模式,规范.versions[0].name:无效值:“”:DNS-1035 标签必须由小写字母数字字符或“-”组成,以字母字符开头,并以字母数字字符结尾(例如“my-name” , 或 'abc-123', 用于验证的正则表达式是 'az?'), spec.versions[1].name: 无效值: "":DNS-1035 标签必须由小写字母数字字符或“-”组成,以字母字符开头,并以字母数字字符结尾(例如“my-name”或“abc-123”,用于验证的正则表达式为“ az?'), spec.versions[2].name: 无效值: "": DNS-1035 标签必须由小写字母数字字符或“-”组成,以字母字符开头,以字母数字字符 (例如 'my-name' 或 'abc-123',用于验证的正则表达式是 'az?'),spec.versions[3].name:无效值:“”:DNS-1035 标签必须由小写字母组成字母数字字符或“-”,以字母字符开头,以字母数字字符结尾(例如“my-name”或“abc-123”,用于验证的正则表达式为“az?'), spec.versions: 无效值: []apiextensions.CustomResourceDefinitionVersion{apiextensions.CustomResourceDefinitionVersion{Name:"", Served:false, Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema :(*apiextensions.CustomResourceValidation)(nil), Subresources:(*apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil)}, apiextensions.CustomResourceDefinitionVersion{Name:"", Served:false, Storage:假,弃用:假,弃用警告:(*string)(nil),架构:(*apiextensions.CustomResourceValidation)(nil),子资源:(*apiextensions.CustomResourceSubresources)(nil),AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil) },apiextensions.CustomResourceDefinitionVersion{名称:“”,服务:假,Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation)(nil), Subresources:(*apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition( nil)}, apiextensions.CustomResourceDefinitionVersion{Name:"", Served:false, Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation)(nil), Subresources:( *apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil)}}:必须包含唯一的版本名称,spec.versions:无效值:[]apiextensions.CustomResourceDefinitionVersion{apiextensions.CustomResourceDefinitionVersion{Name:"",服务:假,存储:假,弃用:假,弃用警告:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation)(nil), Subresources:(*apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil)}, apiextensions.CustomResourceDefinitionVersion{Name: "", Served:false, Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation)(nil), Subresources:(*apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns :[]apiextensions.CustomResourceColumnDefinition(nil)}, apiextensions.CustomResourceDefinitionVersion{Name:"", Served:false, Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation) (nil),子资源:(*apiextensions.CustomResourceSubresources)(nil),AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil)}, apiextensions.CustomResourceDefinitionVersion{Name:"", Served:false, Storage:false, Deprecated:false, DeprecationWarning:(*string)(nil), Schema:(*apiextensions.CustomResourceValidation)(无),子资源:(apiextensions.CustomResourceSubresources)(nil), AdditionalPrinterColumns:[]apiextensions.CustomResourceColumnDefinition(nil)}}: 必须有一个版本被标记为存储版本,status.storedVersions: 无效值: []string(nil): 必须至少有一个存储版本]" }

请帮我解决这个问题

0 投票
0 回答
3 浏览

kubernetes - AzurePodIdentityException 作为预期对象抛出错误但得到字符串

我正在尝试部署 k8s aad pod 身份。但是在部署 AzurePodIdentityException 时,我遇到了以下错误

模板如下。

我在这里做错了什么。卡了将近一个月。