Fout- en actiebibliotheek van Azure Chaos Studio

In dit artikel worden de fouten vermeld die u kunt gebruiken in Chaos Studio, georganiseerd op basis van het toepasselijke resourcetype. Als u wilt weten welke roltoewijzingen worden aanbevolen voor elk resourcetype, raadpleegt u Ondersteunde resourcetypen en roltoewijzingen voor Azure Chaos Studio.

Fouten op basis van agents

Fouten op basis van agents worden geïnjecteerd in virtuele Azure-machines of instanties van virtuele-machineschaalsets door de Chaos Studio-agent te installeren. Zoek de service-directe foutopties voor deze resources hieronder in de tabellen Virtuele machine en virtuele-machineschaalset .

Toepasselijke typen besturingssystemen Foutnaam Toepasselijke scenario's
Windows, Linux CPU-druk Rekencapaciteitsverlies, resourcedruk
Windows, Linux Proces beëindigen Onderbreking van afhankelijkheden
Windows, Linux Netwerkverbinding verbreken Netwerkonderbreking
Windows, Linux Netwerklatentie Degradatie van netwerkprestaties
Windows, Linux Netwerkpakketverlies Problemen met netwerkbetrouwbaarheid
Windows, Linux Fysieke geheugendruk Geheugencapaciteitsverlies, resourcedruk
Windows, Linux Service stoppen Serviceonderbreking/opnieuw opstarten
Windows, Linux Tijdswijziging Problemen met tijdsynchronisatie
Windows, Linux Druk op virtueel geheugen Geheugencapaciteitsverlies, resourcedruk
Linux Willekeurige stress-ng stressor Algemene systeemspanningstests
Linux Linux DiskIO-druk Schijf-I/O-prestatievermindering
Windows DiskIO-druk Schijf-I/O-prestatievermindering
Windows DNS-fout Problemen met DNS-resolutie
Windows Netwerkverbinding verbreken (via firewall) Netwerkonderbreking

App Service

Deze sectie is van toepassing op het Microsoft.Web/sites resourcetype. Meer informatie over App Service.

Foutnaam Toepasselijke scenario's
App Service stoppen Serviceonderbreking

Instellingen voor automatisch schalen

Deze sectie is van toepassing op het Microsoft.Insights/autoscaleSettings resourcetype. Meer informatie over automatische schaalaanpassing Instellingen.

Foutnaam Toepasselijke scenario's
Automatische schaalaanpassing uitschakelen Verlies van rekencapaciteit (bij gebruik met VMSS afsluiten)

Azure Kubernetes Service

Deze sectie is van toepassing op het Microsoft.ContainerService/managedClusters resourcetype. Meer informatie over Azure Kubernetes Service.

Foutnaam Toepasselijke scenario's
AKS Chaos Mesh DNS Chaos Problemen met DNS-resolutie
AKS Chaos Mesh HTTP Chaos Netwerkonderbreking
AKS Chaos Mesh IO Chaos Schijfdegradatie/druk
AKS Chaos Mesh Kernel Chaos Kernelonderbreking
AKS Chaos Mesh Network Chaos Netwerkonderbreking
AKS Chaos Mesh Pod Chaos Containeronderbreking
AKS Chaos Mesh Stress Chaos Systeemspanningstests
AKS Chaos Mesh Time Chaos Problemen met tijdsynchronisatie

Cloud Services (klassiek)

Deze sectie is van toepassing op het Microsoft.ClassicCompute/domainNames resourcetype. Meer informatie over Cloud Services (klassiek).

Foutnaam Toepasselijke scenario's
Cloudservice afsluiten Rekenverlies

Geclusterde cache voor Redis

Deze sectie is van toepassing op het Microsoft.Cache/redis resourcetype. Meer informatie over geclusterde cache voor Redis.

Foutnaam Toepasselijke scenario's
Azure Cache voor Redis (opnieuw opstarten) Onderbreking van afhankelijkheden (caches)

Cosmos DB

Deze sectie is van toepassing op het Microsoft.DocumentDB/databaseAccounts resourcetype. Meer informatie over Cosmos DB.

Foutnaam Toepasselijke scenario's
Cosmos DB-failover Databasefailover

Event Hubs

Deze sectie is van toepassing op het Microsoft.EventHub/namespaces resourcetype. Meer informatie over Event Hubs.

Foutnaam Toepasselijke scenario's
Event Hub-status wijzigen Onjuiste configuratie/onderbreking van berichteninfrastructuur

Key Vault

Deze sectie is van toepassing op het Microsoft.KeyVault/vaults resourcetype. Meer informatie over Key Vault.

Foutnaam Toepasselijke scenario's
Key Vault: Toegang weigeren Certificaatontkenning
Key Vault: Certificaat uitschakelen Certificaatonderbreking
Key Vault: certificaatversie verhogen Incrementele certificaatversie
Key Vault: Certificaatbeleid bijwerken Wijzigingen/onjuiste configuraties van certificaatbeleid

Netwerkbeveiligingsgroepen

Deze sectie is van toepassing op het Microsoft.Network/networkSecurityGroups resourcetype. Meer informatie over netwerkbeveiligingsgroepen.

Foutnaam Toepasselijke scenario's
NSG-beveiligingsregel Netwerkonderbreking (voor veel Azure-services)

Service Bus

Deze sectie is van toepassing op het Microsoft.ServiceBus/namespaces resourcetype. Meer informatie over Service Bus.

Foutnaam Toepasselijke scenario's
Status van wachtrij wijzigen Onjuiste configuratie/onderbreking van berichteninfrastructuur
Abonnementsstatus wijzigen Onjuiste configuratie/onderbreking van berichteninfrastructuur
Onderwerpstatus wijzigen Onjuiste configuratie/onderbreking van berichteninfrastructuur

Virtuele machines (service-direct)

Deze sectie is van toepassing op het Microsoft.Compute/virtualMachines resourcetype. Meer informatie over virtuele machines.

Foutnaam Toepasselijke scenario's
VM opnieuw implementeren Rekenonderbreking, onderhoudsevenementen
VM afsluiten Rekenverlies/onderbreking

Schaalset voor virtuele machines

Deze sectie is van toepassing op het Microsoft.Compute/virtualMachineScaleSets resourcetype. Meer informatie over virtuele-machineschaalsets.

Foutnaam Toepasselijke scenario's
VMSS afsluiten Rekenverlies/onderbreking
VMSS afsluiten (2.0) Rekenverlies/onderbreking (per beschikbaarheidszone)

Indelingsacties

Deze acties zijn bouwstenen voor het maken van effectieve experimenten. Gebruik deze in combinatie met andere fouten, zoals het uitvoeren van een belastingstest tijdens het parallel afsluiten van rekenprocessen in een zone.

Actiecategorie Foutnaam
Laden Belastingstest starten (Azure Load Testing)
Laden Belastingstest stoppen (Azure Load Testing)
Tijdsvertraging Vertraging

Details: Fouten op basis van agents

Netwerkverbinding verbreken

