Példa: Erőforráscsoportok és erőforrások listázása az Azure-kódtárak használatával
Ez a példa bemutatja, hogyan használhatja az Azure SDK felügyeleti kódtárait egy Python-szkriptben két feladat végrehajtására:
- Az Azure-előfizetés összes erőforráscsoportjának listázása.
- Erőforrások listázása egy adott erőforráscsoporton belül.
A cikkben szereplő összes parancs ugyanúgy működik a Linux/macOS bash és a Windows parancshéjakban, hacsak fel nem jegyezzük.
A cikk későbbi részében az egyenértékű Azure CLI-parancsok jelennek meg.
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örnyezet konfigurálása. Létrehozhatja a virtuális környezetet helyileg vagy az Azure Cloud Shellben, és ott futtathatja a kódot. Mindenképpen aktiválja a virtuális környezetet a használat megkezdéséhez.
Használjon conda környezetet.
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
Hozzon létre egy requirements.txt nevű fájlt a következő tartalommal:
azure-mgmt-resource
azure-identity
A virtuális környezetet aktiváló terminálban vagy parancssorban telepítse a követelményeket:
pip install -r requirements.txt
3: Kód írása erőforráscsoportok használatához
3a. Erőforráscsoportok listázása előfizetésben
Hozzon létre egy list_groups.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.
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
import os
# Acquire a credential object.
credential = DefaultAzureCredential()
# Retrieve subscription ID from environment variable.
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Obtain the management object for resources.
resource_client = ResourceManagementClient(credential, subscription_id)
# Retrieve the list of resource groups
group_list = resource_client.resource_groups.list()
# Show the groups in formatted output
column_width = 40
print("Resource Group".ljust(column_width) + "Location")
print("-" * (column_width * 2))
for group in list(group_list):
print(f"{group.name:<{column_width}}{group.location}")
3b. Erőforrások listázása egy adott erőforráscsoporton belül
Hozzon létre egy list_resources.py nevű Python-fájlt a következő kóddal. A megjegyzések ismertetik a részleteket.
Alapértelmezés szerint a kód felsorolja a "myResourceGroup" erőforrásait. Másik erőforráscsoport használatához állítsa a RESOURCE_GROUP_NAME
környezeti változót a kívánt csoportnévre.
# Import the needed credential and management objects from the libraries.
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
import os
# Acquire a credential object.
credential = DefaultAzureCredential()
# Retrieve subscription ID from environment variable.
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Retrieve the resource group to use, defaulting to "myResourceGroup".
resource_group = os.getenv("RESOURCE_GROUP_NAME", "myResourceGroup")
# Obtain the management object for resources.
resource_client = ResourceManagementClient(credential, subscription_id)
# Retrieve the list of resources in "myResourceGroup" (change to any name desired).
# The expand argument includes additional properties in the output.
resource_list = resource_client.resources.list_by_resource_group(
resource_group, expand = "createdTime,changedTime")
# Show the groups in formatted output
column_width = 36
print("Resource".ljust(column_width) + "Type".ljust(column_width)
+ "Create date".ljust(column_width) + "Change date".ljust(column_width))
print("-" * (column_width * 4))
for resource in list(resource_list):
print(f"{resource.name:<{column_width}}{resource.type:<{column_width}}"
f"{str(resource.created_time):<{column_width}}{str(resource.changed_time):<{column_width}}")
Hitelesítés a kódban
A cikk későbbi részében az Azure CLI-vel jelentkezik be az Azure-ba a mintakód futtatásához. Ha a fiókja rendelkezik erőforráscsoportok létrehozására és listázására vonatkozó engedélyekkel az Azure-előfizetésben, a kód sikeresen lefut.
Ha éles szkriptben szeretné használni az ilyen kódot, a környezeti változókat úgy állíthatja be, hogy egyszerű szolgáltatásalapú módszert használjon a hitelesítéshez. További információ: Python-alkalmazások hitelesítése az Azure-szolgáltatásokkal. Gondoskodnia kell arról, hogy a szolgáltatásnév megfelelő engedélyekkel rendelkezzen az előfizetésben lévő erőforráscsoportok létrehozásához és listázásához, ha megfelelő szerepkört rendel hozzá az Azure-ban, például az előfizetés közreműködői szerepkörét.
A kódban használt osztályok hivatkozásai
4: A szkriptek futtatása
Ha még nem tette meg, jelentkezzen be az Azure-ba az Azure CLI használatával:
az login
Állítsa be a környezeti változót
AZURE_SUBSCRIPTION_ID
az előfizetés azonosítójához. (Futtathatja az az account show parancsot, és lekérheti az előfizetés azonosítóját aid
kimenetben lévő tulajdonságból):Az előfizetés összes erőforráscsoportjának listázása:
python list_groups.py
Az erőforráscsoport összes erőforrásának listázása:
python list_resources.py
Alapértelmezés szerint a kód felsorolja a "myResourceGroup" erőforrásait. Másik erőforráscsoport használatához állítsa a
RESOURCE_GROUP_NAME
környezeti változót a kívánt csoportnévre.
Hivatkozás: egyenértékű Azure CLI-parancsok
Az alábbi Azure CLI-parancs az előfizetésben lévő erőforráscsoportokat sorolja fel:
az group list
Az alábbi parancs a centralus régióban található "myResourceGroup" erőforrásokat sorolja fel (az location
argumentum egy adott adatközpont azonosításához szükséges):
az resource list --resource-group myResourceGroup --location centralus
Lásd még
- Példa: Erőforráscsoport kiépítése
- Példa: Azure Storage kiépítése
- Példa: Az Azure Storage használata
- Példa: Webalkalmazás kiépítése és kód üzembe helyezése
- Példa: Adatbázis kiépítése és lekérdezése
- Példa: Virtuális gép kiépítése
- 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
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: