AKS(Azure Kubernetes Service)를 사용하는 경우 이 자습서에서는 Azure App Configuration 및 해당 Kubernetes 공급자를 활용하여 AKS에서 워크로드에 동적 구성을 사용하도록 설정하는 방법을 보여 줍니다. 이 자습서에서는 빠른 시작을 마치고 App Configuration Kubernetes 공급자를 설정했다고 가정하므로 계속하기 전에 Azure Kubernetes Service에서 Azure App Configuration을 사용하는 빠른 시작을 완료해야 합니다.
팁 (조언)
Azure App Configuration에 액세스하려면 Kubernetes에서 호스트되는 워크로드에 대한 옵션을 참조하세요.
필수 조건
빠른 시작을 완료합니다. Azure Kubernetes Service에서 Azure App Configuration을 사용합니다.
App Configuration에서 데이터 다시 로드
배포 디렉터리에 있는 appConfigurationProvider.yaml 파일을 엽니다. 그런 다음
refresh
속성 아래에configuration
섹션을 추가합니다. Kubernetes 공급자는 선택한 키 값( 설정 으로 시작하고 레이블이 없는 키 값)의 변경 내용을 감지할 때마다 전체 구성을 다시 로드할 수 있습니다. 구성 변경 내용을 모니터링하는 방법에 대한 자세한 내용은 구성 새로 고침에 대한 모범 사례를 참조하세요.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: endpoint: <your-app-configuration-store-endpoint> target: configMapName: configmap-created-by-appconfig-provider configMapData: type: json key: mysettings.json auth: workloadIdentity: managedIdentityClientId: <your-managed-identity-client-id> configuration: refresh: enabled: true
팁 (조언)
interval
속성을 설정하여refresh
의 구성 새로 고침 사이의 최소 시간을 지정할 수 있습니다. 이 예제에서는 기본값인 30초를 사용합니다. App Configuration 저장소에 대한 요청 수를 줄여야 하는 경우 더 높은 값으로 조정합니다.Deployment 디렉터리에서 deployment.yaml 파일을 열고 섹션에 다음 콘텐츠를
spec.containers
추가합니다. 애플리케이션은 App Configuration Kubernetes 공급자가 생성하는 볼륨 탑재 파일에서 구성을 로드합니다. 이 환경 변수를 설정하면 애플리케이션에서 폴링을 사용하여 탑재된 파일의 변경 내용을 모니터링할 수 있습니다.env: - name: DOTNET_USE_POLLING_FILE_WATCHER value: "true"
다음 명령을 실행하여 변경 사항을 배포합니다. 기존 AKS 애플리케이션을 사용하는 경우 네임스페이스를 바꿉니다.
kubectl apply -f ./Deployment -n appconfig-demo
브라우저 창을 열고 이전 단계에서 가져온 IP 주소로 이동합니다. 웹 페이지는 다음과 같습니다.
App Configuration 저장소에서 다음 키 값을 업데이트합니다.
열쇠 가치 설정:메시지 Azure App Configuration의 Hello - 이제 라이브 업데이트가 제공됩니다! 브라우저를 몇 번 새로 고치면 30초 내에 ConfigMap이 업데이트되면서 업데이트된 콘텐츠를 볼 수 있습니다.
ConfigMap 및 시크릿 다시 로드
App Configuration Kubernetes 공급자는 환경 변수 또는 볼륨에 탑재된 파일로 사용할 수 있는 ConfigMaps 또는 시크릿을 생성합니다. 이 자습서에서는 탑재된 파일에서 변경 내용이 검색될 때마다 구성을 자동으로 다시 로드하는 .NET JSON 구성 공급자를 사용하여 JSON 파일에서 구성을 로드하는 방법을 보여 줍니다. 결과적으로 애플리케이션은 App Configuration Kubernetes 공급자가 ConfigMap을 업데이트할 때마다 자동으로 업데이트된 구성을 가져옵니다.
애플리케이션이 구성을 위한 환경 변수에 종속된 경우 업데이트된 값을 선택하려면 다시 시작해야 할 수 있습니다. Kubernetes에서 애플리케이션 다시 시작은 해당 Pod 또는 컨테이너에서 롤링 업데이트를 사용하여 오케스트레이션할 수 있습니다. 구성 업데이트를 자동화하기 위해 stakater/Reloader와 같은 타사 도구를 활용하여 ConfigMaps 또는 비밀에 대한 변경 내용에 따라 롤링 업데이트를 자동으로 트리거할 수 있습니다.
다음 단계
Azure App Configuration Kubernetes 공급자에 대한 자세한 내용은 Azure App Configuration Kubernetes 공급자 참조를 참조하세요.