gpt4 book ai didi

azure - Terraform Azure AKS - 如何安装 azure-keyvault-secrets-provider 附加组件

转载 作者:行者123 更新时间:2023-12-03 01:16:09 24 4
gpt4 key购买 nike

我有一个使用 terraform 配置的 AKS kubernetes 集群。我需要启用 azure-keyvault-secrets-provider 附加组件。

使用 azure CLI,我可以按如下方式启用它:

az aks enable-addons --addons azure-keyvault-secrets-provider --name myAKSCluster --resource-group myResourceGroup

但是,我如何使用 terraform 做到这一点?我尝试了文档,但没有提及任何有关 secret 驱动程序的内容,除了如下所示的一个 block :

resource "azurerm_kubernetes_cluster" "k8s_cluster" {
lifecycle {
ignore_changes = [
default_node_pool
]
prevent_destroy = false
}

key_vault_secrets_provider {
secret_rotation_enabled = true
}
...
}

上面的 key_vault_secrets_provider 是否与 azure CLI 命令执行相同的操作 az aks enable-addons --addons azure-keyvault-secrets-provider --name myAKSCluster --resource-group myResourceGroup

因为根据 terraform 文档,此 key_vault_secrets_provider block 仅用于轮换 keyvault secret 。但没有提及启用驱动程序。

我的要求是:

  1. 启用 secret 提供程序驱动程序
  2. 创建一个 kubernetes Secret -> 因此它将在 azure 中配置该 Secret
  3. 将 key 注入(inject) kubernetes 部署

最佳答案

我尝试在我的环境中检查相同的情况:

代码:没有 key_vault_secrets_provider

ma​​in.tf:

resource "azurerm_kubernetes_cluster" "example" {
name = "kavyaexample-aks1"
location = data.azurerm_resource_group.example.location
resource_group_name = data.azurerm_resource_group.example.name
dns_prefix = "kavyaexampleaks1"

default_node_pool {
name = "default"
node_count = 1
vm_size = "Standard_D2_v2"
}

identity {
type = "SystemAssigned"
}

tags = {
Environment = "Production"
}
}

output "client_certificate" {
value = azurerm_kubernetes_cluster.example.kube_config.0.client_certificate
sensitive = true
}

enter image description here

  • 检查可用的 addons list for my managed aks cluster通过CLI,“azure-keyvault-secrets-provider”显示为禁用。这意味着对于最新版本的terraform提供者,他们有提供者。只是需要启用它。

命令:

az aks addon list –name kavyaexample-aks1  --resource-group <myrg>

enter image description here

现在在添加启用 secret 轮换的 key_vault_secrets_provider block 后进行检查。主要.tf:

resource "azurerm_kubernetes_cluster" "example" {
name = "kavyaexample-aks1"
location = data.azurerm_resource_group.example.location
resource_group_name = data.azurerm_resource_group.example.name
dns_prefix = "cffggf"
....
key_vault_secrets_provider {
secret_rotation_enabled = true
}
default_node_pool {
name = ”dfgdf”
...

}

使用相同命令检查插件列表时:

az aks addon list –name kavyaexample-aks1 --resource-group <myrg>

enter image description here

正在启用 azure keyvault secret 提供程序插件

enter image description here

which means adding key_vault_secrets_provider block with secretrotation enabled itself means , we are making use of the azurekeyvault secret provider addon.

另请检查此 terraform-azurerm-aks issue on addon_profile being deprecated in latest terraform versions |github

关于azure - Terraform Azure AKS - 如何安装 azure-keyvault-secrets-provider 附加组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74809390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com