Chyba a knihovna akcí nástroje Azure Chaos Studio

Tento článek obsahuje seznam chyb, které můžete použít v aplikaci Chaos Studio uspořádané podle příslušného typu prostředku. Informace o tom, které přiřazení rolí se doporučuje pro jednotlivé typy prostředků, najdete v tématu Podporované typy prostředků a přiřazení rolí pro Azure Chaos Studio.

Chyby založené na agentech

Chyby založené na agentech se vloží do virtuálních počítačů Azure nebo instancí škálovací sady virtuálních počítačů instalací agenta Chaos Studio. Možnosti selhání přímé služby pro tyto prostředky najdete níže v tabulkách virtuálních počítačů a škálovacích sad virtuálních počítačů.

Použitelné typy operačního systému Název chyby Použitelné scénáře
Windows, Linux Zatížení procesoru Ztráta výpočetní kapacity, tlak na prostředky
Windows, Linux Proces ukončení Přerušení závislostí
Windows, Linux Odpojení sítě Přerušení sítě
Windows, Linux Latence sítě Snížení výkonu sítě
Windows, Linux Ztráta síťových paketů Problémy se spolehlivostí sítě
Windows, Linux Tlak fyzické paměti Ztráta kapacity paměti, tlak na prostředky
Windows, Linux Zastavit službu Přerušení nebo restartování služby
Windows, Linux Časová změna Problémy se synchronizací času
Windows, Linux Tlak virtuální paměti Ztráta kapacity paměti, tlak na prostředky
Linux Libovolný stres-ng stresor Obecné zátěžové testování systému
Linux Linux DiskIO Pressure Snížení výkonu vstupně-výstupních operací disku
Windows Tlak na diskIO Snížení výkonu vstupně-výstupních operací disku
Windows Selhání DNS Problémy s překladem DNS
Windows Odpojení sítě (přes bránu firewall) Přerušení sítě

App Service

Tato část se vztahuje na Microsoft.Web/sites typ prostředku. Přečtěte si další informace o službě App Service.

Název chyby Použitelné scénáře
Zastavení služby App Service Přerušení služeb

Nastavení automatického škálování

Tato část se vztahuje na Microsoft.Insights/autoscaleSettings typ prostředku. Přečtěte si další informace o automatickém škálování Nastavení.

Název chyby Použitelné scénáře
Zákaz automatického škálování Ztráta výpočetní kapacity (při použití s vypnutím VMSS)

Azure Kubernetes Service

Tato část se vztahuje na Microsoft.ContainerService/managedClusters typ prostředku. Přečtěte si další informace o službě Azure Kubernetes Service.

Název chyby Použitelné scénáře
AKS Chaos Mesh DNS Chaos Problémy s překladem DNS
AKS Chaos Mesh HTTP Chaos Přerušení sítě
AKS Chaos Mesh IO Chaos Snížení nebo tlak disku
Chaos jádra AKS Chaos Mesh Přerušení jádra
AKS Chaos Mesh Network Chaos Přerušení sítě
AKS Chaos Mesh Pod Chaos Přerušení kontejneru
AKS Chaos Mesh Stress Chaos Zátěžové testování systému
AKS Chaos Mesh Time Chaos Problémy se synchronizací času

Cloud Services (Classic)

Tato část se vztahuje na Microsoft.ClassicCompute/domainNames typ prostředku. Další informace o cloudových službách (Classic)

Název chyby Použitelné scénáře
Vypnutí cloudové služby Ztráta výpočetních prostředků

Clusterovaná mezipaměť pro Redis

Tato část se vztahuje na Microsoft.Cache/redis typ prostředku. Přečtěte si další informace o clusterované mezipaměti pro Redis.

Název chyby Použitelné scénáře
Azure Cache for Redis (restartování) Přerušení závislostí (mezipaměti)

Cosmos DB

Tato část se vztahuje na Microsoft.DocumentDB/databaseAccounts typ prostředku. Přečtěte si další informace o cosmos DB.

Název chyby Použitelné scénáře
Převzetí služeb při selhání služby Cosmos DB Převzetí služeb při selhání databáze

Event Hubs

Tato část se vztahuje na Microsoft.EventHub/namespaces typ prostředku. Přečtěte si další informace o službě Event Hubs.

Název chyby Použitelné scénáře
Změna stavu centra událostí Chybná konfigurace nebo přerušení infrastruktury zasílání zpráv

Key Vault

Tato část se vztahuje na Microsoft.KeyVault/vaults typ prostředku. Přečtěte si další informace o službě Key Vault.

Název chyby Použitelné scénáře
Key Vault: Odepřít přístup Odepření certifikátu
Key Vault: Zakázání certifikátu Přerušení certifikátu
Key Vault: Zvýšení verze certifikátu Zvýšení verze certifikátu
Key Vault: Aktualizace zásad certifikátu Změny zásad certifikátu / chybné konfigurace

Network Security Groups (Skupiny zabezpečení sítě)

Tato část se vztahuje na Microsoft.Network/networkSecurityGroups typ prostředku. Přečtěte si další informace o skupinách zabezpečení sítě.

Název chyby Použitelné scénáře
Pravidlo zabezpečení NSG Přerušení sítě (pro mnoho služeb Azure)

Service Bus

Tato část se vztahuje na Microsoft.ServiceBus/namespaces typ prostředku. Přečtěte si další informace o službě Service Bus.

Název chyby Použitelné scénáře
Změna stavu fronty Chybná konfigurace nebo přerušení infrastruktury zasílání zpráv
Změna stavu předplatného Chybná konfigurace nebo přerušení infrastruktury zasílání zpráv
Změnit stav tématu Chybná konfigurace nebo přerušení infrastruktury zasílání zpráv

Virtual Machines (přímé služby)

Tato část se vztahuje na Microsoft.Compute/virtualMachines typ prostředku. Přečtěte si další informace o službě Virtual Machines.

Název chyby Použitelné scénáře
Opětovné nasazení virtuálního počítače Přerušení výpočetních prostředků, události údržby
Vypnutí virtuálního počítače Ztráta nebo přerušení výpočetních prostředků

Škálovací sada virtuálních počítačů

Tato část se vztahuje na Microsoft.Compute/virtualMachineScaleSets typ prostředku. Přečtěte si další informace o škálovacích sadách virtuálních počítačů.

Název chyby Použitelné scénáře
Vypnutí VMSS Ztráta nebo přerušení výpočetních prostředků
Vypnutí VMSS (2.0) Ztráta nebo přerušení výpočetních prostředků (podle zóny dostupnosti)

Akce orchestrace

Tyto akce jsou stavebními bloky pro vytváření efektivních experimentů. Používejte je v kombinaci s jinými chybami, jako je spuštění zátěžového testu při paralelním vypínání výpočetních instancí v zóně.

Kategorie akce Název chyby
Načítání Spuštění zátěžového testu (Zátěžové testování Azure)
Načítání Zastavení zátěžového testu (Zátěžové testování Azure)
Časové zpoždění Delay

Podrobnosti: Chyby založené na agentech

Odpojení sítě

Vlastnost Hodnota
Název funkce NetworkDisconnect-1.1
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux.
Popis Blokuje odchozí síťový provoz pro zadaný rozsah portů a síťový blok. Musí být zadané alespoň jedno pole destinationFilter nebo inboundDestinationFilter.
Požadavky Windows: Agent musí běžet jako správce, což se ve výchozím nastavení stane, pokud je nainstalované jako rozšíření virtuálního počítače.
Linux: Balíček tc (Řízení provozu) se používá pro chyby sítě. Pokud ještě není nainstalovaný, agent se ho automaticky pokusí nainstalovat z výchozího správce balíčků.
Urno urn:csci:microsoft:agent:networkDisconnect/1.1
Parametry (klíč, hodnota)
destinationFilters Pole JSON s oddělovači filtrů paketů definující odchozí pakety, které se mají cílit. Maximálně 16.
inboundDestinationFilters Pole JSON s oddělovači filtrů paketů definující příchozí pakety, které se mají cílit. Maximálně 16.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Parametry destinationFilters a inboundDestinationFilters používají následující pole filtrů paketů.

