Sdílet prostřednictvím


Kurz: Použití poskytovatele služby Azure Key Vault pro ovladač CSI úložiště tajných kódů v clusteru Azure Kubernetes Service (AKS)

Zjistěte, jak se připojit ke službě Azure Key Vault pomocí ovladače CSI v clusteru Azure Kubernetes Service (AKS) pomocí služby Připojení oru. V tomto kurzu provedete následující úlohy:

  • Vytvořte cluster AKS a Azure Key Vault.
  • Vytvořte připojení mezi clusterem AKS a službou Azure Key Vault se službou Service Připojení or.
  • Vytvořte SecretProviderClass CRD a pod využití zprostředkovatele CSI k otestování připojení.
  • Vyčistěte prostředky.

Důležité

Služba Připojení v rámci AKS je aktuálně ve verzi Preview. Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.

Požadavky

Vytvoření zdrojů Azure

  1. Vytvořte skupinu prostředků pro tento kurz.

    az group create \
        --name MyResourceGroup \
        --location eastus
    
  2. Vytvořte cluster AKS pomocí následujícího příkazu nebo použijte odkaz na tento kurz. Jedná se o cluster, do kterého vytvoříme připojení služby, definici podu a nasadíme ukázkovou aplikaci.

    az aks create \
        --resource-group MyResourceGroup \
        --name MyAKSCluster \
        --enable-managed-identity \
        --node-count 1
    
  3. Připojení do clusteru pomocí následujícího příkazu.

    az aks get-credentials \
        --resource-group MyResourceGroup \
        --name MyAKSCluster
    
  4. Vytvořte službu Azure Key Vault pomocí následujícího příkazu nebo použijte odkaz na tento kurz. Toto je cílová služba, která je připojená ke clusteru AKS a ovladač CSI synchronizuje tajné kódy.

    az keyvault create \
        --resource-group MyResourceGroup \  
        --name MyKeyVault \
        --location EastUS
    
  5. Ve službě Key Vault vytvořte tajný kód pomocí následujícího příkazu.

    az keyvault secret set \
        --vault-name MyKeyVault \
        --name ExampleSecret \
        --value MyAKSExampleSecret
    

Vytvoření připojení služby v AKS se službou Připojení or (Preview)

Vytvořte připojení služby mezi clusterem AKS a službou Azure Key Vault pomocí webu Azure Portal nebo Azure CLI.

  1. Otevřete službu Kubernetes na webu Azure Portal a v nabídce vlevo vyberte Service Připojení or.

  2. Vyberte Vytvořit a vyplňte nastavení, jak je znázorněno níže. U ostatních nastavení ponechte výchozí hodnoty.

    Nastavení Volba Popis
    Obor názvů Kubernetes default Obor názvů, ve kterém potřebujete připojení v clusteru.
    Typ služby Key Vault (povolení csI) Jako typ cílové služby zvolte Key Vault a zaškrtněte možnost povolení csI.
    Název připojení keyvault_conn Použijte název připojení poskytovaný službou Připojení or nebo zvolte vlastní název připojení.
    Předplatné <MySubscription> Předplatné cílové služby Azure Key Vault.
    Trezor klíčů <MyKeyVault> Cílový trezor klíčů, ke kterému se chcete připojit.
    Typ klienta Python Jazyk kódu nebo architektura, které používáte pro připojení k cílové službě.
  3. Po vytvoření připojení se na stránce service Připojení or zobrazí informace o novém připojení.

    Snímek obrazovky webu Azure Portal se zobrazením prostředků Kubernetes vytvořených službou Service Připojení or

Test připojení

  1. Naklonujte ukázkové úložiště:

    git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.git
    
  2. Přejděte do ukázkové složky úložiště pro Azure Key Vault:

    cd serviceconnector-aks-samples/azure-keyvault-csi-provider
    
  3. Nahraďte zástupné symboly v secret_provider_class.yaml souboru ve azure-keyvault-csi-provider složce.

    • Nahraďte <AZURE_KEYVAULT_NAME> názvem trezoru klíčů, který jsme vytvořili a připojili. Hodnotu můžete získat z webu Azure Portal služby Připojení or.
    • Nahraďte <AZURE_KEYVAULT_TENANTID> ID tenanta trezoru klíčů. Hodnotu můžete získat z webu Azure Portal služby Připojení or.
    • Nahraďte <AZURE_KEYVAULT_CLIENTID> ID klienta identity doplňku azureKeyvaultSecretsProvider . Hodnotu můžete získat z webu Azure Portal služby Připojení or.
    • Nahraďte <KEYVAULT_SECRET_NAME> názvem tajného kódu trezoru klíčů, který jsme vytvořili, například ExampleSecret
  4. Pomocí příkazu nasaďte prostředky Kubernetes do clusteru kubectl apply . Pokud není nainstalovaný, nainstalujte kubectl místně příkazem az aks install-cli.

    1. SecretProviderClass Nasaďte CRD.
    kubectl apply -f secret_provider_class.yaml
    
    1. Nasaďte soubor pod. Příkaz vytvoří pod pojmenovaný sc-demo-keyvault-csi ve výchozím oboru názvů vašeho clusteru AKS.
    kubectl apply -f pod.yaml
    
  5. Zkontrolujte, jestli nasazení proběhlo úspěšně, a to zobrazením podu s kubectl.

    kubectl get pod/sc-demo-keyvault-csi
    
  6. Po spuštění podu je k dispozici připojený obsah v cestě svazku zadané v YAML nasazení. Pomocí následujících příkazů ověřte tajné kódy a vytiskněte testovací tajný klíč.

    • Pomocí následujícího příkazu zobrazte tajné kódy uložené v úložišti tajných kódů.
    kubectl exec sc-demo-keyvault-csi -- ls /mnt/secrets-store/
    
    • Pomocí následujícího příkazu zobrazte tajný kód v úložišti. Tento ukázkový příkaz ukazuje tajný kód ExampleSecrettestu .
    kubectl exec sc-demo-keyvault-csi -- cat /mnt/secrets-store/ExampleSecret
    

Vyčištění prostředků

Pokud nepotřebujete opakovaně používat prostředky, které jste vytvořili v tomto kurzu, odstraňte všechny prostředky, které jste vytvořili odstraněním skupiny prostředků.

az group delete \
    --resource-group MyResourceGroup

Další kroky

Další informace o konceptech služby Připojení or a o tom, jak AKS pomáhá připojit se ke službám, najdete v následujících článcích.