REST API-k használata a Chaos Studióval való interakcióhoz
Ha az Azure Chaos Studiót a CI/CD-folyamatokba integrálja, vagy egyszerűen inkább közvetlen API-hívásokat használ az Azure-erőforrások használatához, használhatja a Chaos Studio REST API-ját. A teljes API-referencia az Azure Chaos Studio REST API-referenciájában található. Ez a lap példákat tartalmaz a REST API hatékony használatához, és nem átfogó hivatkozásként szolgál.
Ez a cikk feltételezi, hogy az Azure CLI használatával hajtja végre ezeket a parancsokat, de más standard REST-ügyfelekhez is igazíthatja őket.
A Chaos Studio REST API-jait a következőre használhatja:
- Kísérletek létrehozása, módosítása és törlése
- Kísérletvégrehajtások megtekintése, indítása és leállítása
- Célok megtekintése és kezelése
- Előfizetés regisztrálása és regisztrációjának törlése a Chaos Studio erőforrás-szolgáltatónál
- Az elérhető erőforrás-szolgáltatói műveletek megtekintése.
az cli
A segédprogrammal végrehajthatja ezeket a műveleteket a parancssorból.
Tipp.
Ha részletesebb kimenetet szeretne kapni az Azure CLI-vel, fűzze hozzá --verbose
az egyes parancsok végéhez. Ez a változó több metaadatot ad vissza a parancsok végrehajtásakor, beleértve a x-ms-correlation-request-id
hibakeresést segítő metaadatokat is.
Ezeket a példákat áttekintettük az általánosan elérhető Chaos Studio API-verzióval 2023-11-01
.
Erőforrás-szolgáltatói parancsok
Ez a szakasz felsorolja a Chaos Studio szolgáltatói parancsokat, amelyek segítenek megérteni az erőforrás-szolgáltató állapotát és az elérhető műveleteket.
A Microsoft.Chaos erőforrás-szolgáltató adatainak listázása
Ez olyan információkat jelenít meg, mint például a Chaos erőforrás-szolgáltató elérhető API-verziói és a régió rendelkezésre állása. Az ehhez szükséges legújabb api-version
követelmény eltérhet a api-version
Chaos erőforrás-szolgáltatói műveleteitől.
az rest --method get --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Chaos?api-version={apiVersion}"
A Microsoft.Chaos erőforrás-szolgáltató összes műveletének listázása
az rest --method get --url "https://management.azure.com/providers/Microsoft.Chaos/operations?api-version={apiVersion}"
Célok és képességek
Ezek a műveletek segítenek a rendelkezésre álló célok és képességek megtekintésében, és a célhoz való hozzáadásában.
A régióban elérhető összes céltípus listázása
az rest --method get --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes?api-version={apiVersion}"
A céltípushoz elérhető összes képesség listázása
az rest --method get --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetType}/capabilityTypes?api-version={apiVersion}"
Erőforrás engedélyezése célként
Ha egy erőforrást egy kísérletben szeretne használni, engedélyeznie kell azt célként.
az rest --method put --url "https://management.azure.com/{resourceId}/providers/Microsoft.Chaos/targets/{targetType}?api-version={apiVersion}" --body "{'properties':{}}"
Képességek engedélyezése egy célhoz
Ha egy erőforrás engedélyezve lett célként, meg kell adnia, hogy milyen képességek (a hibáknak megfelelő) engedélyezettek.
az rest --method put --url "https://management.azure.com/{resourceId}/providers/Microsoft.Chaos/targets/{targetType}/capabilities/{capabilityName}?api-version={apiVersion}" --body "{'properties':{}}"
A célhoz engedélyezett képességek megtekintése
Miután engedélyezte a célokat és képességeket, megtekintheti az engedélyezett képességeket. Ez a káoszkísérlet összeállításához hasznos, mivel az egyes hibák paramétersémát is tartalmazza.
az rest --method get --url "https://management.azure.com/{resourceId}/providers/Microsoft.Chaos/targets/{targetType}/capabilities?api-version={apiVersion}"
Kísérletek
Ezek a műveletek segítenek a kísérletek megtekintésében, futtatásában és kezelésében.
Az erőforráscsoport összes kísérletének listázása
az rest --method get --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Chaos/experiments?api-version={apiVersion}"
A kísérlet konfigurációs adatainak lekérése név szerint
az rest --method get --url "https://management.azure.com/{experimentId}?api-version={apiVersion}"
Kísérlet létrehozása vagy frissítése
az rest --method put --url "https://management.azure.com/{experimentId}?api-version={apiVersion}" --body @{experimentName.json}
Megjegyzés: ha hibaüzenetet UnsupportedMediaType
kap, győződjön meg arról, hogy a hivatkozott JSON-fájl érvényes, és próbáljon meg más módon hivatkozni a .json
fájlra. A különböző parancssori értelmezők eltérő fájlhivatkozási módszereket igényelhetnek. Egy másik gyakori szintaxis a --body "@experimentName.json"
.
Kísérlet törlése
az rest --method delete --url "https://management.azure.com/{experimentId}?api-version={apiVersion}"
Kísérlet indítása
az rest --method post --url "https://management.azure.com/{experimentId}/start?api-version={apiVersion}"
Kísérlet összes végrehajtásának lekérése
az rest --method get --url "https://management.azure.com/{experimentId}/executions?api-version={apiVersion}"
Egy adott kísérlet végrehajtásának részleteinek listázása
Ha egy kísérlet sikertelen volt, ez használható a sikertelen hibaüzenetek és meghatározott célok, ágak, lépések vagy műveletek megkeresésére.
az rest --method post --url "https://management.azure.com/{experimentId}/executions/{executionDetailsId}/getExecutionDetails?api-version={apiVersion}"
Kísérlet megszakítása (leállítása)
az rest --method post --url "https://management.azure.com/{experimentId}/cancel?api-version={apiVersion}"
Egyéb hasznos parancsok és tippek
Bár ezek a parancsok nem kifejezetten a Chaos Studio API-t használják, hasznosak lehetnek a Chaos Studio hatékony használatához.
Chaos Studio-erőforrások megtekintése az Azure Resource Graph használatával
Az Azure Resource Graph REST API-val lekérdezheti a Chaos Studióval társított erőforrásokat, például a célokat és képességeket.
az rest --method post --url "https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01" --body "{'query':'chaosresources'}"
Másik lehetőségként használhatja az Azure Resource Graph bővítményét az cli
.
az graph query -q "chaosresources | summarize count() by type"
Ha például az előfizetésében aktív Összes Chaos Studio-cél összegzését szeretné erőforráscsoport szerint használni, a következőt használhatja:
az graph query -q "chaosresources | where type == 'microsoft.chaos/targets' | summarize count() by resourceGroup"
Szűrés és lekérdezés
A többi Azure CLI-parancshoz hasonlóan az Azure CLI-parancsokkal rest
is használhatja a paramétereket és --filter
a --query
paramétereket. Ha például egy adott céltípushoz elérhető képességtípusok táblázatát szeretné megtekinteni, használja a következő parancsot:
az rest --method get --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetType}/capabilityTypes?api-version=2023-11-01" --output table --query 'value[].{name:name, faultType:properties.runtimeProperties.kind, urn:properties.urn}'
Paraméterdefiníciók
Ez a szakasz a dokumentumban használt paramétereket és azok kitöltésének módját ismerteti.
Paraméter neve | Definíció | Keresés | Példa |
---|---|---|---|
{apiVersion} | A megadott parancs végrehajtásakor használni kívánt API verziója | Az API dokumentációjában található | 2023-11-01 |
{experimentId} | A kísérletHez tartozó Azure-erőforrás-azonosító | Megtalálható a Chaos Studio Experiment oldalán vagy a /experiments végpontra irányuló GET-hívással |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Chaos/experiments/my-chaos-experiment |
{experimentName.json} | A káoszkísérlet konfigurációját tartalmazó JSON | A felhasználó által generált | experiment.json (A teljes példafájlhoz tekintse meg a parancssori felület oktatóanyagát ) |
{subscriptionId} | Előfizetés azonosítója, ahol a célerőforrás található | Keresés az Azure Portal Előfizetések lapján vagy a futtatással az account list --output table |
aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e |
{resourceGroupName} | Annak az erőforráscsoportnak a neve, amelyben a célerőforrás található | Keresés az Erőforráscsoportok lapon vagy a az group list --output table |
my-resource-group |
{executionDetailsId} | Kísérlet végrehajtásának végrehajtási azonosítója | Keresés a Chaos Studio Kísérlet lapján vagy a /executions végpontra irányuló GET-hívással |
C69E7FCD-1548-47E5-9DDA-92A5DD60E610 |
{targetType} | A cél típusa a megfelelő erőforráshoz | Keresés a hibaszolgáltatók listájában vagy a végpont get hívása /locations/{locationName}/targetTypes |
Microsoft-VirtualMachine |
{capabilityName} | Egyéni képességerőforrás neve, célerőforrás kiterjesztése | Keresse meg a hibareferenciák dokumentációját vagy a capabilityTypes végpontra irányuló GET-hívást |
Shutdown-1.0 |
{locationName} | Azure-régió egy erőforráshoz vagy regionális végponthoz | A fiók összes lehetséges régiójának megkeresése a következővel: az account list-locations --output table |
eastus |