Referenční informace ke zprostředkovateli Kubernetes konfigurace Aplikace Azure

Následující odkaz popisuje vlastnosti podporované poskytovatelem kubernetes v1.3.0konfigurace Aplikace Azure . Další informace o změně najdete v poznámkách k verzi.

Vlastnosti

Prostředek AzureAppConfigurationProvider má následující podřízené vlastnosti nejvyšší úrovně pod položkou spec. Buď endpoint nebo connectionStringReference musí být zadán.

Název Popis Povinní účastníci Typ
endpoint Koncový bod konfigurace Aplikace Azure, ze kterého chcete načíst hodnoty klíče. Alternativní string
connectionStringReference Název tajného kódu Kubernetes, který obsahuje připojovací řetězec konfigurace Aplikace Azure. Alternativní string
replicaDiscoveryEnabled Nastavení určující, jestli se repliky Aplikace Azure Konfigurace automaticky zjistí a použijí pro převzetí služeb při selhání. Pokud vlastnost chybí, použije se výchozí hodnota true . false (nepravda) bool
target Cíl načtených hodnot klíčů v Kubernetes. true objekt
auth Metoda ověřování pro přístup k Aplikace Azure Configuration. false (nepravda) objekt
konfigurace Nastavení pro dotazování a zpracování hodnot klíče v Aplikace Azure Configuration. false (nepravda) objekt
Tajný kód Nastavení pro odkazy služby Key Vault v konfiguraci Aplikace Azure. Podmíněné objekt
featureFlag Nastavení příznaků funkcí v konfiguraci Aplikace Azure. false (nepravda) objekt

Vlastnost spec.target má následující podřízenou vlastnost.

Název Popis Povinní účastníci Typ
configMapName Název objektu ConfigMap, který se má vytvořit. true string
configMapData Nastavení, které určuje, jak mají být načtená data naplněna ve vygenerované objektu ConfigMap. false (nepravda) objekt

spec.target.configMapData Pokud vlastnost není nastavena, vygenerovaná objekt ConfigMap se naplní seznamem hodnot klíčů načtených z Aplikace Azure Configuration, což umožňuje, aby objekt ConfigMap byl využit jako proměnné prostředí. Tuto vlastnost aktualizujte, pokud chcete objekt ConfigMap využívat jako připojený soubor. Tato vlastnost má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
type Nastavení, které určuje, jak se načtená data vytvářejí ve vygenerované objektu ConfigMap. Povolené hodnoty zahrnují default, jsonyaml a properties. optional string
key Název klíče načtených dat, pokud je nastavena type na jsonhodnotu , yaml nebo properties. Pokud je objekt ConfigMap nastavený tak, aby byl využit jako připojený soubor, nastavte ho na název souboru. Podmíněné string
Oddělovač Oddělovač, který se používá k výstupu dat ConfigMap v hierarchickém formátu, pokud je typ nastaven na json nebo yaml. Oddělovač je ve výchozím nastavení prázdný a vygenerovaný objekt ConfigMap obsahuje hodnoty klíčů v původní podobě. Toto nastavení nakonfigurujte jenom v případě, že zavaděč konfiguračního souboru použitého v aplikaci nemůže načíst hodnoty klíčů bez převodu na hierarchický formát. optional string

Tato spec.auth vlastnost se nevyžaduje, pokud je připojovací řetězec obchodu App Configuration k dispozici nastavením spec.connectionStringReference vlastnosti. V opačném případě se k ověřování použije jedna z identit, instančního objektu, identity úlohy nebo spravované identity. Má spec.auth následující podřízené vlastnosti. Je třeba zadat pouze jeden z nich. Pokud žádná z nich není nastavená, použije se spravovaná identita přiřazená systémem škálovací sady virtuálních počítačů.

