Dela via


Självstudie: Ansluta till Azure Storage-konto i Azure Kubernetes Service (AKS) med Service Connector med hjälp av arbetsbelastningsidentitet

Lär dig hur du skapar en podd i ett AKS-kluster som pratar med ett Azure Storage-konto med hjälp av arbetsbelastningsidentitet med hjälp av Service Connector. I den här självstudien slutför du följande uppgifter:

  • Skapa ett AKS-kluster och ett Azure Storage-konto.
  • Skapa en anslutning mellan AKS-klustret och Azure Storage-kontot med Service Connector.
  • Klona ett exempelprogram som ska kommunicera med Azure Storage-kontot från ett AKS-kluster.
  • Distribuera programmet till en podd i AKS-klustret och testa anslutningen.
  • Rensa resurser.

Viktigt!

Service Connect i AKS är för närvarande i förhandsversion. Juridiska villkor för Azure-funktioner i betaversion, förhandsversion eller som av någon annan anledning inte har gjorts allmänt tillgängliga ännu finns i kompletterande användningsvillkor för Microsoft Azure-förhandsversioner.

Förutsättningar

Skapa Azure-resurser

  1. Skapa en resursgrupp för den här självstudien.

    az group create \
        --name MyResourceGroup \
        --location eastus
    
  2. Skapa ett AKS-kluster med följande kommando eller referera till självstudien. Vi skapar tjänstanslutningen, podddefinitionen och distribuerar exempelprogrammet till det här klustret.

    az aks create \
        --resource-group MyResourceGroup \
        --name MyAKSCluster \
        --enable-managed-identity \
        --node-count 1
    
  3. Anslut till klustret med följande kommando.

    az aks get-credentials \
        --resource-group MyResourceGroup \
        --name MyAKSCluster
    
  4. Skapa ett Azure Storage-konto med följande kommando eller referera till självstudien. Det här är måltjänsten som är ansluten till AKS-klustret och exempelprogrammet interagerar med.

    az storage account create \
        --resource-group MyResourceGroup \
        --name MyStorageAccount \
        --location eastus \
        --sku Standard_LRS
    
  5. Skapa ett Azure-containerregister med följande kommando eller referera till självstudien. Registret är värd för containeravbildningen av exempelprogrammet, som används av AKS-podddefinitionen.

    az acr create \
        --resource-group MyResourceGroup \
        --name MyRegistry \
        --sku Standard
    

    Och aktivera anonym pull så att AKS-klustret kan använda avbildningarna i registret.

    az acr update \
        --resource-group MyResourceGroup \
        --name MyRegistry \
        --anonymous-pull-enabled
    
  6. Skapa en användartilldelad hanterad identitet med följande kommando eller referera till självstudien. Den användartilldelade hanterade identiteten används vid skapande av tjänstanslutning för att aktivera arbetsbelastningsidentitet för AKS-arbetsbelastningar.

    az identity create \
        --resource-group MyResourceGroup \
        --name MyIdentity
    

Skapa tjänstanslutning med Service Connector (förhandsversion)

Skapa en tjänstanslutning mellan ett AKS-kluster och ett Azure Storage-konto med hjälp av Azure Portal eller Azure CLI.

  1. Öppna Kubernetes-tjänsten i Azure Portal och välj Service Connector på den vänstra menyn.

  2. Välj Skapa och fyll i inställningarna enligt nedan. Lämna de andra inställningarna med sina standardvärden.

    Fliken Grundläggande:

    Inställning Alternativ beskrivning
    Kubernetes-namnområde standard Namnområdet där du behöver anslutningen i klustret.
    Typ av tjänst Lagring – blob Måltjänsttypen.
    Anslutningens namn storage_conn Använd anslutningsnamnet som tillhandahålls av Service Connector eller välj ditt eget anslutningsnamn.
    Abonnemang <MySubscription> Prenumerationen för din Azure Blob Storage-måltjänst.
    Lagringskonto <MyStorageAccount> Det mållagringskonto som du vill ansluta till.
    Klienttyp Python Det kodspråk eller ramverk som du använder för att ansluta till måltjänsten.

    Fliken Autentisering:

    Autentiseringsinställning Alternativ beskrivning
    Autentiseringstyp Arbetsbelastningsidentitet Autentiseringstyp för Service Connector.
    Användartilldelad hanterad identitet <MyIdentity> En användartilldelad hanterad identitet krävs för att aktivera arbetsbelastningsidentitet.
  3. När anslutningen har skapats visar sidan Service Connector information om den nya anslutningen. Skärmbild av Azure Portal som visar kubernetes-resurser som skapats av Service Connector.

Klona exempelprogram

  1. Klona exempellagringsplatsen:

    git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.git
    
  2. Gå till lagringsplatsens exempelmapp för Azure Storage:

    cd serviceconnector-aks-samples/azure-storage-workload-identity
    

Skapa och push-överföra containeravbildning

  1. Skapa och push-överför avbildningarna till containerregistret med hjälp av Azure CLI-kommandot az acr build .

    az acr build --registry <MyRegistry> --image sc-demo-storage-identity:latest ./
    
  2. Visa avbildningarna i containerregistret med hjälp av az acr repository list kommandot .

    az acr repository list --name <MyRegistry> --output table
    

Kör program- och testanslutning

  1. Ersätt platshållarna i pod.yaml filen i azure-storage-identity mappen.

    • Ersätt <YourContainerImage> med det avbildningsnamn som vi skapar i det senaste steget, <MyRegistry>.azurecr.io/sc-demo-storage-identity:latesttill exempel .
    • Ersätt <ServiceAccountCreatedByServiceConnector> med tjänstkontot som skapades av Service Connector när anslutningen skapades. Du kan kontrollera namnet på tjänstkontot i Azure Portal för Service Connector.
    • Ersätt <SecretCreatedByServiceConnector> med hemligheten som skapades av Service Connector när anslutningen skapades. Du kan kontrollera det hemliga namnet i Azure Portal för Service Connector.
  2. Distribuera podden till klustret med kubectl apply kommandot . Installera kubectl lokalt med kommandot az aks install-cli om det inte är installerat. Kommandot skapar en podd med namnet sc-demo-storage-identity i standardnamnområdet för aks-klustret.

    kubectl apply -f pod.yaml
    
  3. Kontrollera att distributionen lyckas genom att visa podden med kubectl.

    kubectl get pod/sc-demo-storage-identity.
    
  4. Kontrollera att anslutningen upprättas genom att visa loggarna med kubectl.

    kubectl logs pod/sc-demo-storage-identity
    

Rensa resurser

Om du inte behöver återanvända de resurser som du har skapat i den här självstudien tar du bort alla resurser som du har skapat genom att ta bort resursgruppen.

az group delete \
    --resource-group MyResourceGroup

Nästa steg

Läs följande artiklar om du vill veta mer om begrepp för Service Connector och hur det hjälper AKS att ansluta till tjänster.