如何將 configmap 轉換為 azure keyvault

如何將 configmap 轉換為 azure keyvault

我有一個如下所示的配置映射。

apiVersion: v1
kind: ConfigMap
metadata:
  name: database-configmap
data:
  config: |
   dbport=5432
   dcname=
   dbssl=false
   locktime=300
   domainuser=
   dattserverhost=localhost
   conntype=ON-PREM
   dbinstance=
   dattusessl=false
   dbpwd=VrjvBguQ
   iisport=80
   docountupgrade=false
   doreportupgrade=false
   dbname=dattdatabase
   dattuseiis=false
   dbtype=POSTGRESQL
   dbusername=postg
   dbserver=tgres.database.azure.com
   domainpwd=

如何將其保存在 azurekeyvault 中並在部署期間從那裡獲取?各個鍵/值對儲存在 keyvault 中。但如何實現這一目標呢?

我已經嘗試過連結中提供的選項,但它沒有顯示為正常的 kubernetes 秘密。請參閱下面的輸出:

kubectl get azurekeyvaultsecret.spv.no/secret-sync -n akv-test
NAME          VAULT           VAULT OBJECT   SECRET NAME   SYNCHED
secret-sync   testingvaultd   sample1
kubectl get secrets -n akv-test
NAME                  TYPE                                  DATA   AGE
default-token-9bsk8   kubernetes.io/service-account-token   3      5m31s

答案1

對我來說這是一個有趣的問題,所以我進行了一些調查。首先你應該要明白我沒有親自嘗試過(稍後會嘗試)所以這只是一個想法。資訊太多,無法發表評論。

我發現很有趣akv2k8s項目(探索 Azure Key Vault 到 Kubernetes)這似乎可以幫助滿足要求...

Azure Key Vault to Kubernetes (akv2k8s) 使 Azure Key Vault 機密、憑證和金鑰在 Kubernetes 和/或應用程式中可用

  • 以簡單且安全的方式。

他們在概述中提到了配置映射,但沒有在圖表中提到。

Akv2k8s 包含兩個主要組件:

  1. akv2k8s 控制器將 Azure Key Vault 物件同步到 Kubernetes 作為本機秘密的或配置映射

  2. akv2k8s 注入器將 Azure Key Vault 物件直接注入您的應用程式作為環境變數。

在此輸入影像描述

若符合下列條件,請使用控制器: 需要將 Azure Key Vault 資料同步至 Kubernetes ConfigMap


安裝: 如何將 Azure Key Vault 安裝到 Azure AKS 上的 Kubernetes (akv2k8s)

相關內容