Eigenschappen Weergegeven als
Naam van mogelijkheid NetworkDisconnect-1.1
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Hiermee blokkeert u uitgaand netwerkverkeer voor opgegeven poortbereik en netwerkblok. Er moet ten minste één destinationFilter- of inboundDestinationFilter-matrix worden opgegeven.
Vereisten Windows: De agent moet worden uitgevoerd als beheerder, wat standaard gebeurt als deze is geïnstalleerd als een VM-extensie.
Linux: Het tc pakket (Traffic Control) wordt gebruikt voor netwerkfouten. Als deze nog niet is geïnstalleerd, probeert de agent deze automatisch te installeren vanuit de standaardpakketbeheerder.
Urn urn:csci:microsoft:agent:networkDisconnect/1.1
Parameters (sleutel, waarde)
destinationFilters Gescheiden JSON-matrix van pakketfilters waarmee wordt gedefinieerd welke uitgaande pakketten moeten worden gericht. Maximaal 16.
inboundDestinationFilters Gescheiden JSON-matrix van pakketfilters waarmee wordt gedefinieerd welke binnenkomende pakketten moeten worden gericht. Maximaal 16.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

De parameters destinationFilters en inboundDestinationFilters gebruiken de volgende matrix van pakketfilters .

Eigenschappen Weergegeven als
Adres IP-adres dat het begin van het IP-bereik aangeeft.
subnetMask Subnetmasker voor het IP-adresbereik.
portLow (Optioneel) Poortnummer van het begin van het poortbereik.
portHigh (Optioneel) Poortnummer van het einde van het poortbereik.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • De netwerkfouten op basis van agents ondersteunen momenteel alleen IPv4-adressen.
  • De fout bij het verbreken van de netwerkverbinding is alleen van invloed op nieuwe verbindingen. Bestaande actieve verbindingen blijven behouden. U kunt de service of het proces opnieuw starten om te forceren dat verbindingen worden verbroken.
  • Wanneer de verbinding met Windows wordt uitgevoerd, werkt de netwerkverbinding momenteel alleen met TCP- of UDP-pakketten.

Netwerkverbinding verbreken (via firewall)

Eigenschappen Weergegeven als
Naam van mogelijkheid NetworkDisconnectViaFirewall-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows
Beschrijving Hiermee past u een Windows Firewall-regel toe om uitgaand verkeer voor het opgegeven poortbereik en netwerkblok te blokkeren.
Vereisten Agent moet worden uitgevoerd als beheerder. Als de agent is geïnstalleerd als een VM-extensie, wordt deze standaard uitgevoerd als beheerder.
Urn urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0
Parameters (sleutel, waarde)
destinationFilters Gescheiden JSON-matrix van pakketfilters die definiëren welke uitgaande pakketten moeten worden gericht op foutinjectie.
Adres IP-adres dat het begin van het IP-bereik aangeeft.
subnetMask Subnetmasker voor het IP-adresbereik.
portLow (Optioneel) Poortnummer van het begin van het poortbereik.
portHigh (Optioneel) Poortnummer van het einde van het poortbereik.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • De netwerkfouten op basis van agents ondersteunen momenteel alleen IPv4-adressen.

Netwerklatentie

Eigenschappen Weergegeven als
Naam van mogelijkheid NetworkLatency-1.1
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux (alleen uitgaand verkeer)
Beschrijving Verhoogt de netwerklatentie voor een opgegeven poortbereik en netwerkblok. Er moet ten minste één destinationFilter- of inboundDestinationFilter-matrix worden opgegeven.
Vereisten Windows: De agent moet worden uitgevoerd als beheerder, wat standaard gebeurt als deze is geïnstalleerd als een VM-extensie.
Linux: Het tc pakket (Traffic Control) wordt gebruikt voor netwerkfouten. Als deze nog niet is geïnstalleerd, probeert de agent deze automatisch te installeren vanuit de standaardpakketbeheerder.
Urn urn:csci:microsoft:agent:networkLatency/1.1
Parameters (sleutel, waarde)
latentieInMilliseconden De hoeveelheid latentie die moet worden toegepast in milliseconden.
destinationFilters Gescheiden JSON-matrix van pakketfilters waarmee wordt gedefinieerd welke uitgaande pakketten moeten worden gericht. Maximaal 16.
inboundDestinationFilters Gescheiden JSON-matrix van pakketfilters waarmee wordt gedefinieerd welke binnenkomende pakketten moeten worden gericht. Maximaal 16.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

De parameters destinationFilters en inboundDestinationFilters gebruiken de volgende matrix van pakketfilters .

Eigenschappen Weergegeven als
Adres IP-adres dat het begin van het IP-bereik aangeeft.
subnetMask Subnetmasker voor het IP-adresbereik.
portLow (Optioneel) Poortnummer van het begin van het poortbereik.
portHigh (Optioneel) Poortnummer van het einde van het poortbereik.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • De netwerkfouten op basis van agents ondersteunen momenteel alleen IPv4-adressen.
  • Wanneer de netwerklatentie op Linux wordt uitgevoerd, kan de fout met netwerklatentie alleen van invloed zijn op uitgaand verkeer, niet op inkomend verkeer. De fout kan van invloed zijn op zowel inkomend als uitgaand verkeer in Windows-omgevingen (via de inboundDestinationFilters en destinationFilters parameters).
  • Bij uitvoering in Windows werkt de netwerklatentiefout momenteel alleen met TCP- of UDP-pakketten.

Netwerkpakketverlies

Eigenschappen Weergegeven als
Naam van mogelijkheid NetworkPacketLoss-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux
Beschrijving Introduceert pakketverlies voor uitgaand verkeer met een opgegeven snelheid, tussen 0,0 (geen pakketten verloren) en 1,0 (alle pakketten verloren). Deze actie kan helpen bij het simuleren van scenario's zoals problemen met netwerkcongestie of netwerkhardware.
Vereisten Windows: De agent moet worden uitgevoerd als beheerder, wat standaard gebeurt als deze is geïnstalleerd als een VM-extensie.
Linux: Het tc pakket (Traffic Control) wordt gebruikt voor netwerkfouten. Als deze nog niet is geïnstalleerd, probeert de agent deze automatisch te installeren vanuit de standaardpakketbeheerder.
Urn urn:csci:microsoft:agent:networkPacketLoss/1.0
Parameters (sleutel, waarde)
packetLossRate De snelheid waarmee pakketten die overeenkomen met de doelfilters gaan verloren, variërend van 0,0 tot 1,0.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.
destinationFilters Gescheiden JSON-matrix van pakketfilters (parameters hieronder) die bepalen welke uitgaande pakketten moeten worden gericht op foutinjectie. Maximaal drie.
Adres IP-adres dat het begin van het IP-bereik aangeeft.
subnetMask Subnetmasker voor het IP-adresbereik.
portLow (Optioneel) Poortnummer van het begin van het poortbereik.
portHigh (Optioneel) Poortnummer van het einde van het poortbereik.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • De netwerkfouten op basis van agents ondersteunen momenteel alleen IPv4-adressen.
  • Wanneer windows wordt uitgevoerd, werkt de fout met netwerkpakketverlies momenteel alleen met TCP- of UDP-pakketten.

DNS-fout