Název Popis Povinní účastníci Typ
servicePrincipalReference Název tajného kódu Kubernetes, který obsahuje přihlašovací údaje instančního objektu. Tajný klíč musí být ve stejném oboru názvů jako poskytovatel Kubernetes. false (nepravda) string
workloadIdentity Nastavení pro použití identity úloh. false (nepravda) objekt
managedIdentityClientId ID klienta spravované identity přiřazené uživatelem škálovací sady virtuálních počítačů. false (nepravda) string

Vlastnost spec.auth.workloadIdentity má následující podřízené vlastnosti. Musí být zadán jeden z nich.

Název Popis Povinní účastníci Typ
managedIdentityClientId ID klienta spravované identity přiřazené uživatelem přidružené k identitě úlohy. Alternativní string
managedIdentityClientIdReference ID klienta spravované identity přiřazené uživatelem lze získat z objektu ConfigMap. Objekt ConfigMap musí být ve stejném oboru názvů jako zprostředkovatel Kubernetes. Alternativní objekt

Vlastnost spec.auth.workloadIdentity.managedIdentityClientIdReference má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
configMap Název objektu ConfigMap, kde lze najít ID klienta spravované identity přiřazené uživatelem. true string
key Název klíče, který obsahuje hodnotu ID klienta spravované identity přiřazené uživatelem. true string

spec.configuration následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
Selektory Seznam selektorů pro filtrování klíč-hodnota. false (nepravda) Pole objektů
trimKeyPrefixes Seznam předpon klíčů, které se mají oříznout. false (nepravda) Řetězcové pole
dat Nastavení pro aktualizaci hodnot klíčů z Aplikace Azure Konfigurace. Pokud vlastnost chybí, hodnoty klíče z Aplikace Azure Konfigurace se neaktualizuje. false (nepravda) objekt

Pokud vlastnost spec.configuration.selectors není nastavená, stáhnou se všechny hodnoty klíčů bez popisku. Obsahuje pole objektů selektoru, které mají následující podřízené vlastnosti. Všimněte si, že hodnoty klíče posledního selektoru mají přednost a přepíší všechny překrývající se klíče z předchozích selektorů.

Název Popis Povinní účastníci Typ
keyFilter Filtr klíčů pro dotazování hodnot klíčů. Tato vlastnost a snapshotName vlastnost by neměly být nastaveny současně. Alternativní string
labelFilter Filtr popisků pro dotazování hodnot klíč-hodnota. Tato vlastnost a snapshotName vlastnost by neměly být nastaveny současně. false (nepravda) string
snapshotName Název snímku, ze kterého se načtou hodnoty klíče. Tato vlastnost by neměla být použita ve spojení s jinými vlastnostmi. Alternativní string

Vlastnost spec.configuration.refresh má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
enabled Nastavení určující, jestli se hodnoty klíče z Aplikace Azure Konfigurace automaticky aktualizují. Pokud vlastnost chybí, použije se výchozí hodnota false . false (nepravda) bool
Monitorování Hodnoty klíčů monitorované pro detekci změn, neboli klíče sentinelu. Hodnoty klíčů z Aplikace Azure Konfigurace se aktualizují jenom v případě, že se změní alespoň jedna z monitorovaných hodnot klíče. true objekt
interval Interval, ve kterém se hodnoty klíče aktualizují z konfigurace Aplikace Azure. Musí být větší nebo rovna 1 sekundě. Pokud vlastnost chybí, použije se výchozí hodnota 30 sekund. false (nepravda) řetězec doby trvání

Jedná se spec.configuration.refresh.monitoring.keyValues o pole objektů, které mají následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
key Klíč klíč-hodnota. true string
popisek Popisek hodnoty klíče. false (nepravda) string

Vlastnost spec.secret má následující podřízené vlastnosti. Vyžaduje se, pokud se očekává, že se stáhnou nějaké odkazy na službu Key Vault. Další informace o podpoře předdefinovaných typů tajných kódů Kubernetes najdete v tématu Typy tajných kódů.

Název Popis Povinní účastníci Typ
target Cíl načtených tajných kódů v Kubernetes. true objekt
auth Metoda ověřování pro přístup ke službě Key Vault. false (nepravda) objekt
dat Nastavení pro aktualizaci dat ze služby Key Vault. Pokud vlastnost chybí, data ze služby Key Vault se neaktualizuje, pokud se znovu nenačtou odpovídající odkazy služby Key Vault. false (nepravda) objekt

Vlastnost spec.secret.target má následující podřízenou vlastnost.

Název Popis Povinní účastníci Typ
secretName Název tajného kódu Kubernetes, který se má vytvořit. true string

spec.secret.auth Pokud vlastnost není nastavená, použije se spravovaná identita přiřazená systémem. Má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
servicePrincipalReference Název tajného kódu Kubernetes, který obsahuje přihlašovací údaje instančního objektu používaného k ověřování pomocí služby Key Vault, které nemají zadané jednotlivé metody ověřování. false (nepravda) string
workloadIdentity Nastavení identity úlohy používané k ověřování ve službě Key Vault, které nemají zadané jednotlivé metody ověřování. Má stejné podřízené vlastnosti jako spec.auth.workloadIdentity. false (nepravda) objekt
managedIdentityClientId ID klienta spravované identity přiřazené uživatelem škálovací sady virtuálních počítačů, které se používají k ověřování ve službě Key Vault, které nemají zadané jednotlivé metody ověřování. false (nepravda) string
keyVaults Metody ověřování pro jednotlivé trezory klíčů. false (nepravda) Pole objektů

Metodu ověřování jednotlivých trezorů klíčů je možné zadat s následujícími vlastnostmi. Jedna z hodnot managedIdentityClientIdnebo workloadIdentityservicePrincipalReference musí být poskytována.

Název Popis Povinní účastníci Typ
uri Identifikátor URI služby Key Vault. true string
servicePrincipalReference Název tajného klíče Kubernetes, který obsahuje přihlašovací údaje instančního objektu používaného k ověřování ve službě Key Vault. false (nepravda) string
workloadIdentity Nastavení identity úlohy používané k ověřování ve službě Key Vault. Má stejné podřízené vlastnosti jako spec.auth.workloadIdentity. false (nepravda) objekt
managedIdentityClientId ID klienta spravované identity přiřazené uživatelem škálovací sady virtuálních počítačů sloužící k ověřování ve službě Key Vault. false (nepravda) string

Vlastnost spec.secret.refresh má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
enabled Nastavení určující, jestli se data ze služby Key Vault automaticky aktualizují. Pokud vlastnost chybí, použije se výchozí hodnota false . false (nepravda) bool
interval Interval, ve kterém se data aktualizují ze služby Key Vault. Musí být větší nebo rovna 1 minutě. Aktualizace služby Key Vault je nezávislá na aktualizaci konfigurace aplikace nakonfigurované prostřednictvím spec.configuration.refresh. true řetězec doby trvání

Vlastnost spec.featureFlag má následující podřízené vlastnosti. Vyžaduje se, pokud se očekává, že se stáhnou nějaké příznaky funkcí.

Název Popis Povinní účastníci Typ
Selektory Seznam selektorů pro filtrování příznaků funkcí false (nepravda) Pole objektů
dat Nastavení pro aktualizaci příznaků funkcí z konfigurace Aplikace Azure. Pokud vlastnost chybí, příznaky funkcí z Aplikace Azure Konfigurace se neaktualizuje. false (nepravda) objekt

spec.featureFlag.selectors Pokud vlastnost není nastavená, příznaky funkcí se nestáhnou. Obsahuje pole objektů selektoru, které mají následující podřízené vlastnosti. Všimněte si, že příznaky funkcí posledního selektoru mají přednost a přepíší všechny překrývající se klávesy z předchozích selektorů.

