Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a példa bemutatja, hogyan használhatja az Azure SDK felügyeleti kódtárait egy Python-szkriptben egy erőforráscsoport létrehozásához. (Az Egyenértékű Azure CLI-parancsot a jelen cikk későbbi részében találja. Ha inkább az Azure Portalt szeretné használni, olvassa el az Erőforráscsoportok létrehozása című témakört.)
A cikkben szereplő összes parancs ugyanúgy működik a Linux/macOS bash és a Windows parancshéjakban, hacsak fel nem jegyezzük.
1: A helyi fejlesztési környezet beállítása
Ha még nem tette meg, hozzon létre egy környezetet, ahol futtathatja ezt a kódot. Íme néhány lehetőség:
Python virtuális környezetet konfiguráljon a
venv
használatával vagy az Ön által választott eszközzel. A virtuális környezet használatának megkezdéséhez feltétlenül aktiválja azt. A Python telepítéséhez lásd a Python telepítését.#!/bin/bash # Create a virtual environment python -m venv .venv # Activate the virtual environment source .venv/Scripts/activate # only required for Windows (Git Bash)
Használjon conda környezetet. A Conda telepítéséhez lásd a Miniconda telepítése című témakört.
Használjon Dev-tárolót a Visual Studio Code-ban vagy a GitHub Codespace-ben.
2: Az Azure-kódtárcsomagok telepítése
A konzolon hozzon létre egy requirements.txt fájlt, amely felsorolja a példában használt felügyeleti kódtárakat:
azure-mgmt-resource azure-identity
Az aktivált virtuális környezettel rendelkező konzolon telepítse a követelményeket:
pip install -r requirements.txt
3. Környezeti változók beállítása
Ebben a lépésben környezeti változókat állít be a jelen cikkben szereplő kódban való használatra. A kód a os.environ
metódust használja az értékek lekérésére.
#!/bin/bash
export AZURE_RESOURCE_GROUP_NAME=<ResourceGroupName> # Change to your preferred resource group name
export LOCATION=<Location> # Change to your preferred region
export AZURE_SUBSCRIPTION_ID=$(az account show --query id --output tsv)
4: Kód írása erőforráscsoport létrehozásához
Ebben a lépésben egy provision_blob.py nevű Python-fájlt hoz létre a következő kóddal. Ez a Python-szkript az Azure SDK for Python felügyeleti kódtárak használatával hoz létre egy erőforráscsoportot az Azure-előfizetésben.
Hozzon létre egy provision_rg.py nevű Python-fájlt a következő kóddal. A megjegyzések a részleteket ismertetik:
# Import the needed credential and management objects from the libraries.
import os
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
# Acquire a credential object using DevaultAzureCredential.
credential = DefaultAzureCredential()
# Retrieve subscription ID from environment variable.
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Retrieve resource group name and location from environment variables
RESOURCE_GROUP_NAME = os.environ["AZURE_RESOURCE_GROUP_NAME"]
LOCATION = os.environ["LOCATION"]
# Obtain the management object for resources.
resource_client = ResourceManagementClient(credential, subscription_id)
# Provision the resource group.
rg_result = resource_client.resource_groups.create_or_update(RESOURCE_GROUP_NAME,
{ "location": LOCATION })
print(f"Provisioned resource group {rg_result.name}")
# Within the ResourceManagementClient is an object named resource_groups,
# which is of class ResourceGroupsOperations, which contains methods like
# create_or_update.
#
# The second parameter to create_or_update here is technically a ResourceGroup
# object. You can create the object directly using ResourceGroup(location=
# LOCATION) or you can express the object as inline JSON as shown here. For
# details, see Inline JSON pattern for object arguments at
# https://learn.microsoft.com/azure/developer/python/sdk
# /azure-sdk-library-usage-patterns#inline-json-pattern-for-object-arguments
print(
f"Provisioned resource group {rg_result.name} in the {rg_result.location} region"
)
# The return value is another ResourceGroup object with all the details of the
# new group. In this case the call is synchronous: the resource group has been
# provisioned by the time the call returns.
# To update the resource group, repeat the call with different properties, such
# as tags:
rg_result = resource_client.resource_groups.create_or_update(
RESOURCE_GROUP_NAME,
{
"location": LOCATION,
"tags": {"environment": "test", "department": "tech"},
},
)
print(f"Updated resource group {rg_result.name} with tags")
# Optional lines to delete the resource group. begin_delete is asynchronous.
# poller = resource_client.resource_groups.begin_delete(rg_result.name)
# result = poller.result()
Hitelesítés a kódban
A cikk későbbi részében az Azure CLI használatával jelentkezik be az Azure-ba a mintakód végrehajtásához. Ha a fiókja rendelkezik megfelelő engedélyekkel az erőforráscsoportok és a tárerőforrások Azure-előfizetésben való létrehozásához, a szkriptnek további konfiguráció nélkül kell sikeresen futnia.
Ha termelési környezetben szeretné használni a kódot, hitelesítsen egy szolgáltatás felelőssel a környezeti változók beállításával. Ez a megközelítés interaktív bejelentkezés nélkül teszi lehetővé a biztonságos, automatizált hozzáférést. Részletes útmutatásért tekintse meg a Python-alkalmazások Azure-szolgáltatásokkal való hitelesítését ismertető témakört.
Győződjön meg arról, hogy a szolgáltatási fiókhoz olyan szerepkör van hozzárendelve, amely elegendő engedéllyel rendelkezik az erőforráscsoportok és tárfiókok létrehozásához. Például a közreműködői szerepkör előfizetési szinten való hozzárendelése biztosítja a szükséges hozzáférést. A szerepkör-hozzárendelésekkel kapcsolatos további információkért lásd: Szerepköralapú hozzáférés-vezérlés (RBAC) az Azure-ban.
A kódban használt osztályok hivatkozásai
5: A szkript futtatása
Ha még nem tette meg, jelentkezzen be az Azure-ba az Azure CLI használatával:
az login
Futtassa a szkriptet:
python provision_rg.py
6: Az erőforráscsoport ellenőrzése
Ellenőrizheti, hogy az erőforráscsoport létezik-e az Azure Portalon vagy az Azure CLI-ben.
Azure Portal: Nyissa meg az Azure Portalt, válassza ki az Erőforráscsoportokat, és ellenőrizze, hogy a csoport szerepel-e a listában. Ha szükséges, frissítse a listát a Frissítés paranccsal.
Azure CLI: használja az az group show parancsot:
#!/bin/bash az group show -n $AZURE_RESOURCE_GROUP_NAME
7: Erőforrások törlése
Futtassa az az group delete parancsot, ha nem kell megtartania a példában létrehozott erőforráscsoportot. Az erőforráscsoportok nem járnak folyamatos díjakkal az előfizetésben, de az erőforráscsoport erőforrásai továbbra is díjakat vonhatnak maga után. Jó gyakorlat minden olyan csoportot eltávolítani, amelyet nem használ aktívan. Az --no-wait
argumentum lehetővé teszi, hogy a parancs azonnal visszatérjen a művelet befejezésére való várakozás helyett.
#!/bin/bash
az group delete -n $AZURE_RESOURCE_GROUP_NAME --no-wait
A metódussal ResourceManagementClient.resource_groups.begin_delete
egy erőforráscsoportot is törölhet a kódból. A cikk szkriptjének alján található megjegyzéskód bemutatja a használatot.
Hivatkozás: egyenértékű Azure CLI-parancs
A következő Azure CLI az group create parancs létrehoz egy erőforráscsoportot a Python-szkripthez hasonló címkékkel:
az group create -n PythonAzureExample-rg -l centralus --tags "department=tech" "environment=test"
Lásd még
- Példa: Erőforráscsoportok listázása előfizetésben
- Példa: Azure Storage létrehozása
- Példa: Az Azure Storage használata
- Példa: Webalkalmazás létrehozása és kód üzembe helyezése
- Példa: Adatbázis létrehozása és lekérdezése
- Példa: Virtuális gép létrehozása
- Azure Managed Disks használata virtuális gépekkel
- Rövid felmérés befejezése a Pythonhoz készült Azure SDK-ról