Eigenschappen Weergegeven als
Naam van mogelijkheid DnsFailure-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows
Beschrijving Vervangt antwoorden van DNS-zoekopdrachten door een opgegeven foutcode. DNS-opzoekaanvragen die worden vervangen, moeten:
  • Afkomstig van de VIRTUELE machine.
  • Komt overeen met de gedefinieerde foutparameters.
DNS-zoekacties die niet door de Windows DNS-client worden gemaakt, worden niet beïnvloed door deze fout.
Vereisten Geen.
Urn urn:csci:microsoft:agent:dnsFailure/1.0
Parameters (sleutel, waarde)
hosts De gescheiden JSON-matrix met hostnamen waarvoor de DNS-zoekaanvraag niet kan worden uitgevoerd.

Deze eigenschap accepteert jokertekens (*), maar alleen voor het eerste subdomein in een adres en is alleen van toepassing op het subdomein waarvoor ze zijn opgegeven. Voorbeeld:
  • *.microsoft.com wordt ondersteund.
  • subdomein.*.microsoft wordt niet ondersteund.
  • *.microsoft.com werkt niet voor meerdere subdomeinen in een adres, zoals subdomain1.subdomain2.microsoft.com.
dnsFailureReturnCode DNS-foutcode die moet worden geretourneerd naar de client voor de opzoekfout (FormErr, ServFail, NXDomain, NotImp, Refused, XDomain, YXRRSet, NXRRSet, NotAuth, NotZone). Zie de IANA-website voor meer informatie over DNS-retourcodes.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • Voor de DNS-fout is Windows 2019 RS5 of hoger vereist.
  • DNS-cache wordt genegeerd tijdens de duur van de fout voor de hostnamen die in de fout zijn gedefinieerd.

CPU-druk

Eigenschappen Weergegeven als
Naam van mogelijkheid CPUPressure-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Voegt CPU-druk toe, tot aan de opgegeven waarde, op de VM waarop deze fout wordt geïnjecteerd tijdens de foutactie. De kunstmatige CPU-druk wordt aan het einde van de duur verwijderd of als het experiment wordt geannuleerd. In Windows wordt het prestatiemeteritem %Processor Utility gebruikt bij het begin van de fout om het huidige CPU-percentage te bepalen, dat wordt afgetrokken van de pressureLevel gedefinieerde fout, zodat % Processor Utility ongeveer de pressureLevel gedefinieerde in de foutparameters raakt.
Vereisten Linux: Het hulpprogramma stress-ng moet worden geïnstalleerd. De installatie vindt automatisch plaats als onderdeel van de agentinstallatie, met behulp van de standaardpakketbeheerder, op verschillende besturingssystemen, waaronder Debian (zoals Ubuntu), Red Hat Enterprise Linux en OpenSUSE. Voor andere distributies, waaronder Azure Linux, moet u stress-ng handmatig installeren. Zie de upstream-projectopslagplaats voor meer informatie.
Windows: Geen.
Urn urn:csci:microsoft:agent:cpuPressure/1.0
Parameters (sleutel, waarde)
pressureLevel Een geheel getal tussen 1 en 99 dat aangeeft hoeveel CPU-druk (%) op de VM wordt toegepast in termen van percentage CPU-gebruik
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Beperkingen

Bekende problemen in Linux:

  • Het stresseffect wordt mogelijk niet correct beëindigd als AzureChaosAgent onverwacht wordt gedood.

Fysieke geheugendruk

Eigenschappen Weergegeven als
Naam van mogelijkheid PhysicalMemoryPressure-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Voegt fysieke geheugenbelasting toe, tot aan de opgegeven waarde, op de VM waar deze fout wordt geïnjecteerd tijdens de foutactie. De kunstmatige fysieke geheugenbelasting wordt aan het einde van de duur verwijderd of als het experiment wordt geannuleerd.
Vereisten Linux: Het hulpprogramma stress-ng moet worden geïnstalleerd. De installatie vindt automatisch plaats als onderdeel van de agentinstallatie, met behulp van de standaardpakketbeheerder, op verschillende besturingssystemen, waaronder Debian (zoals Ubuntu), Red Hat Enterprise Linux en OpenSUSE. Voor andere distributies, waaronder Azure Linux, moet u stress-ng handmatig installeren. Zie de upstream-projectopslagplaats voor meer informatie.
Windows: Geen.
Urn urn:csci:microsoft:agent:physicalMemoryPressure/1.0
Parameters (sleutel, waarde)
pressureLevel Een geheel getal tussen 1 en 99 dat aangeeft hoeveel fysieke geheugenbelasting (%) op de VIRTUELE machine wordt toegepast.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Beperkingen

Op dit moment vermindert de Windows-agent de geheugenbelasting niet wanneer andere toepassingen hun geheugengebruik verhogen. Als het totale geheugengebruik hoger is dan 100%, loopt de Windows-agent mogelijk vast.

Druk op virtueel geheugen

Eigenschappen Weergegeven als
Naam van mogelijkheid VirtualMemoryPressure-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows
Beschrijving Hiermee wordt de belasting van het virtuele geheugen, tot aan de opgegeven waarde, toegevoegd op de VIRTUELE machine waarop deze fout wordt geïnjecteerd tijdens de foutactie. De belasting van het kunstmatige virtuele geheugen wordt aan het einde van de duur verwijderd of als het experiment wordt geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:agent:virtualMemoryPressure/1.0
Parameters (sleutel, waarde)
pressureLevel Een geheel getal tussen 1 en 99 dat aangeeft hoeveel fysieke geheugenbelasting (%) op de VIRTUELE machine wordt toegepast.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Schijf-I/O-druk

Eigenschappen Weergegeven als
Naam van mogelijkheid DiskIOPressure-1.1
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows
Beschrijving Gebruikt het hulpprogramma diskspd om schijfdruk toe te voegen aan een virtuele machine. De druk wordt standaard toegevoegd aan de primaire schijf of de schijf die is opgegeven met de parameter targetTempDirectory. Deze fout heeft vijf verschillende uitvoeringsmodi. De kunstmatige schijfdruk wordt aan het einde van de duur verwijderd of als het experiment wordt geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:agent:diskIOPressure/1.1
Parameters (sleutel, waarde)
pressureMode De vooraf ingestelde schijfdrukmodus die moet worden toegevoegd aan de primaire opslag van de virtuele machine. Moet een van de PressureModes volgende tabel zijn.
targetTempDirectory (Optioneel) De map die moet worden gebruikt voor het toepassen van schijfdruk. Bijvoorbeeld: D:/Temp. Als de parameter niet is opgenomen, wordt de druk toegevoegd aan de primaire schijf.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Drukmodi

PressureMode Beschrijving
PremiumStorageP10IOPS numberOfThreads = 1
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 2
percentOfWriteActions = 50
PremiumStorageP10 Beperking
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
PremiumStorageP50 Beperking numberOfThreads = 2
randomBlockSizeInKB = 1024
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 1024
sizeOfWriteBufferInKB = 1024
fileSizeInGB = 20
percentOfWriteActions = 50
Standaardinstelling numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50

Voorbeeld-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"
    }
  ]
}

Io-druk voor Linux-schijf

