![configmap을 Azure keyvault로 변환하는 방법](https://rvso.com/image/768926/configmap%EC%9D%84%20Azure%20keyvault%EB%A1%9C%20%EB%B3%80%ED%99%98%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
아래와 같은 구성 맵이 있습니다. 이를 우리 애플리케이션의 구성 파일에 연결하겠습니다.
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 및/또는 애플리케이션에서 사용할 수 있습니다.
- 간단하고 안전한 방법으로.
개요에서는 configmap을 언급하지만 다이어그램에서는 언급하지 않습니다.
Akv2k8s에는 두 가지 주요 구성 요소가 포함되어 있습니다.
그만큼akv2k8s 컨트롤러는 Azure Key Vault 개체를 Kubernetes에 기본으로 동기화합니다.비밀 또는ConfigMap
akv2k8s Injector는 Azure Key Vault 개체를 환경 변수로 애플리케이션에 직접 주입합니다.
다음과 같은 경우 컨트롤러를 사용하십시오. Azure Key Vault 데이터를 Kubernetes ConfigMap에 동기화해야 하는 경우
설치: Azure AKS의 Kubernetes(akv2k8s)에 Azure Key Vault를 설치하는 방법