Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az alábbi hivatkozás az Azure App Configuration Kubernetes Provider v2.3.0 vagy újabb verzió által támogatott tulajdonságokat ismerteti. A módosítással kapcsolatos további információkért tekintse meg a kibocsátási megjegyzéseket .
Tulajdonságok
Egy AzureAppConfigurationProvider erőforrás a következő legfelső szintű gyermektulajdonságokat tartalmazza a spec. Vagy endpoint meg connectionStringReference kell adni.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| végpont | A Azure-alkalmazás Konfiguráció végpontja, amelyből le szeretné kérni a kulcsértékeket. | alternatív | karakterlánc |
| connectionStringReference | Az Azure-alkalmazás konfigurációs kapcsolati sztring tartalmazó Kubernetes-titkos kód neve. | alternatív | karakterlánc |
| replicaDiscoveryEnabled | Az a beállítás, amely meghatározza, hogy a Azure-alkalmazás konfiguráció replikái automatikusan felderítve és használva legyenek-e a feladatátvételhez. Ha a tulajdonság hiányzik, a rendszer egy alapértelmezett értéket true használ. |
hamis | logikai |
| loadBalancingEnabled | Az a beállítás, amely lehetővé teszi a számítási feladat számára a kérelmek alkalmazáskonfigurációba való elosztását az összes rendelkezésre álló replika között. Ha a tulajdonság hiányzik, a rendszer egy alapértelmezett értéket false használ. |
hamis | logikai |
| céladatbázis | A lekért kulcsértékek célja a Kubernetesben. | igaz | objektum |
| autentikáció | A Azure-alkalmazás Konfiguráció eléréséhez szükséges hitelesítési módszer. | hamis | objektum |
| konfiguráció | A kulcsértékek lekérdezésének és feldolgozásának beállításai Azure-alkalmazás konfigurációban. | hamis | objektum |
| titkos kód | A Key Vault-hivatkozások beállításai Azure-alkalmazás konfigurációban. | feltételes | objektum |
| featureFlag | A Azure-alkalmazás Konfiguráció funkciójelzőinek beállításai. | hamis | objektum |
A spec.target tulajdonság a következő gyermektulajdonságú.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| configMapName | A létrehozandó ConfigMap neve. | igaz | karakterlánc |
| configMapData | Az a beállítás, amely meghatározza, hogy a beolvasott adatok hogyan legyenek feltöltve a létrehozott konfigurációtérképen. | hamis | objektum |
Ha a spec.target.configMapData tulajdonság nincs beállítva, a létrehozott ConfigMap a Azure-alkalmazás Konfigurációból lekért kulcsértékek listájával van feltöltve, amely lehetővé teszi a ConfigMap környezeti változóként való használatát. Frissítse ezt a tulajdonságot, ha a ConfigMap-et csatlakoztatott fájlként szeretné használni. Ez a tulajdonság a következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| típus | Az a beállítás, amely azt jelzi, hogy a lekért adatok hogyan jönnek létre a generált konfigurációtérképen. Az engedélyezett értékek közé tartozik az default, jsonyaml és propertiesa . |
választható | karakterlánc |
| kulcs | A lekért adatok kulcsneve, ha a type be van állítva jsonaz , yaml vagy properties. Állítsa be a fájlnévre, ha a ConfigMap csatlakoztatott fájlként van beállítva. |
feltételes | karakterlánc |
| elválasztó | A ConfigMap-adatok hierarchikus formátumban történő kimenetéhez használt elválasztó, ha a típus json értéke vagy yamlértéke . Az elválasztó alapértelmezés szerint üres, és a létrehozott ConfigMap az eredeti formájukban tartalmazza a kulcsértékeket. Ezt a beállítást csak akkor konfigurálja, ha az alkalmazásban használt konfigurációs fájlbetöltő nem tudja betölteni a kulcsértékeket anélkül, hogy hierarchikus formátumba konvertálja őket. |
választható | karakterlánc |
A spec.auth tulajdonság nem szükséges, ha az Alkalmazáskonfigurációs áruház kapcsolati sztring a spec.connectionStringReference tulajdonság beállításával van megadva. Ellenkező esetben a rendszer az egyik identitást, szolgáltatásnevet, számítási feladat identitását vagy felügyelt identitását használja a hitelesítéshez. Az spec.auth alábbi gyermektulajdonságokat tartalmazza. Csak az egyiket kell megadni. Ha egyik sincs beállítva, a rendszer a virtuálisgép-méretezési csoport rendszer által hozzárendelt felügyelt identitását használja.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| servicePrincipalReference | A szolgáltatásnév hitelesítő adatait tartalmazó Kubernetes-titkos kód neve. A titkos kódnak ugyanabban a névtérben kell lennie, mint a Kubernetes-szolgáltatónak. | hamis | karakterlánc |
| workloadIdentity | A számítási feladatok identitásának használatára vonatkozó beállítások. | hamis | objektum |
| managedIdentityClientId | A virtuálisgép-méretezési csoport felhasználó által hozzárendelt felügyelt identitásának ügyfélazonosítója. | hamis | karakterlánc |
A spec.auth.workloadIdentity tulajdonság a következő gyermektulajdonságú.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| serviceAccountName | A számítási feladat identitásához társított szolgáltatásfiók neve. | igaz | karakterlánc |
Az spec.configuration alábbi gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| Szelektor | A kulcs-érték szűrés választóinak listája. | hamis | objektumtömb |
| trimKeyPrefixes | A levágandó kulcselőtagok listája. | hamis | sztringtömb |
| frissít | A kulcsértékek Azure-alkalmazás konfigurációból való frissítésének beállításai. Ha a tulajdonság hiányzik, a Azure-alkalmazás konfiguráció kulcsértékei nem frissülnek. | hamis | objektum |
Ha a tulajdonság nincs beállítva, a spec.configuration.selectors rendszer letölti az összes címke nélküli kulcsértéket. Választóobjektumok tömbje, amelyek a következő gyermektulajdonságokkal rendelkeznek. Vegye figyelembe, hogy az utolsó választó kulcsértékei elsőbbséget élveznek, és felülbírálják az előző választók egymást átfedő kulcsait.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| keyFilter | Kulcsértékek lekérdezésének kulcsszűrője. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. |
alternatív | karakterlánc |
| labelFilter | A kulcsértékek lekérdezéséhez használt címkeszűrő. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. |
hamis | karakterlánc |
| címkékSzűrők | A címkék szűrői kulcsértékek lekérdezéséhez. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. A címkészűrőt úgy kell formázni, hogy tag1=value1. |
hamis | sztringtömb |
| snapshotName | Annak a pillanatképnek a neve, amelyből a kulcsértékek betöltve vannak. Ez a tulajdonság nem használható más tulajdonságokkal együtt. | alternatív | karakterlánc |
A spec.configuration.refresh tulajdonság a következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| engedélyezve | Az a beállítás, amely meghatározza, hogy a Azure-alkalmazás-konfiguráció kulcsértékei automatikusan frissülnek-e. Ha a tulajdonság hiányzik, a rendszer egy alapértelmezett értéket false használ. |
hamis | logikai |
| figyelés | A változásészleléshez figyelt kulcsértékek, más néven sentinel-kulcsok. A Azure-alkalmazás Konfiguráció kulcsértékei csak akkor frissülnek, ha a figyelt kulcsértékek közül legalább egy módosul. Ha ez a tulajdonság hiányzik, a rendszer az összes kijelölt kulcsértéket figyeli a frissítéshez. | hamis | objektum |
| intervallum | A kulcsértékek Azure-alkalmazás konfigurációból való frissítésének időköze. Az értéknek 1 másodpercnél nagyobbnak vagy egyenlőnek kell lennie. Ha a tulajdonság hiányzik, a rendszer 30 másodperces alapértelmezett értéket használ. | hamis | időtartam-sztring |
Az spec.configuration.refresh.monitoring.keyValues objektumtömb az alábbi gyermektulajdonságokkal rendelkezik.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| kulcs | Egy kulcs-érték kulcsa. | igaz | karakterlánc |
| címke | Egy kulcs-érték címkéje. | hamis | karakterlánc |
A spec.secret tulajdonság a következő gyermektulajdonságokat tartalmazza. Erre akkor van szükség, ha a Key Vault-referenciák várhatóan le lesznek töltve. A Kubernetes beépített titkos kulcstípusok támogatásáról további információt a Titkos kódok típusai című témakörben talál.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| céladatbázis | A kubernetesben lekért titkos kódok célja. | igaz | objektum |
| autentikáció | A Key Vaultok eléréséhez szükséges hitelesítési módszer. | hamis | objektum |
| frissít | A Key Vaultból származó adatok frissítésének beállításai. Ha a tulajdonság hiányzik, a Key Vaultból származó adatok csak akkor frissülnek, ha a megfelelő Key Vault-hivatkozások újratöltődnek. | hamis | objektum |
A spec.secret.target tulajdonság a következő gyermektulajdonságú.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| titkos név | A létrehozandó Kubernetes-titkos kód neve. | igaz | karakterlánc |
| secretData | Az a beállítás, amely meghatározza, hogy a lekért adatok hogyan legyenek feltöltve a létrehozott titkos kódban. | igaz | karakterlánc |
Ha a spec.secret.target.secretData tulajdonság nincs beállítva, a létrehozott titkos kód a Key Vaultból lekért kulcsértékek listájával lesz feltöltve, amely lehetővé teszi a titkos kód környezeti változóként való használatát. Frissítse ezt a tulajdonságot, ha csatlakoztatott fájlként szeretné használni a Titkos kulcsot. Ez a tulajdonság a következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| típus | Az a beállítás, amely azt jelzi, hogy a lekért adatok hogyan jönnek létre a létrehozott titkos kódban. Az engedélyezett értékek közé tartozik az default, jsonyaml és propertiesa . |
választható | karakterlánc |
| kulcs | A lekért adatok kulcsneve, ha a type be van állítva jsonaz , yaml vagy properties. Állítsa be a fájlnévre, ha a titkos kód csatlakoztatott fájlként van beállítva. |
feltételes | karakterlánc |
| elválasztó | A titkos adatok hierarchikus formátumban történő kimenetére használt elválasztó, ha a típus értéke json vagy yamlértéke . Az elválasztó alapértelmezés szerint üres, és a létrehozott titkos kód az eredeti formájukban tartalmazza a kulcsértékeket. Ezt a beállítást csak akkor konfigurálja, ha az alkalmazásban használt konfigurációs fájlbetöltő nem tudja betölteni a kulcsértékeket anélkül, hogy hierarchikus formátumba konvertálja őket. |
választható | karakterlánc |
Ha a spec.secret.auth tulajdonság nincs beállítva, a rendszer a rendszer által hozzárendelt felügyelt identitást használja. A következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| servicePrincipalReference | Annak a Kubernetes-titkos kódnak a neve, amely egy olyan szolgáltatásnév hitelesítő adatait tartalmazza, amelyet olyan Key Vaultokkal való hitelesítéshez használnak, amelyekhez nincs megadva egyedi hitelesítési módszer. | hamis | karakterlánc |
| workloadIdentity | A számítási feladat identitásának azon beállításai, amelyeket olyan Key Vaultokkal való hitelesítéshez használnak, amelyekhez nincs megadva egyedi hitelesítési módszer. Ugyanazzal a gyermektulajdonságokkal rendelkezik, mint a spec.auth.workloadIdentity. |
hamis | objektum |
| managedIdentityClientId | A key vaultokkal való hitelesítéshez használt virtuálisgép-méretezési csoport felhasználó által hozzárendelt felügyelt identitásának ügyfélazonosítója, amely nem rendelkezik egyedi hitelesítési módszerekkel. | hamis | karakterlánc |
| kulcstárolók | Az egyes Key Vaultok hitelesítési módszerei. | hamis | objektumtömb |
Az egyes Key Vaultok hitelesítési módszere az alábbi tulajdonságokkal adható meg. Az egyiket managedIdentityClientIdmeg servicePrincipalReference kell adni, vagy workloadIdentity meg kell adni.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| Uri | A Key Vault URI-ja. | igaz | karakterlánc |
| servicePrincipalReference | A Kubernetes-titkos kód neve, amely a Key Vaulttal való hitelesítéshez használt szolgáltatásnév hitelesítő adatait tartalmazza. | hamis | karakterlánc |
| workloadIdentity | A Key Vaulttal való hitelesítéshez használt számítási feladatok identitásának beállításai. Ugyanazzal a gyermektulajdonságokkal rendelkezik, mint a spec.auth.workloadIdentity. |
hamis | objektum |
| managedIdentityClientId | A Key Vaulttal való hitelesítéshez használt virtuálisgép-méretezési csoport felhasználó által hozzárendelt felügyelt identitásának ügyfélazonosítója. | hamis | karakterlánc |
A spec.secret.refresh tulajdonság a következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| engedélyezve | Ez a beállítás határozza meg, hogy a Key Vaultból származó adatok automatikusan frissülnek-e. Ha a tulajdonság hiányzik, a rendszer egy alapértelmezett értéket false használ. |
hamis | logikai |
| intervallum | Az az időköz, amikor az adatok frissülnek a Key Vaultból. Az értéknek 1 percnél nagyobbnak vagy egyenlőnek kell lennie. A Key Vault frissítése független a konfigurált spec.configuration.refreshalkalmazáskonfiguráció frissítésétől. |
igaz | időtartam-sztring |
A spec.featureFlag tulajdonság a következő gyermektulajdonságokat tartalmazza. Erre akkor van szükség, ha a szolgáltatásjelzők várhatóan le lesznek töltve.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| Szelektor | A funkciójelölők szűrésére szolgáló választók listája. | hamis | objektumtömb |
| frissít | A funkciójelzők frissítésének beállításai Azure-alkalmazás Konfigurációból. Ha a tulajdonság hiányzik, a Azure-alkalmazás Konfiguráció funkciójelzői nem frissülnek. | hamis | objektum |
Ha a tulajdonság nincs beállítva, a spec.featureFlag.selectors funkciójelzők nem töltődnek le. Választóobjektumok tömbje, amelyek a következő gyermektulajdonságokkal rendelkeznek. Vegye figyelembe, hogy az utolsó választó funkciójelzői elsőbbséget élveznek, és felülbírálják az előző választók átfedésben lévő kulcsait.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| keyFilter | A funkciójelölők lekérdezésének kulcsszűrője. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. |
alternatív | karakterlánc |
| labelFilter | A funkciójelölők lekérdezéséhez használt címkeszűrő. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. |
hamis | karakterlánc |
| címkékSzűrők | A címkészűrők a funkciózászlók lekérdezéséhez. Ezt a tulajdonságot és a snapshotName tulajdonságot nem szabad egyszerre beállítani. A címkészűrőt úgy kell formázni, hogy tag1=value1. |
hamis | sztringtömb |
| snapshotName | Annak a pillanatképnek a neve, amelyből a funkciójelzők betöltve vannak. Ez a tulajdonság nem használható más tulajdonságokkal együtt. | alternatív | karakterlánc |
A spec.featureFlag.refresh tulajdonság a következő gyermektulajdonságokat tartalmazza.
| Név | Leírás | Kötelező | Típus |
|---|---|---|---|
| engedélyezve | Ez a beállítás határozza meg, hogy a Azure-alkalmazás Konfiguráció funkciójelzői automatikusan frissülnek-e. Ha a tulajdonság hiányzik, a rendszer egy alapértelmezett értéket false használ. |
hamis | logikai |
| intervallum | A funkciójelzők frissítésének időköze Azure-alkalmazás konfigurációból. Az értéknek 1 másodpercnél nagyobbnak vagy egyenlőnek kell lennie. Ha a tulajdonság hiányzik, a rendszer 30 másodperces alapértelmezett értéket használ. | hamis | időtartam-sztring |
Telepítés
Az alábbi helm install paranccsal telepítse a Azure-alkalmazás Konfigurációs Kubernetes-szolgáltatót. A paraméterek és az alapértelmezett értékek teljes listáját a helm-values.yaml webhelyen találja. Az alapértelmezett értékeket felülbírálhatja úgy, hogy átadja a --set jelölőt a parancsnak.
helm install azureappconfiguration.kubernetesprovider \
oci://mcr.microsoft.com/azure-app-configuration/helmchart/kubernetes-provider \
--namespace azappconfig-system \
--create-namespace
Automatikus skálázás
Alapértelmezés szerint az automatikus skálázás le van tiltva. Ha azonban több AzureAppConfigurationProvider erőforrással rendelkezik több ConfigMaps/Titkos kód létrehozásához, engedélyezheti a podok automatikus horizontális skálázását a következő beállítássalautoscaling.enabledtrue: .
helm install azureappconfiguration.kubernetesprovider \
oci://mcr.microsoft.com/azure-app-configuration/helmchart/kubernetes-provider \
--namespace azappconfig-system \
--create-namespace
--set autoscaling.enabled=true
Adatgyűjtés
A szoftver adatokat gyűjthet Önről és a szoftver használatáról, és elküldheti a Microsoftnak. A Microsoft ezeket az adatokat szolgáltatások nyújtására és termékeinek és szolgáltatásainak továbbfejlesztésére felhasználhatja. A telemetria kikapcsolásához állítsa be a requestTracing.enabled=false Azure-alkalmazás Konfigurációs Kubernetes-szolgáltató telepítése közben. A szoftver bizonyos funkciói lehetővé tehetik, hogy Ön és a Microsoft adatokat gyűjtsenek az alkalmazások felhasználóitól. Ha ezeket a funkciókat használja, meg kell felelnie a vonatkozó jogszabályoknak, beleértve a megfelelő értesítéseket az alkalmazások felhasználóinak, valamint a Microsoft adatvédelmi nyilatkozatának másolatát. Adatvédelmi nyilatkozatunk itt olvasható: https://go.microsoft.com/fwlink/?LinkID=824704. Az adatgyűjtésről és a használatról a súgódokumentációban és az adatvédelmi nyilatkozatban tudhat meg többet. Azzal, hogy használja a szoftvert, Ön elfogadja ezt a gyakorlatot.
Példák
Hitelesítés
Virtuálisgép-méretezési csoport rendszer által hozzárendelt felügyelt identitásának használata
Adja meg a rendszer által hozzárendelt felügyelt identitás alkalmazáskonfigurációs adatolvasói szerepkörét Azure-alkalmazás Konfigurációban.
Helyezze üzembe a következő mintaerőforrást
AzureAppConfigurationProvideraz AKS-fürtben.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: endpoint: <your-app-configuration-store-endpoint> target: configMapName: configmap-created-by-appconfig-provider
A virtuálisgép-méretezési csoport felhasználó által hozzárendelt felügyelt identitásának használata
Hozzon létre egy felhasználó által hozzárendelt felügyelt identitást , és jegyezze fel az ügyfél-azonosítóját a létrehozás után.
Adja meg a felhasználó által hozzárendelt felügyelt identitás alkalmazáskonfigurációs adatolvasói szerepkört Azure-alkalmazás Konfigurációban.
Állítsa be a
spec.auth.managedIdentityClientIdtulajdonságot a felhasználó által hozzárendelt felügyelt identitás ügyfélazonosítójára az alábbi mintaerőforrásbanAzureAppConfigurationProvider, és helyezze üzembe az AKS-fürtben.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: endpoint: <your-app-configuration-store-endpoint> target: configMapName: configmap-created-by-appconfig-provider auth: managedIdentityClientId: <your-managed-identity-client-id>
Szolgáltatásnév használata
Adjon meg a szolgáltatásnév alkalmazáskonfigurációs adatolvasói szerepkört Azure-alkalmazás Konfigurációban.
Hozzon létre egy Kubernetes-titkos kulcsot az
AzureAppConfigurationProvidererőforrással megegyező névtérben, és adja hozzá a szolgáltatásnév azure_client_id, azure_client_secret és azure_tenant_id a titkos kódhoz.Állítsa a
spec.auth.servicePrincipalReferencetulajdonságot a titkos kód nevére a következő mintaerőforrásbanAzureAppConfigurationProvider, és telepítse a Kubernetes-fürtben.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: endpoint: <your-app-configuration-store-endpoint> target: configMapName: configmap-created-by-appconfig-provider auth: servicePrincipalReference: <your-service-principal-secret-name>
Számítási feladat identitásának használata
Engedélyezze a számítási feladatok identitását az Azure Kubernetes Service (AKS) fürtben.
Hozzon létre egy felhasználó által hozzárendelt felügyelt identitást , és jegyezze fel annak ügyfél-azonosítóját, bérlőazonosítóját, nevét és erőforráscsoportját.
Adja meg a felhasználó által hozzárendelt felügyelt identitás alkalmazáskonfigurációs adatolvasói szerepkört Azure-alkalmazás Konfigurációban.
Hozzon létre egy szolgáltatásfiókot úgy, hogy hozzáad egy YAML-fájlt (például serviceAccount.yaml) az alábbi tartalommal az AKS-telepítési fájlokat tartalmazó könyvtárhoz. A szolgáltatásfiók akkor jön létre, amikor az összes üzembehelyezési módosítást alkalmazza az AKS-fürtre (például a használatával
kubectl apply). Cserélje le<your-managed-identity-client-id>az ügyfél-azonosítóra és<your-managed-identity-tenant-id>az imént létrehozott, felhasználó által hozzárendelt felügyelt identitás bérlőazonosítójára. Cserélje le<your-service-account-name>az előnyben részesített névre.apiVersion: v1 kind: ServiceAccount metadata: name: <your-service-account-name> annotations: azure.workload.identity/client-id: <your-managed-identity-client-id> azure.workload.identity/tenant-id: <your-managed-identity-tenant-id>Összevont identitás hitelesítő adatainak létrehozása a felhasználó által hozzárendelt felügyelt identitáshoz az Azure CLI használatával. Cserélje le
<user-assigned-identity-name>az újonnan létrehozott, felhasználó által hozzárendelt felügyelt identitás nevére és<resource-group>erőforráscsoportjára. Cserélje le<aks-oidc-issuer>az AKS-fürt OIDC-kiállítójának URL-címét. Cserélje le<your-service-account-name>az újonnan létrehozott szolgáltatásfiók nevére. Cserélje le<federated-identity-credential-name>az összevont identitás hitelesítő adatainak előnyben részesített nevére.az identity federated-credential create --name "<federated-identity-credential-name>" --identity-name "<user-assigned-identity-name>" --resource-group "<resource-group>" --issuer "<aks-oidc-issuer>" --subject system:serviceaccount:default:<your-service-account-name> --audience api://AzureADTokenExchangeVegye figyelembe, hogy az összevont identitás hitelesítő adatainak a következő formátumot kell követniük:
system:serviceaccount:<service-account-namespace>:<service-account-name>.Állítsa a
spec.auth.workloadIdentity.serviceAccountNametulajdonságot a szolgáltatásfiók nevére az alábbi mintaerőforrásbanAzureAppConfigurationProvider. Győződjön meg arról, hogy azAzureAppConfigurationProvidererőforrás és a szolgáltatásfiók ugyanabban a névtérben van.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: endpoint: <your-app-configuration-store-endpoint> target: configMapName: configmap-created-by-appconfig-provider auth: workloadIdentity: serviceAccountName: <your-service-account-name>
Kapcsolati sztring használata
Hozzon létre egy Kubernetes-titkos kulcsot az
AzureAppConfigurationProvidererőforrással megegyező névtérben, és adja hozzá Azure-alkalmazás konfigurációs kapcsolati sztring a titkos kulcs azure_app_configuration_connection_string.Állítsa a
spec.connectionStringReferencetulajdonságot a titkos kód nevére a következő mintaerőforrásbanAzureAppConfigurationProvider, és telepítse a Kubernetes-fürtben.apiVersion: azconfig.io/v1 kind: AzureAppConfigurationProvider metadata: name: appconfigurationprovider-sample spec: connectionStringReference: <your-connection-string-secret-name> target: configMapName: configmap-created-by-appconfig-provider
Kulcs-érték kijelölés
selectors A tulajdonság használatával szűrheti a Azure-alkalmazás Konfigurációból letöltendő kulcsértékeket.
Az alábbi minta az összes, címkét nem tartalmazó kulcsértéket letölti.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
A következő példában két választót használunk a kulcsértékek két készletének lekéréséhez, amelyek mindegyike egyedi címkékkel van elrendve. Fontos megjegyezni, hogy az utolsó választó értékei elsőbbséget élveznek, és felülbírálják az előző választók egymást átfedő kulcsait.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
labelFilter: common
- keyFilter: app1*
labelFilter: development
Címkészűrők kulcsértékek szűrésére is használhatók. A következő mintában csak a címkével env=prod ellátott kulcsértékek kerülnek le.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: '*'
tagFilters:
- env=prod
A pillanatképek önállóan vagy más kulcs-érték választókkal együtt is használhatók. Az alábbi példában egy pillanatképből tölti be a közös konfiguráció kulcsértékeit, majd felülbírál néhányat kulcsértékekkel a fejlesztéshez.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- snapshotName: app1_common_configuration
- keyFilter: app1*
labelFilter: development
Kulcselőtag vágása
Az alábbi minta két előtag kivágására használja a tulajdonságot a trimKeyPrefixes kulcsnevekből, mielőtt hozzáadja őket a létrehozott ConfigMap-hez.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
trimKeyPrefixes: [prefix1, prefix2]
Konfiguráció frissítése
Ha Azure-alkalmazás konfigurációban módosítja az adatokat, előfordulhat, hogy a módosítások automatikusan frissülnek a Kubernetes-fürtben. Az alábbi példában a Kubernetes-szolgáltató percenként ellenőrzi az Azure App Configuration frissítéseit. A társított konfigurációtérkép és titkos kód csak a módosítások észlelésekor lesz újragenerálva. A konfigurációváltozások figyelésével kapcsolatos további információkért tekintse meg a konfigurációfrissítés ajánlott eljárásait.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
labelFilter: common
refresh:
enabled: true
interval: 1m
Key Vault-hivatkozások
Hitelesítés
Az alábbi példában egy Key Vault egy szolgáltatásnévvel hitelesítve van, míg az összes többi Key Vault egy felhasználó által hozzárendelt felügyelt identitással van hitelesítve.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
secret:
target:
secretName: secret-created-by-appconfig-provider
auth:
managedIdentityClientId: <your-user-assigned-managed-identity-client-id>
keyVaults:
- uri: <your-key-vault-uri>
servicePrincipalReference: <name-of-secret-containing-service-principal-credentials>
A titkos kódok típusai
Jelenleg két Kubernetes beépített titkos kódtípus, az Átlátszatlan és a TLS támogatott. A Key Vault-hivatkozásokból feloldott titkos kulcsok alapértelmezés szerint átlátszatlan titkos kódtípusként vannak mentve. Ha rendelkezik Key Vault-hivatkozással egy tanúsítványra, és TLS-titkos típusként szeretné menteni, hozzáadhat egy címkét a következő névvel és értékkel a Key Vault-referenciához a Azure-alkalmazás Konfigurációban. Ezzel létre fog hozni egy titkos kulcsot, amelynek típusa a kubernetes.io/tls Key Vault-referenciának a kulcsáról lesz elnevezve.
| Név | Érték |
|---|---|
| .kubernetes.secret.type | kubernetes.io/tls |
Az alábbi példák azt mutatják be, hogy az adatok hogyan vannak feltöltve a létrehozott titkos kulcsokban, különböző típusokkal.
Feltételezve, hogy egy alkalmazáskonfigurációs áruházban a Key Vault alábbi hivatkozásai vannak:
| kulcs | Érték | címkét |
|---|---|---|
| app1-secret1 | <Key Vault-referencia 1> | {} |
| app1-secret2 | <Key Vault-referencia 2> | {} |
| app1-certificate | <Key Vault-referencia 3> | {".kubernetes.secret.type": "kubernetes.io/tls"} |
Az alábbi minta átlátszatlan és TLS típusú titkos kulcsokat hoz létre.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
secret:
target:
secretName: secret-created-by-appconfig-provider
auth:
managedIdentityClientId: <your-user-assigned-managed-identity-client-id>
A létrehozott titkos kódok a következő adatokkal vannak feltöltve:
name: secret-created-by-appconfig-provider
type: Opaque
data:
app1-secret1: <secret value retrieved from Key Vault>
app1-secret2: <secret value retrieved from Key Vault>
name: app1-certificate
type: kubernetes.io/tls
data:
tls.crt: |
<certificate data retrieved from Key Vault>
tls.key: |
<certificate key retrieved from Key Vault>
Titkos kulcsok frissítése a Key Vaultból
A kulcstartók titkos kulcsainak frissítéséhez általában újra kell betölteni a megfelelő Key Vault-hivatkozásokat Azure-alkalmazás konfigurációból. A tulajdonsággal spec.secret.refresh azonban egymástól függetlenül frissítheti a titkos kulcsokat a Key Vaultból. Ez különösen hasznos annak biztosításához, hogy a számítási feladat automatikusan átvegye a frissített titkos kulcsokat a Key Vaultból a titkos kulcsok forgatása során. Vegye figyelembe, hogy a titkos kulcs legújabb verziójának betöltéséhez a Key Vault-hivatkozás nem lehet verziószámozott titkos kód.
Az alábbi minta óránként frissíti a Key Vault összes nem verziószámozott titkos kulcsát.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
labelFilter: common
secret:
target:
secretName: secret-created-by-appconfig-provider
auth:
managedIdentityClientId: <your-user-assigned-managed-identity-client-id>
refresh:
enabled: true
interval: 1h
Funkciójelzők
Az alábbi példában a funkciójelzők, a kezdőbetűkkel app1 és az azzal egyenértékű common címkékkel 10 percenként lesznek letöltve és frissítve. Vegye figyelembe, hogy a szolgáltatásjelölőknek a létrehozott konfigurációtérképen való feltöltéséhez a tulajdonságnak configMapData.type vagy jsona yaml .
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: appSettings.json
featureFlag:
selectors:
- keyFilter: app1*
labelFilter: common
refresh:
enabled: true
interval: 10m
Igény szerinti frissítés
Bár beállíthatja az automatikus adatfrissítést, előfordulhat, hogy igény szerinti frissítést szeretne aktiválni, hogy lekérje a legújabb adatokat az Alkalmazáskonfigurációból és a Key Vaultból. Ezt úgy teheti meg, hogy hozzáad vagy frissít minden széljegyzetet a metadata.annotationsAzureAppConfigurationProviderszakaszában. A Kubernetes-szolgáltató ezután egyezteti és frissíti a konfigurációtérképet és a titkos kulcsot az Alkalmazáskonfigurációs tároló és a Key Vault legújabb adataival.
Az alábbi példában a AzureAppConfigurationProvider program egy új széljegyzettel frissül. A módosítás után alkalmazza a módosításokat kubectl apply igény szerinti frissítés indításához.
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
annotations:
key1: value1
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
configuration:
selectors:
- keyFilter: app1*
labelFilter: common
secret:
target:
secretName: secret-created-by-appconfig-provider
auth:
managedIdentityClientId: <your-user-assigned-managed-identity-client-id>
Konfigurációtérkép-használat
A Kubernetesben futó alkalmazások általában környezeti változókként vagy konfigurációs fájlokként használják a ConfigMap-et. Ha a configMapData.type tulajdonság hiányzik vagy alapértelmezett értékre van állítva, a konfigurációtérkép a Azure-alkalmazás konfigurációból lekért adatok tételes listájával van feltöltve, amely könnyen felhasználható környezeti változókként. Ha a configMapData.type tulajdonság json, yaml vagy properties értékre van állítva, a Azure-alkalmazás Configuration szolgáltatásból lekért adatok egyetlen elembe vannak csoportosítva a létrehozott ConfigMap tulajdonság által configMapData.key megadott kulcsnévvel, amely csatlakoztatott fájlként használható.
Az alábbi példák bemutatják, hogyan történik az adatok feltöltése a létrehozott konfigurációtérképen a configMapData.type tulajdonság különböző beállításaival.
Feltételezve, hogy egy alkalmazáskonfigurációs áruházban ezek a kulcsértékek szerepelnek:
| kulcs | Érték |
|---|---|
| 1. kulcs | érték1 |
| 2. kulcs | érték2 |
| key3 | érték3 |
És a configMapData.type tulajdonság hiányzik vagy a következőre defaultvan állítva:
apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
name: appconfigurationprovider-sample
spec:
endpoint: <your-app-configuration-store-endpoint>
target:
configMapName: configmap-created-by-appconfig-provider
A létrehozott ConfigMap a következő adatokkal van feltöltve:
data:
key1: value1
key2: value2
key3: value3