Eigenschappen Weergegeven als
Naam van mogelijkheid LinuxDiskIOPressure-1.1
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Linux
Beschrijving Gebruikt stress-ng om druk op de schijf toe te passen. Een of meer werkprocessen worden voortgebracht die I/O-processen uitvoeren met tijdelijke bestanden. De druk wordt standaard toegevoegd aan de primaire schijf of de schijf die is opgegeven met de parameter targetTempDirectory. Zie het artikel stress-ng voor informatie over hoe druk wordt toegepast.
Vereisten Linux: Het hulpprogramma stress-ng moet worden geïnstalleerd. De installatie vindt automatisch plaats als onderdeel van de agentinstallatie, met behulp van de standaardpakketbeheerder, op verschillende besturingssystemen, waaronder Debian (zoals Ubuntu), Red Hat Enterprise Linux en OpenSUSE. Voor andere distributies, waaronder Azure Linux, moet u stress-ng handmatig installeren. Zie de upstream-projectopslagplaats voor meer informatie.
Urn urn:csci:microsoft:agent:linuxDiskIOPressure/1.1
Parameters (sleutel, waarde)
workerCount Aantal werkprocessen dat moet worden uitgevoerd. Als u instelt workerCount op 0, worden er zoveel werkprocessen gegenereerd als er een aantal processors is.
fileSizePerWorker Grootte van het tijdelijke bestand waarop een werkrol I/O-bewerkingen uitvoert. Geheel getal plus een eenheid in bytes (b), kilobytes (k), megabytes (m) of gigabytes (g) (bijvoorbeeld 4m voor 4 megabytes en 256g voor 256 gigabytes).
Blocksize Blokgrootte die moet worden gebruikt voor schijf-I/O-bewerkingen, groter dan 1 byte en kleiner dan 4 megabytes (maximumwaarde is 4095k). Geheel getal plus een eenheid in bytes, kilobytes of megabytes (bijvoorbeeld 512k voor 512 kilobytes).
targetTempDirectory (Optioneel) De map die moet worden gebruikt voor het toepassen van schijfdruk. Bijvoorbeeld: /tmp/. Als de parameter niet is opgenomen, wordt de druk toegevoegd aan de primaire schijf.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-JSON

Deze voorbeeldwaarden produceren ~100% schijfdruk bij een test op een Standard_D2s_v3 virtuele machine met Premium SSD LRS. Een grote fileSizePerWorker en kleinere blockSize helpen de schijf volledig te belasten.

{
  "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"
    }
  ]
}

Service stoppen

Eigenschappen Weergegeven als
Naam van mogelijkheid StopService-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Hiermee stopt u een Windows-service of een linux-systeemservice tijdens de fout. Start het opnieuw op aan het einde van de duur of als het experiment wordt geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:agent:stopService/1.0
Parameters (sleutel, waarde)
Servicenaam Naam van de Windows-service of linux-systeemservice die u wilt stoppen.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • Windows: Weergavenamen voor services worden niet ondersteund. Gebruik sc.exe query deze opdrachtprompt om servicenamen te verkennen.
  • Linux: Andere servicetypen, zoals sysvinit, worden niet ondersteund.

Proces beëindigen

Eigenschappen Weergegeven als
Naam van mogelijkheid KillProcess-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Hiermee worden alle actieve exemplaren van een proces verwijderd die overeenkomen met de procesnaam die in de foutparameters is verzonden. Binnen de duur die is ingesteld voor de foutactie, wordt een proces herhaaldelijk gedood op basis van de waarde van het opgegeven kill-interval. Deze fout is een destructieve fout waarbij de systeembeheerder het proces handmatig moet herstellen als zelfherstel is geconfigureerd.
Vereisten Geen.
Urn urn:csci:microsoft:agent:killProcess/1.0
Parameters (sleutel, waarde)
processName Naam van een proces om continu te doden (zonder de .exe). Het proces hoeft niet te worden uitgevoerd wanneer de fout wordt uitgevoerd.
killIntervalInMilliseconds De hoeveelheid tijd die de fout wacht tussen opeenvolgende killpogingen in milliseconden.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Tijdswijziging

Eigenschappen Weergegeven als
Naam van mogelijkheid TimeChange-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Windows
Beschrijving Hiermee wijzigt u de systeemtijd van de virtuele machine en stelt u het tijdstip aan het einde van het experiment opnieuw in of wordt het experiment geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:agent:timeChange/1.0
Parameters (sleutel, waarde)
dateTime Een Datum/tijd-tekenreeks in ISO8601-indeling. Als YYYY-MM-DD er waarden ontbreken, worden deze standaard ingesteld op de huidige dag wanneer het experiment wordt uitgevoerd. Als de waarden Thh:mm:ss ontbreken, is de standaardwaarde 12:00:00 am. Als er een jaar van 2 cijfers wordt opgegeven (YY), wordt het geconverteerd naar een jaar van 4 cijfers (YYYY) op basis van de huidige eeuw. Als de tijdzone <Z> ontbreekt, is de standaard offset de lokale tijdzone. <Z> moet altijd een tekensymbool (negatief of positief) bevatten.
virtualMachineScaleSetInstances Een matrix met exemplaar-id's wanneer u deze fout toepast op een virtuele-machineschaalset. Vereist voor virtuele-machineschaalsets in uniforme indelingsmodus. Meer informatie over exemplaar-id's.

Voorbeeld-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"
    }
  ]
}

Willekeurige stress-ng stressor

Eigenschappen Weergegeven als
Naam van mogelijkheid StressNg-1.0
Doeltype Microsoft-Agent
Ondersteunde typen besturingssystemen Linux
Beschrijving Voert elke opdracht stress-ng uit door argumenten rechtstreeks door te geven aan stress-ng. Handig wanneer een van de vooraf gedefinieerde fouten voor stress-ng niet aan uw behoeften voldoet.
Vereisten Linux: Het hulpprogramma stress-ng moet worden geïnstalleerd. De installatie vindt automatisch plaats als onderdeel van de agentinstallatie, met behulp van de standaardpakketbeheerder, op verschillende besturingssystemen, waaronder Debian (zoals Ubuntu), Red Hat Enterprise Linux en OpenSUSE. Voor andere distributies, waaronder Azure Linux, moet u stress-ng handmatig installeren. Zie de upstream-projectopslagplaats voor meer informatie.
Urn urn:csci:microsoft:agent:stressNg/1.0
Parameters (sleutel, waarde)
stressNgArguments Een of meer argumenten die moeten worden doorgegeven aan het stress-ng-proces. Zie het artikel stress-ng voor informatie over mogelijke stress-ng-argumenten . OPMERKING: Neem het argument '-t' niet op, omdat dit een fout veroorzaakt. De lengte van het experiment wordt rechtstreeks gedefinieerd in de ui van het Azure chaos-experiment, NIET in de stressNgArguments.

Voorbeeld-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"
    }
  ]
}

Details: Service-directe fouten

App Service stoppen

Eigenschappen Weergegeven als
Naam van mogelijkheid Stop-1.0
Doeltype Microsoft-AppService
Beschrijving Stopt de beoogde App Service-toepassingen en start ze vervolgens opnieuw op aan het einde van de foutduur. Deze actie is van toepassing op resources van het type Microsoft.Web/sites, waaronder App Service, API Apps, Mobile Apps en Azure Functions.
Vereisten Geen.
Urn urn:csci:microsoft:appService:stop/1.0
Fouttype Doorlopend.
Parameters (sleutel, waarde) Geen.