Název Popis Povinní účastníci Typ
keyFilter Klíčový filtr pro dotazování příznaků funkcí. Tato vlastnost a snapshotName vlastnost by neměly být nastaveny současně. Alternativní string
labelFilter Filtr popisků pro dotazování příznaků funkcí. Tato vlastnost a snapshotName vlastnost by neměly být nastaveny současně. false (nepravda) string
snapshotName Název snímku, ze kterého se načítají příznaky funkcí. Tato vlastnost by neměla být použita ve spojení s jinými vlastnostmi. Alternativní string

Vlastnost spec.featureFlag.refresh má následující podřízené vlastnosti.

Název Popis Povinní účastníci Typ
enabled Nastavení určující, jestli se příznaky funkcí z Aplikace Azure Konfigurace aktualizují automaticky. Pokud vlastnost chybí, použije se výchozí hodnota false . false (nepravda) bool
interval Interval, ve kterém se příznaky funkcí aktualizují z Aplikace Azure Konfigurace. Musí být větší nebo rovna 1 sekundě. Pokud vlastnost chybí, použije se výchozí hodnota 30 sekund. false (nepravda) řetězec doby trvání

Instalace

Pomocí následujícího helm install příkazu nainstalujte poskytovatele Aplikace Azure Configuration Kubernetes. Úplný seznam parametrů a jejich výchozích hodnot najdete v souboru helm-values.yaml . Výchozí hodnoty můžete přepsat předáním --set příznaku příkazu.

helm install azureappconfiguration.kubernetesprovider \
    oci://mcr.microsoft.com/azure-app-configuration/helmchart/kubernetes-provider \
    --namespace azappconfig-system \
    --create-namespace

Automatické škálování

Ve výchozím nastavení je automatické škálování zakázané. Pokud ale máte více AzureAppConfigurationProvider prostředků pro vytvoření více konfigurací Mapy/Tajných kódů, můžete povolit horizontální automatické škálování podů nastavením autoscaling.enabled na true.

Příklady

Ověřování

Použití spravované identity přiřazené systémem škálovací sady virtuálních počítačů

  1. Povolte spravovanou identitu přiřazenou systémem ve škálovací sadě virtuálních počítačů používanou clusterem Azure Kubernetes Service (AKS).

  2. Udělte roli Čtenář dat app configuration app configuration spravované identity přiřazené systémem v Aplikace Azure Configuration.

  3. Do clusteru AKS nasaďte následující ukázkový AzureAppConfigurationProvider prostředek.

    apiVersion: azconfig.io/v1
    kind: AzureAppConfigurationProvider
    metadata:
      name: appconfigurationprovider-sample
    spec:
      endpoint: <your-app-configuration-store-endpoint>
      target:
        configMapName: configmap-created-by-appconfig-provider
    

Použití spravované identity přiřazené uživatelem škálovací sady virtuálních počítačů

  1. Vytvořte spravovanou identitu přiřazenou uživatelem a po vytvoření si poznamenejte její ID klienta.

  2. Přiřaďte spravovanou identitu přiřazenou uživatelem ke škálovací sadě virtuálních počítačů používanou clusterem Azure Kubernetes Service (AKS).

  3. Udělte roli Čtenář dat aplikace app configuration spravované identity přiřazené uživatelem v Aplikace Azure Configuration.

  4. spec.auth.managedIdentityClientId Nastavte vlastnost na ID klienta spravované identity přiřazené uživatelem v následujícím ukázkovém AzureAppConfigurationProvider prostředku a nasaďte ji do clusteru AKS.

    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>
    

Použití instančního objektu

  1. Vytvoření instančního objektu

  2. Udělte roli Čtenář dat konfigurace aplikace instančního objektu v konfiguraci Aplikace Azure.

  3. Vytvořte tajný klíč Kubernetes ve stejném oboru názvů jako AzureAppConfigurationProvider prostředek a přidejte do tajného klíče azure_client_id, azure_client_secret a azure_tenant_id instančního objektu.

  4. spec.auth.servicePrincipalReference Nastavte vlastnost na název tajného kódu v následujícím ukázkovém AzureAppConfigurationProvider prostředku a nasaďte ji do clusteru 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
      auth:
        servicePrincipalReference: <your-service-principal-secret-name>
    

