Share via


Rövid útmutató: Azure-szolgáltatásnév létrehozása az Ansible-hez

Ebben a rövid útmutatóban létrehoz egy Azure-szolgáltatásnevet az AzureCLI vagy az Azure PowerShell használatával, és hitelesíti az Azure-t az Ansible-ből.

Ebben a cikkben az alábbiakkal ismerkedhet meg:

  • Azure-szolgáltatásnév létrehozása az Azure CLI használatával
  • Azure-szolgáltatásnév létrehozása az Azure PowerShell használatával
  • Szerepkör hozzárendelése az Azure-szolgáltatásnévhez
  • Kulcsinformációk lekérése a szolgáltatásnévtől
  • Környezeti változók beállítása, hogy az Ansible le tudja kérni a szolgáltatásnév értékeit
  • A szolgáltatásnév tesztelése

Előfeltételek

  • Azure-előfizetés: Ha nem rendelkezik Azure-előfizetéssel, első lépésként mindössze néhány perc alatt létrehozhat egy ingyenes fiókot.

Azure-szolgáltatásnév létrehozása

Egy Azure-szolgáltatásnév dedikált fiókot biztosít az Azure-erőforrások Ansible-lel való kezeléséhez.

Futtassa a következő kódot egy Azure-szolgáltatásnév létrehozásához:

az ad sp create-for-rbac --name ansible \
            --role Contributor \
            --scopes /subscriptions/<subscription_id>

Megjegyzés:

A kimenetből származó jelszót biztonságos helyen tárolja.

Szerepkör hozzárendelése az Azure-szolgáltatásnévhez

Alapértelmezés szerint a szolgáltatásnevek nem rendelkeznek az Azure-beli erőforrások kezeléséhez szükséges hozzáféréssel.

Futtassa a következő parancsot a közreműködői szerepkör a szolgáltatásnévhez való hozzárendeléséhez:

az role assignment create --assignee <appID> \
    --role Contributor \
    --scope /subscriptions/<subscription_id>

Cserélje le <appID> a parancs kimenetéből kapott értékre az ad sp create-for-rba .

Megjegyzés:

A biztonság javítása érdekében módosítsa a szerepkör-hozzárendelés hatókörét egy erőforráscsoportra előfizetés helyett.

Azure-szolgáltatásnév adatainak lekérése

Ha szolgáltatásnévvel szeretne hitelesíteni az Azure-ban, a következő információkra van szüksége:

  • SubscriptionID
  • Egyszerű szolgáltatásalkalmazás azonosítója
  • Egyszerű szolgáltatás jelszava
  • Bérlőazonosító

Futtassa a következő parancsokat a szolgáltatásnév adatainak lekéréséhez:

az account show --query '{tenantId:tenantId,subscriptionid:id}';

az ad sp list --display-name ansible --query '{clientId:[0].appId}'

Hitelesítés az Azure-ban a szolgáltatásnévvel

Futtassa a következő parancsokat a szükséges környezeti változók feltöltéséhez az Ansible-kiszolgálón:

export AZURE_SUBSCRIPTION_ID=<SubscriptionID>
export AZURE_CLIENT_ID=<ApplicationId>
export AZURE_SECRET=<Password>
export AZURE_TENANT=<TenantID>

Cserélje le <SubscriptionID>a , <ApplicationId>, <Password>és <TenantID> a szolgáltatásnév-fiók értékeit.

Szolgáltatásnév engedélyeinek tesztelése

Futtassa a következő parancsot egy új Azure-erőforráscsoport létrehozásához:

ansible localhost -m azure_rm_resourcegroup -a "name=<resource_group_name> location=<resource_group_location>"

Cserélje le és <resource_group_location> cserélje le <resource_group_name> az új erőforráscsoport értékeit.

[WARNING]: No inventory was parsed, only implicit localhost is available
localhost | CHANGED => {
    "changed": true,
    "contains_resources": false,
    "state": {
        "id": "/subscriptions/<subscriptionID>/resourceGroups/azcli-test",
        "location": "eastus",
        "name": "azcli-test",
        "provisioning_state": "Succeeded",
        "tags": null
    }
}

Futtassa a következő parancsot az Azure-erőforráscsoport törléséhez:

ansible localhost -m azure_rm_resourcegroup -a "name=<resource_group_name> state=absent force_delete_nonempty=yes"

Cserélje le <resource_group_name> az erőforráscsoport nevére.

[WARNING]: No inventory was parsed, only implicit localhost is available
localhost | CHANGED => {
    "changed": true,
    "contains_resources": false,
    "state": {
        "id": "/subscriptions/subscriptionID>/resourceGroups/azcli-test",
        "location": "eastus",
        "name": "azcli-test",
        "provisioning_state": "Succeeded",
        "status": "Deleted",
        "tags": null
    }
}

További lépések