Voorbeeld-JSON

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

Automatische schaalaanpassing uitschakelen

Eigenschappen Weergegeven als
Naam van mogelijkheid DisaleAutoscale
Doeltype Automatische schaalaanpassing van Microsoft Instellingen
Beschrijving Hiermee schakelt u de service voor automatisch schalen uit. Wanneer automatisch schalen is uitgeschakeld, worden resources zoals virtuele-machineschaalsets, web-apps, servicebus en meer niet automatisch toegevoegd of verwijderd op basis van de belasting van de toepassing.
Vereisten De resource voor automatisch schalen die is ingeschakeld voor de resource, moet worden geïmplementeerd in Chaos Studio.
Urn urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0
Fouttype Doorlopend.
Parameters (sleutel, waarde)
enableOnComplete Booleaans. Hiermee configureert u of automatisch schalen opnieuw kan worden uitgevoerd nadat de actie is uitgevoerd. Standaard is true.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid NetworkChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Zorgt ervoor dat een netwerkfout die beschikbaar is via Chaos Mesh , wordt uitgevoerd op uw AKS-cluster (Azure Kubernetes Service). Handig voor het opnieuw maken van AKS-incidenten die het gevolg zijn van netwerkstoringen, vertragingen, duplicaties, verlies en beschadiging.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-indeling chaos mesh-specificatie die gebruikmaakt van het soort NetworkChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid PodChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Hiermee wordt een podfout veroorzaakt die beschikbaar is via Chaos Mesh om te worden uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van AKS-incidenten die het gevolg zijn van podfouten of containerproblemen.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-geformatteerde Chaos Mesh-specificatie die gebruikmaakt van het type PodChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid StressChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Veroorzaakt een stressfout die beschikbaar is via Chaos Mesh om te worden uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van AKS-incidenten vanwege stress bij een verzameling pods, bijvoorbeeld vanwege een hoog CPU- of geheugenverbruik.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-geformatteerde Chaos Mesh-specificatie die gebruikmaakt van het type StressChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid IOChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Zorgt ervoor dat een IO-fout die beschikbaar is via Chaos Mesh , wordt uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van AKS-incidenten vanwege I/O-vertragingen en lees-/schrijffouten wanneer u I/O-systeemoproepen zoals open, readen write.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een chaos mesh-specificatie met JSON-indeling die gebruikmaakt van het IOChaos-type. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid TimeChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Veroorzaakt een wijziging in de systeemklok op uw AKS-cluster met behulp van Chaos Mesh. Handig voor het opnieuw maken van AKS-incidenten die het gevolg zijn van gedistribueerde systemen die niet meer worden gesynchroniseerd, ontbrekende/onjuiste schrikkeljaar-/tweede logica en meer.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-indeling chaos mesh-specificatie die gebruikmaakt van het type TimeChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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"
    }
  ]
}

AKS Chaos Mesh Kernel Chaos

Eigenschappen Weergegeven als
Naam van mogelijkheid KernelChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Veroorzaakt een kernelfout die beschikbaar is via Chaos Mesh om te worden uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van AKS-incidenten vanwege fouten op Linux-kernelniveau, zoals een koppelingsfout of geheugen dat niet wordt toegewezen.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-indeling chaos mesh-specificatie die gebruikmaakt van het type KernelChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid HTTPChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Zorgt ervoor dat een HTTP-fout die beschikbaar is via Chaos Mesh , wordt uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van incidenten vanwege HTTP-aanvraag- en antwoordverwerkingsfouten, zoals vertraagde of onjuiste antwoorden.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-indeling chaos mesh-specificatie die gebruikmaakt van het type HTTPChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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

Eigenschappen Weergegeven als
Naam van mogelijkheid DNSChaos-2.1
Doeltype Microsoft-AzureKubernetesServiceChaosMesh
Ondersteunde typen knooppuntgroepen Linux
Beschrijving Hiermee wordt een DNS-fout die beschikbaar is via Chaos Mesh , uitgevoerd op uw AKS-cluster. Handig voor het opnieuw maken van incidenten vanwege DNS-fouten.
Vereisten Het AKS-cluster moet Chaos Mesh hebben geïmplementeerd en de DNS-service moet worden geïnstalleerd.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1
Parameters (sleutel, waarde)
jsonSpec Een JSON-indeling chaos mesh-specificatie die gebruikmaakt van het type DNSChaos. U kunt een YAML-naar-JSON-conversieprogramma zoals YAML converteren naar JSON gebruiken om de Chaos Mesh YAML te converteren naar JSON en deze te minificeren. Gebruik enkele aanhalingstekens in de JSON of escape de aanhalingstekens met een backslash-teken. Neem alleen de YAML op onder de jsonSpec eigenschap. Neem geen informatie op, zoals metagegevens en soort. Het opgeven van de duur binnen de jsonSpec is niet nodig, maar wordt gebruikt indien beschikbaar.

Voorbeeld-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"
    }
  ]
}

Cloud Services (klassiek) afsluiten

Eigenschappen Weergegeven als
Naam van mogelijkheid Shutdown-1.0
Doeltype Microsoft-DomainName
Beschrijving Stopt een implementatie tijdens de fout. Start de implementatie aan het einde van de foutduur opnieuw of als het experiment is geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:domainName:shutdown/1.0
Fouttype Doorlopend.
Parameters Geen.

Voorbeeld-JSON

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

Azure Cache voor Redis (opnieuw opstarten)

Eigenschappen Weergegeven als
Naam van mogelijkheid Reboot-1.0
Doeltype Microsoft-AzureClusteredCacheForRedis
Beschrijving Zorgt ervoor dat een geforceerde herstartbewerking op het doel plaatsvindt om een korte storing te simuleren.
Vereisten N.v.t.
Urn urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
rebootType De knooppunttypen waarop de actie voor opnieuw opstarten moet worden uitgevoerd, die kunnen worden opgegeven als PrimaryNode, SecondaryNode of AllNodes.
shardId De id van de shard die opnieuw moet worden opgestart. Alleen relevant voor Caches in de Premium-laag.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • De fout bij opnieuw opstarten zorgt ervoor dat een geforceerde herstart een storingsgebeurtenis beter simuleert, wat betekent dat er mogelijk gegevensverlies optreedt.
  • De fout bij opnieuw opstarten is een discreet fouttype. In tegenstelling tot doorlopende fouten is het een eenmalige actie en heeft deze geen duur.

Cosmos DB-failover

Eigenschappen Weergegeven als
Naam van mogelijkheid Failover-1.0
Doeltype Microsoft-CosmosDB
Beschrijving Zorgt ervoor dat een Azure Cosmos DB-account met één schrijfregio een failover naar een opgegeven leesregio uitvoert om een storing in een schrijfregio te simuleren.
Vereisten Geen.
Urn urn:csci:microsoft:cosmosDB:failover/1.0
Parameters (sleutel, waarde)
readRegion De leesregio die moet worden gepromoveerd naar de schrijfregio tijdens de failover, East US 2bijvoorbeeld.