Použití identity úlohy

  1. Povolte identitu úloh v clusteru Azure Kubernetes Service (AKS).

  2. Získejte adresu URL vystavitele OIDC clusteru AKS.

  3. Vytvořte spravovanou identitu přiřazenou uživatelem a po vytvoření si poznamenejte její ID klienta.

  4. Vytvořte přihlašovací údaje federované identity mezi spravovanou identitou, vystavitelem OIDC a předmětem pomocí Azure CLI.

    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:azappconfig-system:az-appconfig-k8s-provider --audience api://AzureADTokenExchange
    
  5. Udělte roli Čtenář dat aplikace app configuration spravované identity přiřazené uživatelem v Aplikace Azure Configuration.

  6. spec.auth.workloadIdentity.managedIdentityClientId Nastavte vlastnost na ID klienta spravované identity přiřazené uživatelem v následujícím ukázkovém AzureAppConfigurationProvider prostředku a nasaďte ji do clusteru AKS.

    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:
          managedIdentityClientId: <your-managed-identity-client-id>
    

Použití připojovací řetězec

  1. Vytvořte tajný klíč Kubernetes ve stejném oboru názvů jako AzureAppConfigurationProvider prostředek a přidejte Aplikace Azure Configuration připojovací řetězec s klíčem azure_app_configuration_connection_string v tajném kódu.

  2. spec.connectionStringReference Nastavte vlastnost na název tajného kódu v následujícím ukázkovém AzureAppConfigurationProvider prostředku a nasaďte ji do clusteru Kubernetes.

    apiVersion: azconfig.io/v1
    kind: AzureAppConfigurationProvider
    metadata:
      name: appconfigurationprovider-sample
    spec:
      connectionStringReference: <your-connection-string-secret-name>
      target:
        configMapName: configmap-created-by-appconfig-provider
    

Výběr klíč-hodnota

selectors Pomocí vlastnosti můžete filtrovat hodnoty klíče, které se mají stáhnout z Aplikace Azure Configuration.

Následující ukázka stáhne všechny hodnoty klíčů bez popisku.

apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
  name: appconfigurationprovider-sample
spec:
  endpoint: <your-app-configuration-store-endpoint>
  target:
    configMapName: configmap-created-by-appconfig-provider

V následujícím příkladu se k načtení dvou sad hodnot klíče používají dva selektory, z nichž každý má jedinečné popisky. Je důležité si uvědomit, že hodnoty posledního selektoru mají přednost a přepíší všechny překrývající se klávesy z předchozích selektorů.

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

Snímek lze použít samostatně nebo společně s jinými selektory klíč-hodnota. V následující ukázce načtete hodnoty klíčů společné konfigurace ze snímku a potom některé z nich přepíšete hodnotami klíčů pro vývoj.

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

Oříznutí předpony klíče

Následující ukázka pomocí trimKeyPrefixes vlastnosti před přidáním do vygenerovaného objektu ConfigMap oříznou dvě předpony z názvů klíčů.

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]

Aktualizace konfigurace

Když v konfiguraci Aplikace Azure provedete změny dat, můžete chtít, aby se tyto změny automaticky aktualizovaly v clusteru Kubernetes. Je běžné aktualizovat více hodnot klíčů, ale nechcete, aby cluster zvedá změnu uprostřed aktualizace. Pokud chcete zachovat konzistenci konfigurace, můžete použít klíč-hodnota k označení dokončení aktualizace. Tato hodnota klíče se označuje jako klíč sentinelu. Zprostředkovatel Kubernetes může tuto klíčovou hodnotu monitorovat a objekt ConfigMap a Secret se znovu vygenerují pouze s aktualizovanými daty, jakmile se v klíči sentinelu zjistí změna.

