Megosztás a következőn keresztül:


Rövid útmutató: A Fleet-erőforrás Kubernetes API-jának elérése

Ha az Azure Kubernetes Fleet Manager-erőforrás a központi fürttel lett létrehozva, akkor az olyan forgatókönyvek központi vezérlésére használható, mint a Kubernetes-erőforrások propagálása. Ebben a cikkben megtudhatja, hogyan érheti el a Fleet-erőforrás által felügyelt központi fürt Kubernetes API-ját.

Előfeltételek

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

  • Szüksége van egy flottaerőforrásra egy központi fürttel és tagfürtökkel. Ha nem rendelkezik ilyen erőforrással, olvassa el az Azure Kubernetes Fleet Manager-erőforrás létrehozása és tagfürtökhöz való csatlakozás az Azure CLI használatával című témakört.
  • A használt identitásnak (felhasználónak vagy szolgáltatásnévnek) rendelkeznie kell a Microsoft.ContainerService/fleets/listCredentials/action szolgáltatással a Fleet-erőforráson.

A Fleet-erőforrás Kubernetes API-jának elérése

  1. Állítsa be az előfizetés azonosítójához, erőforráscsoportjához és flottaerőforrásához a következő környezeti változókat:

    export SUBSCRIPTION_ID=<subscription-id>
    export GROUP=<resource-group-name>
    export FLEET=<fleet-name>
    
  2. Állítsa be az alapértelmezett Azure-előfizetést a az account set parancs használatával.

    az account set --subscription ${SUBSCRIPTION_ID}
    
  3. Kérje le a központi fürt flottaerőforrásának kubeconfig fájlját a az fleet get-credentials parancs használatával.

    az fleet get-credentials --resource-group ${GROUP} --name ${FLEET}
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    Merged "hub" as current context in /home/fleet/.kube/config
    
  4. Állítsa be a következő környezeti változót a id központi fürt flottaerőforrásához:

    export FLEET_ID=/subscriptions/${SUBSCRIPTION_ID}/resourceGroups/${GROUP}/providers/Microsoft.ContainerService/fleets/${FLEET}
    
  5. Engedélyezze identitását a fürt flottaerőforrás Kubernetes API-kiszolgálójára az alábbi parancsokkal:

    ROLE A környezeti változóhoz az alábbi négy beépített szerepkör-definíció egyikét használhatja értékként:

    • Azure Kubernetes Fleet Manager RBAC-olvasó
    • Azure Kubernetes Fleet Manager RBAC-író
    • Azure Kubernetes Fleet Manager RBAC Rendszergazda
    • Azure Kubernetes Fleet Manager RBAC-fürt Rendszergazda
    export IDENTITY=$(az ad signed-in-user show --query "id" --output tsv)
    export ROLE="Azure Kubernetes Fleet Manager RBAC Cluster Admin"
    az role assignment create --role "${ROLE}" --assignee ${IDENTITY} --scope ${FLEET_ID}
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    {
      "canDelegate": null,
      "condition": null,
      "conditionVersion": null,
      "description": null,
      "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/fleets/<FLEET>/providers/Microsoft.Authorization/roleAssignments/<assignment>",
      "name": "<name>",
      "principalId": "<id>",
      "principalType": "User",
      "resourceGroup": "<GROUP>",
      "roleDefinitionId": "/subscriptions/<SUBSCRIPTION_ID>/providers/Microsoft.Authorization/roleDefinitions/18ab4d3d-a1bf-4477-8ad9-8359bc988f69",
      "scope": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/fleets/<FLEET>",
      "type": "Microsoft.Authorization/roleAssignments"
    }
    
  6. Ellenőrizze, hogy hozzáfér-e az API-kiszolgálóhoz a kubectl get memberclusters parancs használatával.

    kubectl get memberclusters
    

    Ha sikeres, a kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    NAME           JOINED   AGE
    aks-member-1   True     2m
    aks-member-2   True     2m
    aks-member-3   True     2m
    

Következő lépések