Voorbeeld-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"
    }
  ]
}

Event Hub-status wijzigen

Eigenschappen Weergegeven als
Naam van mogelijkheid ChangeEventHubState-1.0
Doeltype Microsoft-EventHub
Beschrijving Hiermee stelt u afzonderlijke Event Hubs in op de gewenste status binnen een Azure Event Hubs-naamruimte. U kunt invloed hebben op specifieke Event Hub-namen of *gebruiken om alles binnen de naamruimte te beïnvloeden. Met deze actie kunt u uw berichteninfrastructuur testen voor onderhouds- of foutscenario's. Dit is een discrete fout, zodat de entiteit niet automatisch wordt geretourneerd naar de beginstatus.
Vereisten Een Azure Event Hubs-naamruimte met ten minste één Event Hub-entiteit.
Urn urn:csci:microsoft:eventHub:changeEventHubState/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
desiredState De gewenste status voor de beoogde Event Hubs. De mogelijke statussen zijn Actief, Uitgeschakeld en SendDisabled.
eventHubs Een door komma's gescheiden lijst met de event hub-namen binnen de doelnaamruimte. Gebruik *om van invloed te zijn op alle entiteiten in de naamruimte.

Voorbeeld-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: Toegang weigeren

Eigenschappen Weergegeven als
Naam van mogelijkheid DenyAccess-1.0
Doeltype Microsoft-KeyVault
Beschrijving Hiermee blokkeert u alle netwerktoegang tot een sleutelkluis door de netwerkregels van de sleutelkluis tijdelijk te wijzigen. Met deze actie voorkomt u dat een toepassing die afhankelijk is van de sleutelkluis toegang heeft tot geheimen, sleutels en/of certificaten. Als de sleutelkluis toegang tot alle netwerken toestaat, wordt deze instelling gewijzigd zodat alleen toegang vanuit geselecteerde netwerken wordt toegestaan. Er staan geen virtuele netwerken in de lijst met toegestane netwerken aan het begin van de fout. Alle netwerken zijn toegang toegestaan aan het einde van de foutduur. Als de sleutelkluis is ingesteld om alleen toegang vanuit geselecteerde netwerken toe te staan, worden virtuele netwerken in de lijst met toegestane netwerken verwijderd aan het begin van de fout. Ze worden aan het einde van de foutduur hersteld.
Vereisten De doelsleutelkluis kan geen firewallregels hebben en mag niet worden ingesteld om Azure-services toe te staan de firewall te omzeilen. Als de doelsleutelkluis is ingesteld om alleen toegang vanuit geselecteerde netwerken toe te staan, moet er ten minste één regel voor het virtuele netwerk zijn. De sleutelkluis kan zich niet in de herstelmodus bevinden.
Urn urn:csci:microsoft:keyVault:denyAccess/1.0
Fouttype Doorlopend.
Parameters (sleutel, waarde) Geen.

Voorbeeld-JSON

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

Key Vault: Certificaat uitschakelen

Eigenschappen Weergegeven als
Naam van mogelijkheid DisableCertificate-1.0
Doeltype Microsoft-KeyVault
Beschrijving Door certificaateigenschappen te gebruiken, wordt het certificaat voor een specifieke duur uitgeschakeld (geleverd door de gebruiker). Het certificaat wordt ingeschakeld na deze foutduur.
Vereisten Geen.
Urn urn:csci:microsoft:keyvault:disableCertificate/1.0
Fouttype Doorlopend.
Parameters (sleutel, waarde)
certificateName De naam van het Azure Key Vault-certificaat waarop de fout wordt uitgevoerd.
version Certificaatversie die moet worden uitgeschakeld. Als dit niet is opgegeven, is de nieuwste versie uitgeschakeld.

Voorbeeld-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: certificaatversie verhogen

Eigenschappen Weergegeven als
Naam van mogelijkheid IncrementCertificateVersion-1.0
Doeltype Microsoft-KeyVault
Beschrijving Genereert een nieuwe certificaatversie en vingerafdruk met behulp van de Key Vault-clientbibliotheek voor certificaten. Het huidige werkende certificaat wordt bijgewerkt naar deze versie. De certificaatversie wordt niet teruggezet na de foutduur.
Vereisten Geen.
Urn urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
certificateName De naam van het Azure Key Vault-certificaat waarop de fout wordt uitgevoerd.

Voorbeeld-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: Certificaatbeleid bijwerken

Eigenschappen Weergegeven als
Naam van mogelijkheid UpdateCertificatePolicy-1.0
Doeltype Microsoft-KeyVault
Beschrijving Certificaatbeleidsregels (bijvoorbeeld geldigheidsperiode van certificaat, certificaattype, sleutelgrootte of sleuteltype) worden bijgewerkt op basis van gebruikersinvoer en worden na de duur van de fout teruggezet.
Vereisten Geen.
Urn urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0
Fouttype Doorlopend.
Parameters (sleutel, waarde)
certificateName De naam van het Azure Key Vault-certificaat waarop de fout wordt uitgevoerd.
version Certificaatversie die moet worden bijgewerkt. Als dit niet is opgegeven, wordt de nieuwste versie bijgewerkt.
enabled Booleaans. Waarde die aangeeft of de nieuwe certificaatversie is ingeschakeld.
geldigheidInMonths Geldigheidsperiode van het certificaat in maanden.
certificateTransparency Geeft aan of het certificaat moet worden gepubliceerd naar de transparantielijst van het certificaat wanneer het is gemaakt.
certificateType Certificaattype.
Contenttype Inhoudstype van het certificaat. Het is bijvoorbeeld Pkcs12 wanneer het certificaat onbewerkte PFX-bytes of Pem bevat wanneer het ASCII PEM gecodeerde bytes bevat. Pkcs12 is de standaardwaarde die wordt aangenomen.
keySize Grootte van de RSA-sleutel: 2048, 3072 of 4096.
Exporteerbaar Booleaans. Waarde die aangeeft of de certificaatsleutel kan worden geëxporteerd vanuit de kluis of het beveiligde certificaatarchief.
reuseKey Booleaans. Waarde die aangeeft of de certificaatsleutel opnieuw moet worden gebruikt wanneer het certificaat wordt gedraaid.
Keytype Type back-upsleutel die wordt gegenereerd wanneer nieuwe certificaten worden uitgegeven, zoals RSA of EC.

Voorbeeld-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"
    }
  ]
}

NSG-beveiligingsregel

Eigenschappen Weergegeven als
Naam van mogelijkheid SecurityRule-1.0
Doeltype Microsoft-NetworkSecurityGroup
Beschrijving Maakt manipulatie of het maken van regels mogelijk in een bestaande Azure-netwerkbeveiligingsgroep (NSG) of set Azure NSG's, ervan uitgaande dat de regeldefinitie van toepassing is op beveiligingsgroepen. Handig voor:
  • Simuleren van een storing van een downstream- of regio-afhankelijkheid/niet-afhankelijkheden.
  • Simuleren van een gebeurtenis die naar verwachting een logica activeert om een servicefailover af te dwingen.
  • Het simuleren van een gebeurtenis die naar verwachting een actie activeert vanuit een bewakings- of statusbeheerservice.
  • Het gebruik als alternatief voor het blokkeren of toestaan van netwerkverkeer waarbij Chaos Agent niet kan worden geïmplementeerd.