V následující ukázce se každou minutu dotazuje pojmenovaná app1_sentinel hodnota klíče a konfigurace se aktualizuje při každém zjištění změn v klíči sentinelu.

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
      monitoring:
        keyValues:
          - key: app1_sentinel
            label: common

Reference ke službě Key Vault

Ověřování

V následující ukázce se jeden trezor klíčů ověřuje pomocí instančního objektu, zatímco všechny ostatní trezory klíčů se ověřují pomocí spravované identity přiřazené uživatelem.

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>

Typy tajných kódů

Aktuálně se podporují dva předdefinované typy tajných kódů, neprůpané a TLS Kubernetes. Tajné kódy vyřešené z odkazů služby Key Vault se ve výchozím nastavení ukládají jako neprůpaný typ tajného kódu . Pokud máte odkaz služby Key Vault na certifikát a chcete ho uložit jako typ tajného klíče TLS, můžete přidat značku s následujícím názvem a hodnotou do odkazu služby Key Vault v konfiguraci Aplikace Azure. Tímto způsobem se vygeneruje tajný klíč s kubernetes.io/tls typem a pojmenuje se za klíč odkazu služby Key Vault.

Jméno Hodnota
.kubernetes.secret.type kubernetes.io/tls

Aktualizace tajných kódů ze služby Key Vault

Aktualizace tajných kódů ze služby Key Vault obvykle vyžaduje opětovné načtení odpovídajících odkazů služby Key Vault z konfigurace Aplikace Azure. S spec.secret.refresh vlastností ale můžete aktualizovat tajné kódy ze služby Key Vault nezávisle. To je zvlášť užitečné pro zajištění toho, aby vaše úloha během obměny tajných kódů automaticky získala všechny aktualizované tajné kódy ze služby Key Vault. Upozorňujeme, že pokud chcete načíst nejnovější verzi tajného kódu, nesmí být odkaz služby Key Vault tajný kód verze.

Následující ukázka aktualizuje všechny tajné kódy, které nejsou verzemi, ze služby Key Vault každou hodinu.

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

Příznaky funkcí

V následující ukázce se příznaky funkcí s klíči začínajícími app1 na popisky a popisky, které common se stahují a aktualizují každých 10 minut.

apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
  name: appconfigurationprovider-sample
spec:
  endpoint: <your-app-configuration-store-endpoint>
  target:
    configMapName: configmap-created-by-appconfig-provider
  featureFlag:
    selectors:
      - keyFilter: app1*
        labelFilter: common
    refresh:
      enabled: true
      interval: 10m

Spotřeba configmap

Aplikace spuštěné v Kubernetes obvykle využívají objekt ConfigMap buď jako proměnné prostředí, nebo jako konfigurační soubory. configMapData.type Pokud vlastnost chybí nebo je nastavena na výchozí, objekt ConfigMap se naplní seznamem dat načtených z Aplikace Azure Konfigurace, které lze snadno využívat jako proměnné prostředí. Pokud je vlastnost nastavena configMapData.type na json, yaml nebo vlastnosti, data načtená z Aplikace Azure Configuration se seskupí do jedné položky s názvem klíče určeným configMapData.key vlastností vygenerované ConfigMap, která se dá použít jako připojený soubor.

Následující příklady ukazují, jak se data naplní ve vygenerovaném objektu ConfigMap s různými nastaveními configMapData.type vlastnosti.

Za předpokladu, že úložiště App Configuration má tyto hodnoty klíče:

key hodnota
key1 hodnota1
key2 hodnota2
key3 hodnota 3

A vlastnost chybí nebo je nastavena configMapData.type na default,

apiVersion: azconfig.io/v1
kind: AzureAppConfigurationProvider
metadata:
  name: appconfigurationprovider-sample
spec:
  endpoint: <your-app-configuration-store-endpoint>
  target:
    configMapName: configmap-created-by-appconfig-provider

Vygenerovaná mapa configmap se naplní následujícími daty:

data:
  key1: value1
  key2: value2
  key3: value3