Vlastnost Hodnota
adresa IP adresa, která označuje začátek rozsahu IP adres.
subnetMask Maska podsítě pro rozsah IP adres.
portLow (Volitelné) Číslo portu počátečního rozsahu portů
portHigh (Volitelné) Číslo portu konce rozsahu portů

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:networkDisconnect/1.1",
      "parameters": [
        {
          "key": "destinationFilters",
          "value": "[ { \"address\": \"23.45.229.97\", \"subnetMask\": \"255.255.255.224\", \"portLow\": \"5000\", \"portHigh\": \"5200\" } ]"
        },
        {
          "key": "inboundDestinationFilters",
          "value": "[ { \"address\": \"23.45.229.97\", \"subnetMask\": \"255.255.255.224\", \"portLow\": \"5000\", \"portHigh\": \"5200\" } ]"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyby sítě založené na agentech aktuálně podporují pouze adresy IPv4.
  • Chyba odpojení sítě má vliv jenom na nová připojení. Stávající aktivní připojení nadále zůstávají zachována. Službu nebo proces můžete restartovat a vynutit přerušení připojení.
  • Při spuštění ve Windows funguje chyba odpojení sítě pouze s pakety TCP nebo UDP.

Odpojení sítě (přes bránu firewall)

Vlastnost Hodnota
Název funkce NetworkDisconnectViaFirewall-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows
Popis Použije pravidlo brány Windows Firewall pro blokování odchozího provozu pro zadaný rozsah portů a síťový blok.
Požadavky Agent musí běžet jako správce. Pokud je agent nainstalovaný jako rozšíření virtuálního počítače, spustí se ve výchozím nastavení jako správce.
Urno urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0
Parametry (klíč, hodnota)
destinationFilters Pole JSON s oddělovači filtrů paketů definujících odchozí pakety, které se mají cílit na injektáž chyb.
adresa IP adresa, která označuje začátek rozsahu IP adres.
subnetMask Maska podsítě pro rozsah IP adres.
portLow (Volitelné) Číslo portu počátečního rozsahu portů
portHigh (Volitelné) Číslo portu konce rozsahu portů
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0",
      "parameters": [
        {
          "key": "destinationFilters",
          "value": "[ { \"Address\": \"23.45.229.97\", \"SubnetMask\": \"255.255.255.224\", \"PortLow\": \"5000\", \"PortHigh\": \"5200\" } ]"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyby sítě založené na agentech aktuálně podporují pouze adresy IPv4.

Latence sítě

Vlastnost Hodnota
Název funkce NetworkLatency-1.1
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux (jenom odchozí provoz)
Popis Zvyšuje latenci sítě pro zadaný rozsah portů a síťový blok. Musí být zadané alespoň jedno pole destinationFilter nebo inboundDestinationFilter.
Požadavky Windows: Agent musí běžet jako správce, což se ve výchozím nastavení stane, pokud je nainstalované jako rozšíření virtuálního počítače.
Linux: Balíček tc (Řízení provozu) se používá pro chyby sítě. Pokud ještě není nainstalovaný, agent se ho automaticky pokusí nainstalovat z výchozího správce balíčků.
Urno urn:csci:microsoft:agent:networkLatency/1.1
Parametry (klíč, hodnota)
latencyInMilliseconds Latence, která se má použít v milisekundách
destinationFilters Pole JSON s oddělovači filtrů paketů definující odchozí pakety, které se mají cílit. Maximálně 16.
inboundDestinationFilters Pole JSON s oddělovači filtrů paketů definující příchozí pakety, které se mají cílit. Maximálně 16.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Parametry destinationFilters a inboundDestinationFilters používají následující pole filtrů paketů.

Vlastnost Hodnota
adresa IP adresa, která označuje začátek rozsahu IP adres.
subnetMask Maska podsítě pro rozsah IP adres.
portLow (Volitelné) Číslo portu počátečního rozsahu portů
portHigh (Volitelné) Číslo portu konce rozsahu portů

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:networkLatency/1.1",
      "parameters": [
        {
          "key": "destinationFilters",
          "value": "[ { \"address\": \"23.45.229.97\", \"subnetMask\": \"255.255.255.224\", \"portLow\": \"5000\", \"portHigh\": \"5200\" } ]"
        },
        {
          "key": "inboundDestinationFilters",
          "value": "[ { \"address\": \"23.45.229.97\", \"subnetMask\": \"255.255.255.224\", \"portLow\": \"5000\", \"portHigh\": \"5200\" } ]"
        },
        {
          "key": "latencyInMilliseconds",
          "value": "100",
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyby sítě založené na agentech aktuálně podporují pouze adresy IPv4.
  • Při spuštění v Linuxu může chyba latence sítě ovlivnit pouze odchozí provoz, nikoli příchozí provoz. Chyba může mít vliv na příchozí i odchozí provoz v prostředích Windows (přes parametryinboundDestinationFilters).destinationFilters
  • Při spouštění ve Windows v současné době chyba latence sítě funguje pouze s pakety TCP nebo UDP.

Ztráta síťových paketů

Vlastnost Hodnota
Název funkce NetworkPacketLoss-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux
Popis Zavádí ztrátu paketů pro odchozí provoz zadanou rychlostí mezi 0,0 (bez ztráty paketů) a 1.0 (všechny pakety ztraceny). Tato akce může pomoct simulovat scénáře, jako jsou zahlcení sítě nebo problémy s hardwarem sítě.
Požadavky Windows: Agent musí běžet jako správce, což se ve výchozím nastavení stane, pokud je nainstalované jako rozšíření virtuálního počítače.
Linux: Balíček tc (Řízení provozu) se používá pro chyby sítě. Pokud ještě není nainstalovaný, agent se ho automaticky pokusí nainstalovat z výchozího správce balíčků.
Urno urn:csci:microsoft:agent:networkPacketLoss/1.0
Parametry (klíč, hodnota)
packetLossRate Rychlost ztráty paketů odpovídajících cílovým filtrům v rozsahu od 0,0 do 1,0.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.
destinationFilters Pole JSON s oddělovači filtrů paketů (parametry níže), které definují odchozí pakety určené pro injektáž chyb. Maximálně tři.
adresa IP adresa, která označuje začátek rozsahu IP adres.
subnetMask Maska podsítě pro rozsah IP adres.
portLow (Volitelné) Číslo portu počátečního rozsahu portů
portHigh (Volitelné) Číslo portu konce rozsahu portů

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:networkPacketLoss/1.0",
      "parameters": [
            {
                "key": "destinationFilters",
                "value": "[{\"address\":\"23.45.229.97\",\"subnetMask\":\"255.255.255.224\",\"portLow\":5000,\"portHigh\":5200}]"
            },
            {
                "key": "packetLossRate",
                "value": "0.5"
            },
            {
                "key": "virtualMachineScaleSetInstances",
                "value": "[0,1,2]"
            }
        ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyby sítě založené na agentech aktuálně podporují pouze adresy IPv4.
  • Při spuštění ve Windows v současné době chyba ztráty síťových paketů funguje pouze s pakety TCP nebo UDP.

Selhání DNS

Vlastnost Hodnota
Název funkce DnsFailure-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows
Popis Nahradí odpovědi na požadavky na vyhledávání DNS zadaným kódem chyby. Požadavky na vyhledávání DNS, které jsou nahrazeny, musí:
  • Pochází z virtuálního počítače.
  • Odpovídá definovaným parametrům chyby.
Tato chyba nemá vliv na vyhledávání DNS, která není vytvořená klientem DNS systému Windows.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:dnsFailure/1.0
Parametry (klíč, hodnota)
hostitelé Pole JSON s oddělovači názvů hostitelů kvůli selhání požadavku na vyhledávání DNS

Tato vlastnost přijímá zástupné cardy (*), ale pouze pro první subdoménu v adrese a vztahuje se pouze na subdoménu, pro kterou jsou zadané. Příklad:
  • *.microsoft.com se podporuje.
  • subdomain.*.microsoft se nepodporuje.
  • *.microsoft.com nefunguje u více subdomén v adrese, jako je například subdomain1.subdomain2.microsoft.com.
dnsFailureReturnCode Kód chyby DNS, který se má vrátit klientovi pro selhání vyhledávání (FormErr, ServFail, NXDomain, NotImp, Odmítnuto, XDomain, YXRRSet, NXRRSet, NotAuth, NotZone). Další informace o návratových kódech DNS najdete na webu IANA.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:dnsFailure/1.0",
      "parameters": [
        {
          "key": "hosts",
          "value": "[ \"www.bing.com\", \"msdn.microsoft.com\" ]"
        },
        {
          "key": "dnsFailureReturnCode",
          "value": "ServFail"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyba selhání DNS vyžaduje Windows 2019 RS5 nebo novější.
  • Mezipaměť DNS se během doby trvání chyby ignoruje pro názvy hostitelů definované v chybě.

Zatížení procesoru

Vlastnost Hodnota
Název funkce CPUPressure-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux.
Popis Přidá tlak procesoru až na zadanou hodnotu na virtuálním počítači, ve kterém se tato chyba vloží během akce selhání. Na konci doby trvání se odebere umělý tlak procesoru nebo pokud je experiment zrušen. V systému Windows se čítač výkonu nástroje % procesoru používá při spuštění chyby k určení aktuálního procenta procesoru, který se odečte od pressureLevel definované v chybě, aby % Procesor Utility dosáhl přibližně pressureLevel definovaného v parametrech selhání.
Požadavky Linux: Je třeba nainstalovat nástroj stress-ng . Instalace probíhá automaticky jako součást instalace agenta pomocí výchozího správce balíčků v několika operačních systémech, včetně Debianu (jako Ubuntu), Red Hat Enterprise Linux a OpenSUSE. V případě jiných distribucí, včetně Azure Linuxu, musíte zátěž nainstalovat ručně. Další informace najdete v upstreamovém úložišti projektu.
Windows: Žádné.
Urno urn:csci:microsoft:agent:cpuPressure/1.0
Parametry (klíč, hodnota)
pressureLevel Celé číslo mezi 1 a 99, které udává, kolik zatížení procesoru (%) se na virtuální počítač použije z hlediska % využití procesoru.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:cpuPressure/1.0",
      "parameters": [
        {
          "key": "pressureLevel",
          "value": "95"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

Známé problémy v Linuxu:

  • Stresový efekt nemusí být správně ukončen, pokud AzureChaosAgent je neočekávaně ukončen.

Tlak fyzické paměti

Vlastnost Hodnota
Název funkce PhysicalMemoryPressure-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux.
Popis Přidá zatížení fyzické paměti až do zadané hodnoty na virtuálním počítači, ve kterém se tato chyba vloží během akce selhání. Na konci doby trvání se odebere umělý tlak fyzické paměti nebo pokud je experiment zrušen.
Požadavky Linux: Je třeba nainstalovat nástroj stress-ng . Instalace probíhá automaticky jako součást instalace agenta pomocí výchozího správce balíčků v několika operačních systémech, včetně Debianu (jako Ubuntu), Red Hat Enterprise Linux a OpenSUSE. V případě jiných distribucí, včetně Azure Linuxu, musíte zátěž nainstalovat ručně. Další informace najdete v upstreamovém úložišti projektu.
Windows: Žádné.
Urno urn:csci:microsoft:agent:physicalMemoryPressure/1.0
Parametry (klíč, hodnota)
pressureLevel Celé číslo mezi 1 a 99, které udává, kolik fyzického zatížení paměti (%) se na virtuální počítač použije.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:physicalMemoryPressure/1.0",
      "parameters": [
        {
          "key": "pressureLevel",
          "value": "95"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

V současné době agent Windows nezmenšuje zatížení paměti, když jiné aplikace zvyšují využití paměti. Pokud celkové využití paměti překročí 100 %, může dojít k chybovému ukončení agenta Windows.

Tlak virtuální paměti

Vlastnost Hodnota
Název funkce VirtualMemoryPressure-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows
Popis Přidá tlak virtuální paměti až na zadanou hodnotu na virtuálním počítači, ve kterém se tato chyba vloží během akce selhání. Tlak na umělou virtuální paměť se na konci doby trvání odebere nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:virtualMemoryPressure/1.0
Parametry (klíč, hodnota)
pressureLevel Celé číslo mezi 1 a 99, které udává, kolik fyzického zatížení paměti (%) se na virtuální počítač použije.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:virtualMemoryPressure/1.0",
      "parameters": [
        {
          "key": "pressureLevel",
          "value": "95"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Tlak vstupně-výstupních operací disku

Vlastnost Hodnota
Název funkce DiskIOPressure-1.1
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows
Popis Pomocí nástroje diskspd přidá do virtuálního počítače tlak na disk. Tlak se ve výchozím nastavení přidá na primární disk nebo disk zadaný parametrem targetTempDirectory. Tato chyba má pět různých režimů provádění. Na konci doby trvání se odebere umělý tlak disku nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:diskIOPressure/1.1
Parametry (klíč, hodnota)
pressureMode Přednastavený režim tlaku disku, který se má přidat do primárního úložiště virtuálního počítače. Musí to být jedna z PressureModes následujících tabulek.
targetTempDirectory (Volitelné) Adresář, který se má použít pro použití tlaku na disk. Například D:/Temp. Pokud parametr není zahrnutý, přidá se tlak na primární disk.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Režimy tlaku

PressureMode Popis
PremiumStorageP10IOPS numberOfThreads = 1
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 2
percentOfWriteActions = 50
Omezování úrovně PremiumStorageP10
numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50
PremiumStorageP50IOPS numberOfThreads = 32
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 32
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50
Omezování úrovně PremiumStorageP50 numberOfThreads = 2
randomBlockSizeInKB = 1024
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 1024
sizeOfWriteBufferInKB = 1024
fileSizeInGB = 20
percentOfWriteActions = 50
Výchozí numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:diskIOPressure/1.1",
      "parameters": [
        {
          "key": "pressureMode",
          "value": "PremiumStorageP10IOPS"
        },
        {
          "key": "targetTempDirectory",
          "value": "C:/temp/"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Zatížení vstupně-výstupních operací disku s Linuxem

Vlastnost Hodnota
Název funkce LinuxDiskIOPressure-1.1
Typ cíle Microsoft-Agent
Podporované typy operačního systému Linux
Popis Používá stres-ng k použití tlaku na disk. Vytvoří se jeden nebo více pracovních procesů, které provádějí vstupně-výstupní procesy s dočasnými soubory. Tlak se ve výchozím nastavení přidá na primární disk nebo disk zadaný parametrem targetTempDirectory. Informace o tom, jak se tlak aplikuje, najdete v článku o stres-ng .
Požadavky Linux: Je třeba nainstalovat nástroj stress-ng . Instalace probíhá automaticky jako součást instalace agenta pomocí výchozího správce balíčků v několika operačních systémech, včetně Debianu (jako Ubuntu), Red Hat Enterprise Linux a OpenSUSE. V případě jiných distribucí, včetně Azure Linuxu, musíte zátěž nainstalovat ručně. Další informace najdete v upstreamovém úložišti projektu.
Urno urn:csci:microsoft:agent:linuxDiskIOPressure/1.1
Parametry (klíč, hodnota)
workerCount Počet spuštěných pracovních procesů Nastavení workerCount 0 vygeneruje tolik pracovních procesů, kolik je počet procesorů.
fileSizePerWorker Velikost dočasného souboru, se kterým pracovní proces provádí vstupně-výstupní operace. Celé číslo plus jednotka v bajtech (b), kilobajtů (k), megabajty (m) nebo gigabajty (g) (například 4m 4 megabajty a 256g 256 gigabajtů).
blockSize Velikost bloku, která se má použít pro vstupně-výstupní operace disku, větší než 1 bajt a menší než 4 megabajty (maximální hodnota je 4095k). Celé číslo plus jednotka v bajtech, kilobajtech nebo megabajtech (například 512k 512 kilobajtů).
targetTempDirectory (Volitelné) Adresář, který se má použít pro použití tlaku na disk. Například /tmp/. Pokud parametr není zahrnutý, přidá se tlak na primární disk.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

Tyto ukázkové hodnoty při testování na virtuálním Standard_D2s_v3 počítači s LRS ssd úrovně Premium vytvořily přibližně 100% zatížení disku. Velký souborSizePerWorker a menší blokSize pomáhají plně zdůraznit disk.

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:linuxDiskIOPressure/1.1",
      "parameters": [
        {
          "key": "workerCount",
          "value": "4"
        },
        {
          "key": "fileSizePerWorker",
          "value": "2g"
        },
        {
          "key": "blockSize",
          "value": "64k"
        },
        {
          "key": "targetTempDirectory",
          "value": "/tmp/"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Zastavit službu

Vlastnost Hodnota
Název funkce StopService-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux.
Popis Během této chyby zastaví službu systému Windows nebo systémovou službu s Linuxem. Restartuje ho na konci doby trvání nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:stopService/1.0
Parametry (klíč, hodnota)
Název_služby Název služby systému Windows nebo linuxové systémové služby, kterou chcete zastavit.
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:stopService/1.0",
      "parameters": [
        {
          "key": "serviceName",
          "value": "nvagent"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Windows: Zobrazované názvy služeb se nepodporují. Pomocí sc.exe query příkazového řádku můžete prozkoumat názvy služeb.
  • Linux: Jiné typy služeb kromě systemd, jako je sysvinit, se nepodporují.

Proces ukončení

Vlastnost Hodnota
Název funkce KillProcess-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows, Linux.
Popis Ukonče všechny spuštěné instance procesu, které odpovídají názvu procesu odeslanému v parametrech chyby. Během doby trvání nastavené pro akci selhání se proces opakovaně ukončí na základě hodnoty zadaného intervalu ukončení. Tato chyba je destruktivní chyba, kdy správce systému musí proces ručně obnovit, pokud je pro něj nakonfigurované samoopravení.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:killProcess/1.0
Parametry (klíč, hodnota)
processName Název procesu, který se má průběžně ukončovat (bez .exe). Proces nemusí být spuštěn, když se spustí chyba.
killIntervalInMilliseconds Doba, po kterou chyba čeká mezi po sobě jdoucími pokusy o ukončení v milisekundách
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:killProcess/1.0",
      "parameters": [
        {
          "key": "processName",
          "value": "myapp"
        },
        {
          "key": "killIntervalInMilliseconds",
          "value": "1000"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Časová změna

Vlastnost Hodnota
Název funkce TimeChange-1.0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Windows
Popis Změní systémový čas virtuálního počítače a resetuje čas na konci experimentu nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:agent:timeChange/1.0
Parametry (klíč, hodnota)
data a času. Řetězec DateTime ve formátu ISO8601. Pokud YYYY-MM-DD hodnoty chybí, po spuštění experimentu se ve výchozím nastavení nastaví na aktuální den. Pokud chybí hodnoty Thh:mm:ss, výchozí hodnota je 12:00:00.00. Pokud je zadán 2místný rok (YY), převede se na 4místný rok (YYYY) na základě aktuálního století. Pokud časové pásmo <Z> chybí, výchozí posun je místní časové pásmo. <Z> musí vždy obsahovat symbol znaménka (záporné nebo kladné).
virtualMachineScaleSetInstances Pole ID instancí, když tuto chybu použijete u škálovací sady virtuálních počítačů. Vyžaduje se pro škálovací sady virtuálních počítačů v jednotném režimu orchestrace. Přečtěte si další informace o ID instancí.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:timeChange/1.0",
      "parameters": [
        {
          "key": "dateTime",
          "value": "2038-01-01T03:14:07"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Libovolný stres-ng stresor

Vlastnost Hodnota
Název funkce StressNg-1,0
Typ cíle Microsoft-Agent
Podporované typy operačního systému Linux
Popis Spustí libovolný příkaz stress-ng předáním argumentů přímo do stress-ng. Užitečné, když jedna z předdefinovaných chyb pro stres-ng nevyhovuje vašim potřebám.
Požadavky Linux: Je třeba nainstalovat nástroj stress-ng . Instalace probíhá automaticky jako součást instalace agenta pomocí výchozího správce balíčků v několika operačních systémech, včetně Debianu (jako Ubuntu), Red Hat Enterprise Linux a OpenSUSE. V případě jiných distribucí, včetně Azure Linuxu, musíte zátěž nainstalovat ručně. Další informace najdete v upstreamovém úložišti projektu.
Urno urn:csci:microsoft:agent:stressNg/1.0
Parametry (klíč, hodnota)
stressNgArguments Jeden nebo více argumentů, které se mají předat procesu stress-ng. Informace o možných argumentech stres-ng naleznete v článku stress-ng . POZNÁMKA: Nezahrnujte argument -t, protože způsobí chybu. Délka experimentu je definována přímo v uživatelském rozhraní experimentu chaosu Azure, NE ve stressNgArguments.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:stressNg/1.0",
      "parameters": [
        {
          "key": "stressNgArguments",
          "value": "--random 64"
        },
        {
          "key": "virtualMachineScaleSetInstances",
          "value": "[0,1,2]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Podrobnosti: Chyby přímé služby

Zastavení služby App Service

Vlastnost Hodnota
Název funkce Stop-1.0
Typ cíle Microsoft-AppService
Popis Zastaví cílové aplikace App Service a pak je restartuje na konci doby trvání chyby. Tato akce se vztahuje na prostředky typu Microsoft.Web/sites, včetně App Service, API Apps, Mobile Apps a Azure Functions.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:appService:stop/1.0
Typ chyby Nepřetržité:
Parametry (klíč, hodnota) Nezaokrouhlovat.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:appService:stop/1.0",
      "duration": "PT10M",
      "parameters":[],
      "selectorid": "myResources"
    }
  ]
}

Zákaz automatického škálování

Vlastnost Hodnota
Název funkce DisaleAutoscale
Typ cíle Automatické škálování Microsoftu Nastavení
Popis Zakáže službu automatického škálování. Pokud je automatické škálování zakázané, prostředky, jako jsou škálovací sady virtuálních počítačů, webové aplikace, service bus a další , se automaticky nepřidají ani neodeberou na základě zatížení aplikace.
Požadavky Prostředek automatického škálování, který je na prostředku povolený, musí být onboardován do chaos studia.
Urno urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0
Typ chyby Nepřetržité:
Parametry (klíč, hodnota)
enableOnComplete Logický. Nakonfiguruje, jestli je automatické škálování po dokončení akce znovu povoleno. Výchozí hodnota je true.

Ukázkový JSON

{
  "name": "BranchOne", 
  "actions": [ 
    { 
    "type": "continuous", 
    "name": "urn:csci:microsoft:autoscaleSetting:disableAutoscale/1.0", 
    "parameters": [ 
     { 
      "key": "enableOnComplete", 
      "value": "true" 
      }                 
  ],                                 
   "duration": "PT2M", 
   "selectorId": "Selector1",           
  } 
 ] 
} 

AKS Chaos Mesh Network Chaos

Vlastnost Hodnota
Název funkce NetworkChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí selhání sítě dostupné prostřednictvím služby Chaos Mesh pro váš cluster Azure Kubernetes Service (AKS). Užitečné při opětovném vytváření incidentů AKS, které jsou důsledkem výpadků sítě, zpoždění, duplicit, ztráty a poškození.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá druh NetworkChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"action\":\"delay\",\"mode\":\"one\",\"selector\":{\"namespaces\":[\"default\"]},\"delay\":{\"latency\":\"200ms\",\"correlation\":\"100\",\"jitter\":\"0ms\"}}}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh Pod Chaos

Vlastnost Hodnota
Název funkce PodChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí, že chyba podu dostupná prostřednictvím služby Chaos Mesh se spustí v clusteru AKS. Užitečné při opětovném vytváření incidentů AKS, které jsou výsledkem selhání podů nebo problémů s kontejnery.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace Chaos Mesh ve formátu JSON, která používá druh PodChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"action\":\"pod-failure\",\"mode\":\"all\",\"selector\":{\"namespaces\":[\"default\"]}}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh Stress Chaos

Vlastnost Hodnota
Název funkce StressChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí chybu stresu dostupnou prostřednictvím služby Chaos Mesh , která se spustí v clusteru AKS. Užitečné při opětovném vytváření incidentů AKS kvůli zdůraznění kolekce podů, například kvůli vysoké spotřebě procesoru nebo paměti.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá druh StressChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"mode\":\"one\",\"selector\":{\"namespaces\":[\"default\"]},\"stressors\":{\"cpu\":{\"workers\":1,\"load\":50},\"memory\":{\"workers\":4,\"size\":\"256MB\"}}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh IO Chaos

Vlastnost Hodnota
Název funkce IOChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí selhání vstupně-výstupních operací, která je k dispozici prostřednictvím služby Chaos Mesh , aby se spustila na vašem clusteru AKS. Užitečné při opětovném vytváření incidentů AKS z důvodu zpoždění vstupně-výstupních operací a selhání čtení a zápisu při použití volání vstupně-výstupních systémových volání, jako openje , reada write.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá typ IOChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"action\":\"latency\",\"mode\":\"one\",\"selector\":{\"app\":\"etcd\"},\"volumePath\":\"\/var\/run\/etcd\",\"path\":\"\/var\/run\/etcd\/**\/*\",\"delay\":\"100ms\",\"percent\":50}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh Time Chaos

Vlastnost Hodnota
Název funkce TimeChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí změnu systémových hodin v clusteru AKS pomocí služby Chaos Mesh. Užitečné při opětovném vytváření incidentů AKS, které vyplývají z distribuovaných systémů, které se nesynchronizují, chybějící/nesprávný přestupný rok/přestupná druhá logika a další.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá druh TimeChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"mode\":\"one\",\"selector\":{\"namespaces\":[\"default\"]},\"timeOffset\":\"-10m100ns\"}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

Chaos jádra AKS Chaos Mesh

Vlastnost Hodnota
Název funkce KernelChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí, že se v clusteru AKS spustí chyba jádra dostupná prostřednictvím služby Chaos Mesh . Užitečné při opětovném vytváření incidentů AKS kvůli chybám na úrovni jádra Linuxu, jako je selhání připojení nebo nepřidělování paměti.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace Chaos Mesh ve formátu JSON, která používá druh KernelChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"mode\":\"one\",\"selector\":{\"namespaces\":[\"default\"]},\"failKernRequest\":{\"callchain\":[{\"funcname\":\"__x64_sys_mount\"}],\"failtype\":0}}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh HTTP Chaos

Vlastnost Hodnota
Název funkce HTTPChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí, že chyba HTTP dostupná prostřednictvím služby Chaos Mesh se spustí v clusteru AKS. Užitečné při opětovném vytváření incidentů kvůli selháním zpracování požadavků HTTP a odpovědí, jako jsou zpožděné nebo nesprávné odpovědi.
Požadavky Cluster AKS musí mít nasazenou chaosovou síť.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá typ HTTPChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"mode\":\"all\",\"selector\":{\"namespaces\":[\"default\"]},\"target\":\"Request\",\"port\":80,\"method\":\"GET\",\"path\":\"/api\",\"abort\":true}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

AKS Chaos Mesh DNS Chaos

Vlastnost Hodnota
Název funkce DNSChaos-2.1
Typ cíle Microsoft-AzureKubernetesServiceChaosMesh
Podporované typy operačního systému fondu uzlů Linux
Popis Způsobí, že chyba DNS dostupná prostřednictvím služby Chaos Mesh se spustí v clusteru AKS. Užitečné při opětovném vytváření incidentů kvůli selháním DNS.
Požadavky Cluster AKS musí mít nasazenou službu Chaos Mesh a musí být nainstalovaná služba DNS.
Urno urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1
Parametry (klíč, hodnota)
jsonSpec Specifikace služby Chaos Mesh ve formátu JSON, která používá druh DNSChaos. Pomocí převaděče YAML-to-JSON, jako je převod YAML na JSON , můžete převést YAML Chaos Mesh na JSON a minifikovat ho. Použití jednoduchých uvozovek ve formátu JSON nebo uvozovek uvozovek se znakem zpětného lomítka. Zahrnout pouze YAML do jsonSpec vlastnosti. Nezahrnujte informace, jako jsou metadata a druh. Určení doby trvání v rámci jsonSpec není nutné, ale pokud je k dispozici, použije se.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1",
      "parameters": [
        {
            "key": "jsonSpec",
            "value": "{\"action\":\"random\",\"mode\":\"all\",\"patterns\":[\"google.com\",\"chaos-mesh.*\",\"github.?om\"],\"selector\":{\"namespaces\":[\"default\"]}}"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

Vypnutí cloudových služeb (Classic)

Vlastnost Hodnota
Název funkce Vypnutí-1.0
Typ cíle Microsoft-DomainName
Popis Zastaví nasazení během chyby. Restartuje nasazení na konci doby trvání chyby nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:domainName:shutdown/1.0
Typ chyby Nepřetržité:
Parametry Žádná

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:domainName:shutdown/1.0",
      "parameters": [],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Azure Cache for Redis (restartování)

Vlastnost Hodnota
Název funkce Reboot-1.0
Typ cíle Microsoft-AzureClusteredCacheForRedis
Popis Způsobí, že v cíli dojde k vynucené operaci restartování, aby simuluje krátký výpadek.
Požadavky
Urno urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
rebootType Typy uzlů, ve kterých se má provést akce restartování, které lze zadat jako PrimaryNode, SecondaryNode nebo AllNodes.
shardId ID horizontálního oddílu, který se má restartovat. Platí jenom pro mezipaměti úrovně Premium.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0",
      "parameters": [
        {
          "key": "RebootType",
          "value": "AllNodes"
        },
        {
          "key": "ShardId",
          "value": "0"
        }
      ],
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Chyba restartování způsobí vynucené restartování, aby lépe simuluje událost výpadku, což znamená, že může dojít ke ztrátě dat.
  • Chyba restartování je samostatný typ chyby. Na rozdíl od průběžných chyb se jedná o jednorázovou akci a nemá žádnou dobu trvání.

Převzetí služeb při selhání služby Cosmos DB

Vlastnost Hodnota
Název funkce Převzetí služeb při selhání –1.0
Typ cíle Microsoft-CosmosDB
Popis Způsobí, že účet služby Azure Cosmos DB s jednou oblastí zápisu převezme služby při selhání do zadané oblasti čtení a simuluje výpadek oblasti zápisu.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:cosmosDB:failover/1.0
Parametry (klíč, hodnota)
readRegion Oblast čtení, která by se měla zvýšit na oblast zápisu během převzetí služeb při selhání, East US 2například .

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:cosmosDB:failover/1.0",
      "parameters": [
        {
          "key": "readRegion",
          "value": "West US 2"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Změna stavu centra událostí

Vlastnost Hodnota
Název funkce ChangeEventHubState-1.0
Typ cíle Microsoft-EventHub
Popis Nastaví jednotlivá centra událostí na požadovaný stav v rámci oboru názvů služby Azure Event Hubs. Můžete ovlivnit konkrétní názvy centra událostí nebo použít "*" k ovlivnění všech v rámci oboru názvů. Tato akce může pomoct otestovat infrastrukturu zasílání zpráv pro scénáře údržby nebo selhání. Jedná se o samostatnou chybu, takže entita se automaticky nevrátí do počátečního stavu.
Požadavky Obor názvů služby Azure Event Hubs s alespoň jednou entitou centra událostí.
Urno urn:csci:microsoft:eventHub:changeEventHubState/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
desiredState Požadovaný stav cílových center událostí. Možné stavy jsou Aktivní, Zakázané a SendDisabled.
eventHubs Čárkami oddělený seznam názvů centra událostí v rámci cílového oboru názvů. K ovlivnění všech entit v oboru názvů použijte *.

Ukázkový JSON

{
  "name": "Branch1",
    "actions": [
        {
            "selectorId": "Selector1",
            "type": "discrete",
            "parameters": [
                {
                    "key": "eventhubs",
                    "value": "[\"*\"]"
                },
                {
                    "key": "desiredState",
                    "value": "Disabled"
                }
            ],
            "name": "urn:csci:microsoft:eventHub:changeEventHubState/1.0"
        }
    ]
}

Key Vault: Odepřít přístup

Vlastnost Hodnota
Název funkce OdepřítAccess-1.0
Typ cíle Microsoft-KeyVault
Popis Zablokuje veškerý síťový přístup k trezoru klíčů tím, že dočasně upraví pravidla sítě trezoru klíčů. Tato akce brání aplikaci závislé na trezoru klíčů v přístupu k tajným kódům, klíčům a certifikátům. Pokud trezor klíčů umožňuje přístup ke všem sítím, toto nastavení se změní tak, aby umožňovalo přístup jenom z vybraných sítí. Na začátku chyby nejsou v seznamu povolených virtuálních sítí. Na konci doby trvání chyby jsou povolen přístup ke všem sítím. Pokud je trezor klíčů nastavený tak, aby povoloval přístup jenom z vybraných sítí, odeberou se na začátku chyby všechny virtuální sítě v seznamu povolených. Obnoví se na konci doby trvání chyby.
Požadavky Cílový trezor klíčů nemůže mít žádná pravidla brány firewall a nesmí být nastavený tak, aby služby Azure mohly bránu firewall obejít. Pokud je cílový trezor klíčů nastavený tak, aby umožňoval přístup jenom z vybraných sítí, musí existovat aspoň jedno pravidlo virtuální sítě. Trezor klíčů nemůže být v režimu obnovení.
Urno urn:csci:microsoft:keyVault:denyAccess/1.0
Typ chyby Nepřetržité:
Parametry (klíč, hodnota) Nezaokrouhlovat.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:keyvault:denyAccess/1.0",
      "parameters": [],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Key Vault: Zakázání certifikátu

Vlastnost Hodnota
Název funkce DisableCertificate-1.0
Typ cíle Microsoft-KeyVault
Popis Pomocí vlastností certifikátu tato chyba zakáže certifikát po určitou dobu (kterou poskytuje uživatel). Po této době selhání povolí certifikát.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:keyvault:disableCertificate/1.0
Typ chyby Nepřetržité:
Parametry (klíč, hodnota)
certificateName Název certifikátu služby Azure Key Vault, na kterém je chyba spuštěna.
version Verze certifikátu, která by měla být zakázaná. Pokud není zadána, je nejnovější verze zakázaná.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:keyvault:disableCertificate/1.0",
      "parameters": [
        {
            "key": "certificateName",
            "value": "<name of AKV certificate>"
        },
        {
            "key": "version",
            "value": "<certificate version>"
        }

],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Key Vault: Zvýšení verze certifikátu

Vlastnost Hodnota
Název funkce IncrementCertificateVersion-1.0
Typ cíle Microsoft-KeyVault
Popis Vygeneruje novou verzi certifikátu a kryptografický otisk pomocí klientské knihovny certifikátů služby Key Vault. Aktuální pracovní certifikát je upgradován na tuto verzi. Verze certifikátu se po době trvání chyby nevrátí.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
certificateName Název certifikátu služby Azure Key Vault, na kterém je chyba spuštěna.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0",
      "parameters": [
        {
            "key": "certificateName",
            "value": "<name of AKV certificate>"
        }
    ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Key Vault: Aktualizace zásad certifikátu

Vlastnost Hodnota
Název funkce UpdateCertificatePolicy-1.0
Typ cíle Microsoft-KeyVault
Popis Zásady certifikátů (například doba platnosti certifikátu, typ certifikátu, velikost klíče nebo typ klíče) se aktualizují na základě vstupu uživatele a vrátí se po době trvání chyby.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0
Typ chyby Nepřetržité:
Parametry (klíč, hodnota)
certificateName Název certifikátu služby Azure Key Vault, na kterém je chyba spuštěna.
version Verze certifikátu, která by se měla aktualizovat. Pokud není zadána, aktualizuje se nejnovější verze.
enabled Logický. Hodnota, která označuje, jestli je povolená nová verze certifikátu.
validityInMonths Doba platnosti certifikátu v měsících.
certificateTransparency Určuje, jestli má být certifikát při vytváření publikován do seznamu průhlednosti certifikátu.
certificateType Typ certifikátu.
Contenttype Typ obsahu certifikátu. Je to například Pkcs12, když certifikát obsahuje nezpracované bajty PFX nebo Pem, pokud obsahuje bajty kódování ASCII PEM. Pkcs12 je výchozí předpokládaná hodnota.
Keysize Velikost klíče RSA: 2048, 3072 nebo 4096.
Exportovatelný Logický. Hodnota, která označuje, jestli je klíč certifikátu exportovatelný z trezoru nebo zabezpečeného úložiště certifikátů.
reuseKey Logický. Hodnota, která označuje, jestli má být při obměně certifikátu znovu použit klíč certifikátu.
Keytype Typ backingového klíče vygenerovaného při vydání nových certifikátů, jako je RSA nebo EC.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0",
      "parameters": [
        {
            "key": "certificateName",
            "value": "<name of AKV certificate>"
        },
        {
            "key": "version",
            "value": "<certificate version>"
        },
        {
            "key": "enabled",
            "value": "True"
        },
        {
            "key": "validityInMonths",
            "value": "12"
        },
        {
            "key": "certificateTransparency",
            "value": "True"
        },
        {
            "key": "certificateType",
            "value": "<certificate type>"
        },
        {
            "key": "contentType",
            "value": "Pem"
        },
        {
            "key": "keySize",
            "value": "4096"
        },
                {
            "key": "exportable",
            "value": "True"
        },
        {
            "key": "reuseKey",
            "value": "False"
        },
        {
            "key": "keyType",
            "value": "RSA"
        }

     ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Pravidlo zabezpečení NSG

Vlastnost Hodnota
Název funkce SecurityRule-1.0
Typ cíle Microsoft-NetworkSecurityGroup
Popis Umožňuje manipulaci s pravidly nebo vytváření pravidel ve stávající skupině zabezpečení sítě Azure (NSG) nebo skupině zabezpečení sítě Azure za předpokladu, že se definice pravidla vztahuje napříč skupinami zabezpečení. Užitečné pro:
  • Simulace výpadku podřízené závislosti nebo závislostí mezi oblastmi nebo nedependence
  • Simulace události, která má aktivovat logiku pro vynucení převzetí služeb při selhání služby
  • Simulace události, která má aktivovat akci ze služby monitorování nebo správy stavu
  • Použití jako alternativy k blokování nebo povolení síťového provozu, kde není možné nasadit agenta Chaos.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:networkSecurityGroup:securityRule/1.0
Parametry (klíč, hodnota)
name Jedinečný název vytvořeného pravidla zabezpečení. Chyba selže, pokud již ve skupině zabezpečení sítě existuje jiné pravidlo se stejným názvem. Musí začínat písmenem nebo číslem. Musí končit písmenem, číslicí nebo podtržítkem. Může obsahovat pouze písmena, číslice, podtržítka, tečky nebo pomlčky.
Protokol Protokol pro pravidlo zabezpečení. Musí to být any, TCP, UDP nebo ICMP.
sourceAddresses Řetězec, který představuje pole IP adres ve formátu CIDR s oddělovači JSON. Může to být také název značky služby pro příchozí pravidlo, AppServicenapříklad . * Hvězdičku lze použít také ke shodě se všemi zdrojovými IP adresami.
destinationAddresses Řetězec, který představuje pole IP adres ve formátu CIDR s oddělovači JSON. Může to být také název značky služby pro odchozí pravidlo, AppServicenapříklad . Hvězdičku * lze použít také ke shodě všech cílových IP adres.
action Typ přístupu ke skupině zabezpečení Musí být buď Povolit, nebo Odepřít.
destinationPortRanges Řetězec, který představuje pole s oddělovači JSON s jedním portem nebo rozsahy portů, například 80 nebo 1024-65535.
sourcePortRanges Řetězec, který představuje pole s oddělovači JSON s jedním portem nebo rozsahy portů, například 80 nebo 1024-65535.
Prioritou Hodnota mezi 100 a 4096, která je jedinečná pro všechna pravidla zabezpečení v rámci skupiny zabezpečení sítě. Chyba selže, pokud v NSG již existuje jiné pravidlo se stejnou prioritou.
směr Směr provozu ovlivněného pravidlem zabezpečení Musí být příchozí nebo odchozí.

Ukázkový JSON

{ 
  "name": "branchOne", 
  "actions": [ 
    { 
      "type": "continuous", 
      "name": "urn:csci:microsoft:networkSecurityGroup:securityRule/1.0", 
      "parameters": [ 
          { 
              "key": "name", 
              "value": "Block_SingleHost_to_Networks" 

          }, 
          { 
              "key": "protocol", 
              "value": "Any" 
          }, 
          { 
              "key": "sourceAddresses", 
              "value": "[\"10.1.1.128/32\"]"
          }, 
          { 
              "key": "destinationAddresses", 
              "value": "[\"10.20.0.0/16\",\"10.30.0.0/16\"]"
          }, 
          { 
              "key": "access", 
              "value": "Deny" 
          }, 
          { 
              "key": "destinationPortRanges", 
              "value": "[\"80-8080\"]"
          }, 
          { 
              "key": "sourcePortRanges", 
              "value": "[\"*\"]"
          }, 
          { 
              "key": "priority", 
              "value": "100" 
          }, 
          { 
              "key": "direction", 
              "value": "Outbound" 
          } 
      ], 
      "duration": "PT10M", 
      "selectorid": "myResources" 
    } 
  ] 
} 

Omezení

  • Chybu lze použít pouze u existující skupiny zabezpečení sítě.
  • Pokud se použije pravidlo NSG, které má zakázat provoz, stávající připojení nebudou přerušena, dokud nebudou nečinná po dobu 4 minut. Jedním z alternativních řešení je přidat další větev ve stejném kroku, která používá chybu, která by způsobovala přerušení stávajících připojení při použití chyby NSG. Například ukončení procesu, dočasné zastavení služby nebo restartování virtuálního počítače způsobí resetování připojení.
  • Pravidla se použijí na začátku akce. Jakékoli externí změny pravidla během doby trvání akce způsobí selhání experimentu.
  • Vytváření nebo úpravy pravidel skupiny zabezpečení aplikací se nepodporuje.
  • Hodnoty priority musí být jedinečné pro každou cílovou skupinu zabezpečení sítě. Pokus o vytvoření nového pravidla, které má stejnou hodnotu priority jako jiná, způsobí selhání experimentu.

Service Bus: Změna stavu fronty

Vlastnost Hodnota
Název funkce ChangeQueueState-1.0
Typ cíle Microsoft-ServiceBus
Popis Nastaví entity fronty v rámci oboru názvů služby Service Bus na požadovaný stav. Můžete ovlivnit konkrétní názvy entit nebo použít "*" k ovlivnění všech. Tato akce může pomoct otestovat infrastrukturu zasílání zpráv pro scénáře údržby nebo selhání. Jedná se o samostatnou chybu, takže entita se automaticky nevrátí do počátečního stavu.
Požadavky Obor názvů služby Service Bus s alespoň jednou entitou fronty.
Urno urn:csci:microsoft:serviceBus:changeQueueState/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
desiredState Požadovaný stav cílových front. Možné stavy jsou Aktivní, Zakázáno, SendDisabled a ReceiveDisabled.
fronty Čárkami oddělený seznam názvů front v rámci cílového oboru názvů. K ovlivnění všech front v rámci oboru názvů použijte *.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:serviceBus:changeQueueState/1.0",
      "parameters":[
          {
            "key": "desiredState",
            "value": "Disabled"
          },
          {
            "key": "queues",
            "value": "samplequeue1,samplequeue2"
          }
      ],
      "selectorid": "myServiceBusSelector"
    }
  ]
}

Omezení

  • Do této chyby lze předat maximálně 1000 entit fronty.

Service Bus: Změna stavu předplatného

Vlastnost Hodnota
Název funkce ChangeSubscriptionState-1.0
Typ cíle Microsoft-ServiceBus
Popis Nastaví entity předplatného v rámci oboru názvů služby Service Bus a tématu na požadovaný stav. Můžete ovlivnit konkrétní názvy entit nebo použít "*" k ovlivnění všech. Tato akce může pomoct otestovat infrastrukturu zasílání zpráv pro scénáře údržby nebo selhání. Jedná se o samostatnou chybu, takže entita se automaticky nevrátí do počátečního stavu.
Požadavky Obor názvů služby Service Bus s alespoň jednou entitou předplatného.
Urno urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
desiredState Požadovaný stav cílových předplatných. Možné stavy jsou Aktivní a Zakázané.
topic Nadřazené téma obsahující jedno nebo více odběrů, které mají vliv.
předplatnými Čárkami oddělený seznam názvů předplatných v cílovém oboru názvů. K ovlivnění všech předplatných v oboru názvů použijte *.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0",
      "parameters":[
          {
            "key": "desiredState",
            "value": "Disabled"
          },
          {
            "key": "topic",
            "value": "topic01"
          },
          {
            "key": "subscriptions",
            "value": "*"
          }
      ],
      "selectorid": "myServiceBusSelector"
    }
  ]
}

Omezení

  • Do této chyby se dá předat maximálně 1000 entit předplatného.

Service Bus: Změna stavu tématu

Vlastnost Hodnota
Název funkce ChangeTopicState-1.0
Typ cíle Microsoft-ServiceBus
Popis Nastaví zadané entity tématu v rámci oboru názvů služby Service Bus na požadovaný stav. Můžete ovlivnit konkrétní názvy entit nebo použít "*" k ovlivnění všech. Tato akce může pomoct otestovat infrastrukturu zasílání zpráv pro scénáře údržby nebo selhání. Jedná se o samostatnou chybu, takže entita se automaticky nevrátí do počátečního stavu.
Požadavky Obor názvů služby Service Bus s alespoň jednou entitou tématu.
Urno urn:csci:microsoft:serviceBus:changeTopicState/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
desiredState Požadovaný stav cílových témat. Možné stavy jsou Aktivní a Zakázané.
Témata Čárkami oddělený seznam názvů témat v rámci cílového oboru názvů. K ovlivnění všech témat v oboru názvů použijte *.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:serviceBus:changeTopicState/1.0",
      "parameters":[
          {
            "key": "desiredState",
            "value": "Disabled"
          },
          {
            "key": "topics",
            "value": "*"
          }
      ],
      "selectorid": "myServiceBusSelector"
    }
  ]
}

Omezení

  • Do této chyby lze předat maximálně 1000 entit tématu.

Opětovné nasazení virtuálního počítače

Vlastnost Hodnota
Název funkce Opětovné nasazení-1.0
Typ cíle Microsoft-VirtualMachine
Popis Znovu nasadí virtuální počítač tak, že ho vypnete, přesunete ho do nového uzlu v infrastruktuře Azure a znovu ho zapnete. To pomáhá ověřit odolnost vaší úlohy vůči událostem údržby.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:virtualMachine:redeploy/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota) Nezaokrouhlovat.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:virtualMachine:redeploy/1.0",
      "parameters":[],
      "selectorid": "myResources"
    }
  ]
}

Omezení

  • Operace opětovného nasazení virtuálního počítače je omezena v intervalu 10 hodin. Pokud experiment selže s chybou Příliš mnoho žádostí o opětovné nasazení, počkejte na 10 hodin a zkuste experiment zopakovat.

Vypnutí virtuálního počítače

Vlastnost Hodnota
Název funkce Vypnutí-1.0
Typ cíle Microsoft-VirtualMachine
Podporované typy operačního systému Windows, Linux.
Popis Vypne virtuální počítač po dobu trvání chyby. Restartuje ho na konci experimentu nebo pokud je experiment zrušený. Podporují se jenom virtuální počítače Azure Resource Manageru.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:virtualMachine:shutdown/1.0
Parametry (klíč, hodnota)
náhlá zásadka (Volitelné) Logická hodnota, která označuje, jestli má být virtuální počítač řádně vypnutý nebo nečekaně (destruktivní).

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
      "parameters": [
        {
          "key": "abruptShutdown",
          "value": "false"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Vypnutí VMSS

Tato chyba má dvě dostupné verze, které můžete použít, verze 1.0 a verze 2.0. Hlavní rozdíl spočívá v tom, že verze 2.0 umožňuje filtrovat podle zón dostupnosti a vypínat pouze instance v rámci zadané zóny nebo zón.

Vypnutí VMSS verze 1.0

Vlastnost Hodnota
Název funkce Verze 1.0
Typ cíle Microsoft-VirtualMachineScaleSet
Podporované typy operačního systému Windows, Linux.
Popis Vypne nebo ukončí instanci škálovací sady virtuálních počítačů během chyby a restartuje virtuální počítač na konci doby trvání chyby nebo pokud je experiment zrušen.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0
Parametry (klíč, hodnota)
náhlá zásadka (Volitelné) Logická hodnota označující, jestli by instance škálovací sady virtuálních počítačů měla být řádně vypnuta nebo nečekaně (destruktivní).
instance Řetězec, který je odděleným polem ID instancí škálovací sady virtuálních počítačů, na které se chyba použije.
Ukázka JSON verze 1.0
{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0",
      "parameters": [
        {
          "key": "abruptShutdown",
          "value": "true"
        },
        {
          "key": "instances",
          "value": "[\"1\",\"3\"]"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Vypnutí VMSS verze 2.0

Vlastnost Hodnota
Název funkce Vypnutí-2.0
Typ cíle Microsoft-VirtualMachineScaleSet
Podporované typy operačního systému Windows, Linux.
Popis Vypne nebo ukončí instanci škálovací sady virtuálních počítačů během této chyby. Restartuje virtuální počítač na konci doby trvání chyby nebo pokud je experiment zrušen. Podporuje dynamické cílení.
Požadavky Nezaokrouhlovat.
Urno urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0
filter (Volitelné) K dispozici od verze 2.0. Slouží k filtrování seznamu cílů ve selektoru. Aktuálně podporuje filtrování v seznamu zón. Filtr se použije jenom u prostředků škálovací sady virtuálních počítačů v rámci zóny:
  • Pokud není zadán žádný filtr, tato chyba vypne všechny instance ve škálovací sadě virtuálních počítačů.
  • Experiment cílí na všechny instance škálovací sady virtuálních počítačů v určených zónách.
  • Pokud výsledkem filtru nejsou žádné cíle, experiment selže.
Parametry (klíč, hodnota)
náhlá zásadka (Volitelné) Logická hodnota označující, jestli by instance škálovací sady virtuálních počítačů měla být řádně vypnuta nebo nečekaně (destruktivní).
Ukázkové fragmenty kódu JSON verze 2.0

Následující fragmenty kódu ukazují, jak nakonfigurovat dynamické filtrování a chybu vypnutí 2.0.

Konfigurace filtru pro dynamické cílení:

{
  "type": "List",
  "id": "myResources",
  "targets": [
    {
      "id": "<targetResourceId>",
      "type": "ChaosTarget"
    }
  ],
  "filter": {
    "type": "Simple",
    "parameters": {
      "zones": [
        "1"
      ]
    }
  }
}

Konfigurace chyby vypnutí:

{
  "name": "branchOne",
  "actions": [
    {
      "name": "urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0",
      "type": "continuous",
      "selectorId": "myResources",
      "duration": "PT10M",
      "parameters": [
        {
          "key": "abruptShutdown",
          "value": "false"
        }
      ]
    }
  ]
}

Omezení

V současné době se podporují pouze škálovací sady virtuálních počítačů nakonfigurované v režimu jednotné orchestrace. Pokud škálovací sada virtuálních počítačů používá flexibilní orchestraci, můžete k vypnutí vybraných instancí použít chybu vypnutí virtuálního počítače Azure Resource Manageru.

Podrobnosti: Akce orchestrace

Zpoždění

Vlastnost Hodnota
Poskytovatel chyb
Podporované typy operačního systému
Popis Přidá časové zpoždění před, mezi nebo po jiných akcích experimentu. Tato akce není chybou a používá se k synchronizaci akcí v rámci experimentu. Tato akce slouží k čekání na výskyt chyby ve službě nebo čekání na dokončení aktivity mimo experiment. Váš experiment může například počkat, až se automatické zásadí, než vloží jinou chybu.
Požadavky
Urno urn:csci:microsoft:chaosStudio:timedDelay/1.0
Doba trvání Doba trvání zpoždění ve formátu ISO 8601 (například PT10M).

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [ 
    {
      "type": "delay",
      "name": "urn:csci:microsoft:chaosStudio:timedDelay/1.0",
      "duration": "PT10M"
    }
  ] 
}

Spuštění zátěžového testu (zátěžové testování Azure)

Vlastnost Hodnota
Název funkce Start-1.0
Typ cíle Microsoft-AzureLoadTest
Popis Spustí zátěžový test (ze služby Azure Load Testing) na základě zadaného ID zátěžového testu.
Požadavky Zátěžový test s platným ID zátěžového testu musí být vytvořen ve službě Azure Load Testing.
Urno urn:csci:microsoft:azureLoadTest:start/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
Testid ID konkrétního zátěžového testu vytvořeného ve službě Azure Load Testing.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:azureLoadTest:start/1.0",
      "parameters": [
        {
            "key": "testID",
            "value": "0"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}

Zastavení zátěžového testu (zátěžové testování Azure)

Vlastnost Hodnota
Název funkce Stop-1.0
Typ cíle Microsoft-AzureLoadTest
Popis Zastaví zátěžový test (ze služby Azure Load Testing) na základě zadaného ID zátěžového testu.
Požadavky Zátěžový test s platným ID zátěžového testu musí být vytvořen ve službě Azure Load Testing.
Urno urn:csci:microsoft:azureLoadTest:stop/1.0
Typ chyby Diskrétní.
Parametry (klíč, hodnota)
Testid ID konkrétního zátěžového testu vytvořeného ve službě Azure Load Testing.

Ukázkový JSON

{
  "name": "branchOne",
  "actions": [
    {
      "type": "discrete",
      "name": "urn:csci:microsoft:azureLoadTest:stop/1.0",
      "parameters": [
        {
            "key": "testID",
            "value": "0"
        }
    ],
      "selectorid": "myResources"
    }
  ]
}