Vereisten Geen.
Urn urn:csci:microsoft:networkSecurityGroup:securityRule/1.0
Parameters (sleutel, waarde)
naam Een unieke naam voor de beveiligingsregel die wordt gemaakt. De fout mislukt als er al een andere regel bestaat op de NSG met dezelfde naam. Moet beginnen met een letter of cijfer. Moet eindigen op een letter, cijfer of onderstrepingsteken. Mag alleen letters, cijfers, onderstrepingstekens, punten of afbreekstreepjes bevatten.
protocol Protocol voor de beveiligingsregel. Moet Any, TCP, UDP of ICMP zijn.
sourceAddresses Een tekenreeks die een door JSON gescheiden matrix met DOOR CIDR opgemaakte IP-adressen vertegenwoordigt. Kan ook een servicetagnaam zijn voor een binnenkomende regel, AppServicebijvoorbeeld. Een sterretje * kan ook worden gebruikt om alle bron-IP-adressen te vinden.
destinationAddresses Een tekenreeks die een door JSON gescheiden matrix met DOOR CIDR opgemaakte IP-adressen vertegenwoordigt. Kan ook een servicetagnaam zijn voor een uitgaande regel, AppServicebijvoorbeeld. Een sterretje * kan ook worden gebruikt om alle doel-IP-adressen te vinden.
action Toegangstype beveiligingsgroep. Moet toestaan of weigeren zijn.
destinationPortRanges Een tekenreeks die een door JSON gescheiden matrix van enkele poorten en/of poortbereiken vertegenwoordigt, zoals 80 of 1024-65535.
sourcePortRanges Een tekenreeks die een door JSON gescheiden matrix van enkele poorten en/of poortbereiken vertegenwoordigt, zoals 80 of 1024-65535.
priority Een waarde tussen 100 en 4096 die uniek is voor alle beveiligingsregels binnen de NSG. De fout mislukt als er al een andere regel bestaat op de NSG met dezelfde prioriteit.
richting Richting van het verkeer dat wordt beïnvloed door de beveiligingsregel. Moet binnenkomend of uitgaand zijn.

Voorbeeld-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" 
    } 
  ] 
} 

Beperkingen

  • De fout kan alleen worden toegepast op een bestaande NSG.
  • Wanneer een NSG-regel die bedoeld is om verkeer te weigeren wordt toegepast, worden bestaande verbindingen pas verbroken nadat ze vier minuten inactief zijn geweest. Een tijdelijke oplossing is het toevoegen van een andere vertakking in dezelfde stap die gebruikmaakt van een fout waardoor bestaande verbindingen worden verbroken wanneer de NSG-fout wordt toegepast. Als u bijvoorbeeld het proces stopt, de service tijdelijk stopt of de VIRTUELE machine opnieuw opstart, worden verbindingen opnieuw ingesteld.
  • Regels worden toegepast aan het begin van de actie. Eventuele externe wijzigingen in de regel tijdens de duur van de actie zorgen ervoor dat het experiment mislukt.
  • Het maken of wijzigen van regels voor toepassingsbeveiligingsgroepen wordt niet ondersteund.
  • Prioriteitswaarden moeten uniek zijn voor elke beoogde NSG. Als u probeert een nieuwe regel te maken die dezelfde prioriteitswaarde heeft als een andere regel, mislukt het experiment.

Service Bus: Status van wachtrij wijzigen

Eigenschappen Weergegeven als
Naam van mogelijkheid ChangeQueueState-1.0
Doeltype Microsoft-ServiceBus
Beschrijving Stelt wachtrijentiteiten in een Service Bus-naamruimte in op de gewenste status. U kunt invloed hebben op specifieke entiteitsnamen of '*' gebruiken om alles te beïnvloeden. Met deze actie kunt u uw berichteninfrastructuur testen voor onderhouds- of foutscenario's. Dit is een discrete fout, zodat de entiteit niet automatisch wordt geretourneerd naar de beginstatus.
Vereisten Een Service Bus-naamruimte met ten minste één wachtrijentiteit.
Urn urn:csci:microsoft:serviceBus:changeQueueState/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
desiredState De gewenste status voor de doelwachtrijen. De mogelijke statussen zijn Actief, Uitgeschakeld, SendDisabled en ReceiveDisabled.
wachtrijen Een door komma's gescheiden lijst met wachtrijnamen binnen de doelnaamruimte. Gebruik *om alle wachtrijen in de naamruimte te beïnvloeden.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • Er kunnen maximaal 1000 wachtrijentiteiten worden doorgegeven aan deze fout.

Service Bus: Abonnementsstatus wijzigen

Eigenschappen Weergegeven als
Naam van mogelijkheid ChangeSubscriptionState-1.0
Doeltype Microsoft-ServiceBus
Beschrijving Hiermee stelt u abonnementsentiteiten in een Service Bus-naamruimte en onderwerp in op de gewenste status. U kunt invloed hebben op specifieke entiteitsnamen of '*' gebruiken om alles te beïnvloeden. Met deze actie kunt u uw berichteninfrastructuur testen voor onderhouds- of foutscenario's. Dit is een discrete fout, zodat de entiteit niet automatisch wordt geretourneerd naar de beginstatus.
Vereisten Een Service Bus-naamruimte met ten minste één abonnementsentiteit.
Urn urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
desiredState De gewenste status voor de doelabonnementen. De mogelijke statussen zijn Actief en Uitgeschakeld.
onderwerp Het bovenliggende onderwerp met een of meer abonnementen die van invloed moeten zijn.
abonnementen Een door komma's gescheiden lijst met de abonnementsnamen binnen de doelnaamruimte. Gebruik *om van invloed te zijn op alle abonnementen in de naamruimte.

Voorbeeld-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"
    }
  ]
}

Beperkingen

  • Er kunnen maximaal 1000 abonnementsentiteiten worden doorgegeven aan deze fout.

Service Bus: Onderwerpstatus wijzigen

Eigenschappen Weergegeven als
Naam van mogelijkheid ChangeTopicState-1.0
Doeltype Microsoft-ServiceBus
Beschrijving Hiermee stelt u de opgegeven onderwerpentiteiten in een Service Bus-naamruimte in op de gewenste status. U kunt invloed hebben op specifieke entiteitsnamen of '*' gebruiken om alles te beïnvloeden. Met deze actie kunt u uw berichteninfrastructuur testen voor onderhouds- of foutscenario's. Dit is een discrete fout, zodat de entiteit niet automatisch wordt geretourneerd naar de beginstatus.
Vereisten Een Service Bus-naamruimte met ten minste één onderwerpentiteit.
Urn urn:csci:microsoft:serviceBus:changeTopicState/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
desiredState De gewenste status voor de beoogde onderwerpen. De mogelijke statussen zijn Actief en Uitgeschakeld.
Onderwerpen Een door komma's gescheiden lijst met onderwerpnamen binnen de doelnaamruimte. Gebruik *om alle onderwerpen in de naamruimte te beïnvloeden.

Voorbeeld-JSON

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

Beperkingen

  • Er kunnen maximaal 1000 onderwerpentiteiten worden doorgegeven aan deze fout.

VM opnieuw implementeren

Eigenschappen Weergegeven als
Naam van mogelijkheid Opnieuw implementeren-1.0
Doeltype Microsoft-VirtualMachine
Beschrijving Implementeer een VIRTUELE machine opnieuw door deze uit te schakelen, naar een nieuw knooppunt in de Azure-infrastructuur te verplaatsen en weer in te schakelen. Dit helpt bij het valideren van de tolerantie van uw workload voor onderhoudsevenementen.
Vereisten Geen.
Urn urn:csci:microsoft:virtualMachine:redeploy/1.0
Fouttype Discrete.
Parameters (sleutel, waarde) Geen.

Voorbeeld-JSON

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

Beperkingen

  • De herploybewerking van de virtuele machine wordt beperkt binnen een interval van 10 uur. Als uw experiment mislukt met de fout 'Te veel opnieuw implementeren-aanvragen', wacht u 10 uur om het experiment opnieuw uit te voeren.

VM afsluiten

Eigenschappen Weergegeven als
Naam van mogelijkheid Shutdown-1.0
Doeltype Microsoft-VirtualMachine
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Hiermee wordt een VIRTUELE machine afgesloten voor de duur van de fout. Start het opnieuw op aan het einde van het experiment of als het experiment wordt geannuleerd. Alleen Azure Resource Manager-VM's worden ondersteund.
Vereisten Geen.
Urn urn:csci:microsoft:virtualMachine:shutdown/1.0
Parameters (sleutel, waarde)
abruptShutdown (Optioneel) Booleaanse waarde die aangeeft of de VIRTUELE machine correct of plotseling moet worden afgesloten (destructief).

Voorbeeld-JSON

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

VMSS afsluiten

Deze fout heeft twee beschikbare versies die u kunt gebruiken, versie 1.0 en versie 2.0. Het belangrijkste verschil is dat u met versie 2.0 kunt filteren op beschikbaarheidszones, waarbij alleen instanties binnen een opgegeven zone of zones worden afgesloten.

VMSS versie 1.0 afsluiten

Eigenschappen Weergegeven als
Naam van mogelijkheid Versie 1.0
Doeltype Microsoft-VirtualMachineScaleSet
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Sluit of beëindigt een exemplaar van een virtuele-machineschaalset tijdens de fout en start de VM opnieuw op aan het einde van de foutduur of als het experiment wordt geannuleerd.
Vereisten Geen.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0
Parameters (sleutel, waarde)
abruptShutdown (Optioneel) Booleaanse waarde die aangeeft of het exemplaar van de virtuele-machineschaalset correct of plotseling moet worden afgesloten (destructief).
instanties Een tekenreeks die een gescheiden matrix is van instantie-id's van virtuele-machineschaalsets waarop de fout wordt toegepast.
JSON-voorbeeldversie 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"
    }
  ]
}

VMSS versie 2.0 afsluiten

Eigenschappen Weergegeven als
Naam van mogelijkheid Shutdown-2.0
Doeltype Microsoft-VirtualMachineScaleSet
Ondersteunde typen besturingssystemen Windows, Linux.
Beschrijving Hiermee wordt een exemplaar van een virtuele-machineschaalset afgesloten of uitgeschakeld tijdens de fout. Start de VM opnieuw op aan het einde van de foutduur of als het experiment is geannuleerd. Ondersteunt dynamische targeting.
Vereisten Geen.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0
filter (Optioneel) Beschikbaar vanaf versie 2.0. Wordt gebruikt om de lijst met doelen in een selector te filteren. Ondersteunt momenteel filteren op een lijst met zones. Het filter wordt alleen toegepast op resources van virtuele-machineschaalsets binnen een zone:
  • Als er geen filter is opgegeven, worden met deze fout alle exemplaren in de virtuele-machineschaalset afgesloten.
  • Het experiment is gericht op alle instanties van virtuele-machineschaalsets in de opgegeven zones.
  • Als een filter resulteert in geen doelen, mislukt het experiment.
Parameters (sleutel, waarde)
abruptShutdown (Optioneel) Booleaanse waarde die aangeeft of het exemplaar van de virtuele-machineschaalset correct of plotseling moet worden afgesloten (destructief).
JSON-voorbeeldfragmenten van versie 2.0

De volgende codefragmenten laten zien hoe u zowel dynamische filtering als de afsluitfout 2.0 configureert.

Configureer een filter voor dynamische targeting:

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

Configureer de afsluitfout:

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

Beperkingen

Momenteel worden alleen virtuele-machineschaalsets die zijn geconfigureerd met de uniformindelingsmodus ondersteund. Als uw virtuele-machineschaalset flexibele indeling gebruikt, kunt u de afsluitfout van de virtuele Machine van Azure Resource Manager gebruiken om geselecteerde exemplaren af te sluiten.

Details: Indelingsacties

Vertraging

Eigenschappen Weergegeven als
Foutprovider N.v.t.
Ondersteunde typen besturingssystemen N.v.t.
Beschrijving Hiermee voegt u een tijdsvertraging toe voor, tussen of na andere experimentacties. Deze actie is geen fout en wordt gebruikt om acties binnen een experiment te synchroniseren. Gebruik deze actie om te wachten tot de impact van een fout in een service wordt weergegeven of wacht tot een activiteit buiten het experiment is voltooid. Uw experiment kan bijvoorbeeld wachten tot automatischehealing plaatsvindt voordat er een andere fout wordt geïnjecteerd.
Vereisten N.v.t.
Urn urn:csci:microsoft:chaosStudio:timedDelay/1.0
Duur De duur van de vertraging in ISO 8601-indeling (bijvoorbeeld PT10M).

Voorbeeld-JSON

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

Belastingstest starten (Azure Load Testing)

Eigenschappen Weergegeven als
Naam van mogelijkheid Start-1.0
Doeltype Microsoft-AzureLoadTest
Beschrijving Start een belastingstest (van Azure Load Testing) op basis van de opgegeven belastingtest-id.
Vereisten Er moet een belastingstest met een geldige belastingtest-id worden gemaakt in de Azure Load Testing-service.
Urn urn:csci:microsoft:azureLoadTest:start/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
testID De id van een specifieke belastingstest die is gemaakt in de Azure Load Testing-service.

Voorbeeld-JSON

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

Belastingstest stoppen (Azure Load Testing)

Eigenschappen Weergegeven als
Naam van mogelijkheid Stop-1.0
Doeltype Microsoft-AzureLoadTest
Beschrijving Hiermee stopt u een belastingstest (van Azure Load Testing) op basis van de opgegeven belastingtest-id.
Vereisten Er moet een belastingstest met een geldige belastingtest-id worden gemaakt in de Azure Load Testing-service.
Urn urn:csci:microsoft:azureLoadTest:stop/1.0
Fouttype Discrete.
Parameters (sleutel, waarde)
testID De id van een specifieke belastingstest die is gemaakt in de Azure Load Testing-service.

Voorbeeld-JSON

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