Fel- och åtgärdsbibliotek för Azure Chaos Studio

I den här artikeln visas de fel som du kan använda i Chaos Studio, ordnade efter den aktuella resurstypen. Information om vilka rolltilldelningar som rekommenderas för varje resurstyp finns i Resurstyper och rolltilldelningar som stöds för Azure Chaos Studio.

Agentbaserade fel

Agentbaserade fel matas in i Azure Virtual Machines - eller Vm-skalningsuppsättningsinstanser genom att installera Chaos Studio-agenten. Hitta tjänstdirigeringsalternativen för dessa resurser nedan i tabellerna Vm-dator och Vm-skalningsuppsättning .

Tillämpliga operativsystemtyper Felnamn Tillämpliga scenarier
Windows, Linux CPU-tryck Förlust av beräkningskapacitet, resurstryck
Windows, Linux Avsluta process Beroendestörningar
Windows, Linux Koppla från nätverk Nätverksstörningar
Windows, Linux Svarstid för nätverk Försämrad nätverksprestanda
Windows, Linux Förlust av nätverkspaket Problem med nätverkstillförlitlighet
Windows, Linux Fysiskt minnestryck Minneskapacitetsförlust, resurstryck
Windows, Linux Stoppa tjänst Avbrott/omstart av tjänsten
Windows, Linux Tidsändring Problem med tidssynkronisering
Windows, Linux Virtuellt minnestryck Minneskapacitetsförlust, resurstryck
Linux Godtycklig stressstressor Allmän systemstresstestning
Linux Linux DiskIO-tryck Försämrad disk-I/O-prestanda
Windows DiskIO-tryck Försämrad disk-I/O-prestanda
Windows DNS-fel DNS-matchningsfel
Windows Koppla från nätverk (via brandvägg) Nätverksstörningar

App Service

Det här avsnittet gäller för Microsoft.Web/sites resurstypen. Läs mer om App Service.

Felnamn Tillämpliga scenarier
Stoppa App Service Tjänststörningar

Autoskalningsinställningar

Det här avsnittet gäller för Microsoft.Insights/autoscaleSettings resurstypen. Läs mer om autoskalning Inställningar.

Felnamn Tillämpliga scenarier
Inaktivera autoskalning Förlust av beräkningskapacitet (när den används med VMSS-avstängning)

Azure Kubernetes Service

Det här avsnittet gäller för Microsoft.ContainerService/managedClusters resurstypen. Läs mer om Azure Kubernetes Service.

Felnamn Tillämpliga scenarier
AKS Chaos Mesh DNS Chaos DNS-matchningsfel
AKS Chaos Mesh HTTP Chaos Nätverksstörningar
AKS Chaos Mesh IO Chaos Diskförsämring/tryck
AKS Chaos Mesh Kernel Chaos Kernel-avbrott
AKS Chaos Mesh Nätverkskaos Nätverksstörningar
AKS Chaos Mesh Pod Chaos Containeravbrott
AKS Chaos Mesh Stress Chaos Systemstresstestning
AKS Chaos Mesh Time Chaos Problem med tidssynkronisering

Cloud Services (klassisk)

Det här avsnittet gäller för Microsoft.ClassicCompute/domainNames resurstypen. Läs mer om Cloud Services (klassisk).

Felnamn Tillämpliga scenarier
Avstängning av molntjänst Beräkningsförlust

Klustrad cache för Redis

Det här avsnittet gäller för Microsoft.Cache/redis resurstypen. Läs mer om Klustrad cache för Redis.

Felnamn Tillämpliga scenarier
Azure Cache for Redis (omstart) Beroendestörningar (cacheminnen)

Cosmos DB

Det här avsnittet gäller för Microsoft.DocumentDB/databaseAccounts resurstypen. Läs mer om Cosmos DB.

Felnamn Tillämpliga scenarier
Cosmos DB-redundans Redundansväxling av databas

Event Hubs

Det här avsnittet gäller för Microsoft.EventHub/namespaces resurstypen. Läs mer om Event Hubs.

Felnamn Tillämpliga scenarier
Ändra händelsehubbens tillstånd Felkonfiguration/avbrott i meddelandeinfrastrukturen

Key Vault

Det här avsnittet gäller för Microsoft.KeyVault/vaults resurstypen. Läs mer om Key Vault.

Felnamn Tillämpliga scenarier
Key Vault: Neka åtkomst Certifikatnekelse
Key Vault: Inaktivera certifikat Certifikatavbrott
Key Vault: Öka certifikatversionen Ökning av certifikatversion
Key Vault: Uppdatera certifikatprincip Ändringar/felkonfigurationer av certifikatprincip

Nätverkssäkerhetsgrupper

Det här avsnittet gäller för Microsoft.Network/networkSecurityGroups resurstypen. Läs mer om nätverkssäkerhetsgrupper.

Felnamn Tillämpliga scenarier
NSG-säkerhetsregel Nätverksstörningar (för många Azure-tjänster)

Service Bus

Det här avsnittet gäller för Microsoft.ServiceBus/namespaces resurstypen. Läs mer om Service Bus.

Felnamn Tillämpliga scenarier
Ändra kötillstånd Felkonfiguration/avbrott i meddelandeinfrastrukturen
Ändra prenumerationstillstånd Felkonfiguration/avbrott i meddelandeinfrastrukturen
Ändra ämnestillstånd Felkonfiguration/avbrott i meddelandeinfrastrukturen

Virtuella datorer (tjänstdirigering)

Det här avsnittet gäller för Microsoft.Compute/virtualMachines resurstypen. Läs mer om virtuella datorer.

Felnamn Tillämpliga scenarier
Distribuera om virtuell dator Beräkningsstörningar, underhållshändelser
Avstängning av virtuell dator Beräkningsförlust/avbrott

Skaluppsättning för virtuella datorer

Det här avsnittet gäller för Microsoft.Compute/virtualMachineScaleSets resurstypen. Läs mer om VM-skalningsuppsättningar.

Felnamn Tillämpliga scenarier
Avstängning av VMSS Beräkningsförlust/avbrott
Avstängning av VMSS (2.0) Beräkningsförlust/avbrott (efter tillgänglighetszon)

Orkestreringsåtgärder

Dessa åtgärder är byggstenar för att skapa effektiva experiment. Använd dem i kombination med andra fel, till exempel att köra ett belastningstest vid parallell avstängning av beräkningsinstanser i en zon.

Åtgärdskategori Felnamn
Inläsning Starta belastningstestet (Azure Load Testing)
Inläsning Stoppa belastningstest (Azure Load Testing)
Tidsfördröjning Försening

Information: Agentbaserade fel

Koppla från nätverk

Property Värde
Kapacitetsnamn NetworkDisconnect-1.1
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux.
beskrivning Blockerar utgående nätverkstrafik för angivet portintervall och nätverksblock. Minst ett målFilter eller en inboundDestinationFilter-matris måste anges.
Förutsättningar Windows: Agenten måste köras som administratör, vilket sker som standard om den installeras som ett VM-tillägg.
Linux:tc Paketet (Traffic Control) används för nätverksfel. Om den inte redan är installerad försöker agenten automatiskt installera den från standardpakethanteraren.
Urn urn:csci:microsoft:agent:networkDisconnect/1.1
Parametrar (nyckel, värde)
destinationFilters Avgränsad JSON-matris med paketfilter som definierar vilka utgående paket som ska riktas. Maximalt 16.
inboundDestinationFilters Avgränsad JSON-matris med paketfilter som definierar vilka inkommande paket som ska riktas. Maximalt 16.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

Parametrarna destinationFilters och inboundDestinationFilters använder följande matris med paketfilter.

Property Värde
Adress IP-adress som anger början av IP-intervallet.
subnetMask Nätmask för IP-adressintervallet.
portLow (Valfritt) Portnummer för portintervallets start.
portHigh (Valfritt) Portnummer för slutet av portintervallet.

JSON-exempel

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

Begränsningar

  • De agentbaserade nätverksfelen stöder för närvarande endast IPv4-adresser.
  • Nätverksfelet påverkar bara nya anslutningar. Befintliga aktiva anslutningar fortsätter att finnas kvar. Du kan starta om tjänsten eller processen för att tvinga anslutningar att brytas.
  • När det körs i Windows fungerar nätverksfelet för närvarande endast med TCP- eller UDP-paket.

Koppla från nätverk (via brandvägg)

Property Värde
Kapacitetsnamn NetworkDisconnectViaFirewall-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows
beskrivning Tillämpar en Windows-brandväggsregel för att blockera utgående trafik för angivet portintervall och nätverksblock.
Förutsättningar Agenten måste köras som administratör. Om agenten installeras som ett VM-tillägg körs den som administratör som standard.
Urn urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0
Parametrar (nyckel, värde)
destinationFilters Avgränsad JSON-matris med paketfilter som definierar vilka utgående paket som ska riktas mot felinmatning.
Adress IP-adress som anger början av IP-intervallet.
subnetMask Nätmask för IP-adressintervallet.
portLow (Valfritt) Portnummer för portintervallets start.
portHigh (Valfritt) Portnummer för slutet av portintervallet.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Begränsningar

  • De agentbaserade nätverksfelen stöder för närvarande endast IPv4-adresser.

Svarstid för nätverk

Property Värde
Kapacitetsnamn NetworkLatency-1.1
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux (endast utgående trafik)
beskrivning Ökar nätverksfördröjningen för ett angivet portintervall och nätverksblock. Minst ett målFilter eller en inboundDestinationFilter-matris måste anges.
Förutsättningar Windows: Agenten måste köras som administratör, vilket sker som standard om den installeras som ett VM-tillägg.
Linux:tc Paketet (Traffic Control) används för nätverksfel. Om den inte redan är installerad försöker agenten automatiskt installera den från standardpakethanteraren.
Urn urn:csci:microsoft:agent:networkLatency/1.1
Parametrar (nyckel, värde)
latencyInMilliseconds Mängden svarstid som ska tillämpas i millisekunder.
destinationFilters Avgränsad JSON-matris med paketfilter som definierar vilka utgående paket som ska riktas. Maximalt 16.
inboundDestinationFilters Avgränsad JSON-matris med paketfilter som definierar vilka inkommande paket som ska riktas. Maximalt 16.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

Parametrarna destinationFilters och inboundDestinationFilters använder följande matris med paketfilter.

Property Värde
Adress IP-adress som anger början av IP-intervallet.
subnetMask Nätmask för IP-adressintervallet.
portLow (Valfritt) Portnummer för portintervallets start.
portHigh (Valfritt) Portnummer för slutet av portintervallet.

JSON-exempel

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

Begränsningar

  • De agentbaserade nätverksfelen stöder för närvarande endast IPv4-adresser.
  • När du kör på Linux kan felet för nätverksfördröjning bara påverka utgående trafik, inte inkommande trafik. Felet kan påverka både inkommande och utgående trafik i Windows-miljöer (via parametrarna inboundDestinationFilters och destinationFilters ).
  • När det körs i Windows fungerar felet för nätverksfördröjning för närvarande endast med TCP- eller UDP-paket.

Förlust av nätverkspaket

Property Värde
Kapacitetsnamn NetworkPacketLoss-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux
beskrivning Introducerar paketförlust för utgående trafik med en angiven hastighet, mellan 0,0 (inga förlorade paket) och 1,0 (alla förlorade paket). Den här åtgärden kan hjälpa dig att simulera scenarier som nätverksbelastning eller problem med nätverksmaskinvara.
Förutsättningar Windows: Agenten måste köras som administratör, vilket sker som standard om den installeras som ett VM-tillägg.
Linux:tc Paketet (Traffic Control) används för nätverksfel. Om den inte redan är installerad försöker agenten automatiskt installera den från standardpakethanteraren.
Urn urn:csci:microsoft:agent:networkPacketLoss/1.0
Parametrar (nyckel, värde)
packetLossRate Den hastighet med vilken paket som matchar målfiltren går förlorade, från 0,0 till 1,0.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.
destinationFilters Avgränsad JSON-matris med paketfilter (parametrar nedan) som definierar vilka utgående paket som ska riktas för felinmatning. Maximalt tre.
Adress IP-adress som anger början av IP-intervallet.
subnetMask Nätmask för IP-adressintervallet.
portLow (Valfritt) Portnummer för portintervallets start.
portHigh (Valfritt) Portnummer för slutet av portintervallet.

JSON-exempel

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

Begränsningar

  • De agentbaserade nätverksfelen stöder för närvarande endast IPv4-adresser.
  • När du kör på Windows fungerar fel med förlust av nätverkspaket för närvarande endast med TCP- eller UDP-paket.

DNS-fel

Property Värde
Kapacitetsnamn DnsFailure-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows
beskrivning Ersätter SVAR på DNS-sökningsbegäran med en angiven felkod. DNS-sökningsbegäranden som ersätts måste:
  • Kommer från den virtuella datorn.
  • Matcha de definierade felparametrarna.
DNS-sökningar som inte görs av Windows DNS-klienten påverkas inte av det här felet.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:dnsFailure/1.0
Parametrar (nyckel, värde)
värdar Avgränsad JSON-matris med värdnamn som DNS-sökningsbegäran inte kan utföras för.

Den här egenskapen accepterar jokertecken (*), men endast för den första underdomänen i en adress och gäller endast för underdomänen som de har angetts för. Till exempel:
  • *.microsoft.com stöds.
  • subdomain.*.microsoft stöds inte.
  • *.microsoft.com fungerar inte för flera underdomäner i en adress, till exempel subdomain1.subdomain2.microsoft.com.
dnsFailureReturnCode DNS-felkod som ska returneras till klienten för uppslagsfelet (FormErr, ServFail, NXDomain, NotImp, Refused, XDomain, YXRRSet, NXRRSet, NotAuth, NotZone). Mer information om DNS-returkoder finns på IANA-webbplatsen.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Begränsningar

  • DNS-felfelet kräver Windows 2019 RS5 eller senare.
  • DNS-cache ignoreras under hela felets varaktighet för de värdnamn som definierats i felet.

CPU-tryck

Property Värde
Kapacitetsnamn CPUPressure-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux.
beskrivning Lägger till cpu-tryck, upp till det angivna värdet, på den virtuella dator där felet matas in under felåtgärden. Det artificiella CPU-trycket tas bort i slutet av varaktigheten eller om experimentet avbryts. I Windows används prestandaräknaren för %-processorverktyget vid felstart för att fastställa den aktuella CPU-procentandelen, som subtraheras från den pressureLevel som definierats i felet så att %-processorverktyget når ungefär den pressureLevel som definierats i felparametrarna.
Förutsättningar Linux: Stress-ng-verktygetmåste installeras. Installationen sker automatiskt som en del av agentinstallationen, med standardpakethanteraren, på flera operativsystem, inklusive Debian-baserade (t.ex. Ubuntu), Red Hat Enterprise Linux och OpenSUSE. För andra distributioner, inklusive Azure Linux, måste du installera stress-ng manuellt. Mer information finns i den överordnade projektlagringsplatsen.
Windows: Ingen.
Urn urn:csci:microsoft:agent:cpuPressure/1.0
Parametrar (nyckel, värde)
pressureLevel Ett heltal mellan 1 och 99 som anger hur mycket CPU-tryck (%) som tillämpas på den virtuella datorn när det gäller % CPU-användning
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Begränsningar

Kända problem i Linux:

  • Stresseffekten kanske inte avslutas korrekt om AzureChaosAgent den oväntat avbryts.

Fysiskt minnestryck

Property Värde
Kapacitetsnamn PhysicalMemoryPressure-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux.
beskrivning Lägger till fysiskt minnestryck, upp till det angivna värdet, på den virtuella dator där felet matas in under felåtgärden. Det artificiella fysiska minnestrycket tas bort i slutet av varaktigheten eller om experimentet avbryts.
Förutsättningar Linux: Stress-ng-verktygetmåste installeras. Installationen sker automatiskt som en del av agentinstallationen, med standardpakethanteraren, på flera operativsystem, inklusive Debian-baserade (t.ex. Ubuntu), Red Hat Enterprise Linux och OpenSUSE. För andra distributioner, inklusive Azure Linux, måste du installera stress-ng manuellt. Mer information finns i den överordnade projektlagringsplatsen.
Windows: Ingen.
Urn urn:csci:microsoft:agent:physicalMemoryPressure/1.0
Parametrar (nyckel, värde)
pressureLevel Ett heltal mellan 1 och 99 som anger hur mycket fysiskt minnestryck (%) som tillämpas på den virtuella datorn.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Begränsningar

Windows-agenten minskar för närvarande inte minnesbelastningen när andra program ökar minnesanvändningen. Om den totala minnesanvändningen överskrider 100 % kan Windows-agenten krascha.

Virtuellt minnestryck

Property Värde
Kapacitetsnamn VirtualMemoryPressure-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows
beskrivning Lägger till virtuellt minnestryck, upp till det angivna värdet, på den virtuella dator där felet matas in under felåtgärden. Det artificiella virtuella minnestrycket tas bort i slutet av varaktigheten eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:virtualMemoryPressure/1.0
Parametrar (nyckel, värde)
pressureLevel Ett heltal mellan 1 och 99 som anger hur mycket fysiskt minnestryck (%) som tillämpas på den virtuella datorn.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Disk-I/O-tryck

Property Värde
Kapacitetsnamn DiskIOPressure-1.1
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows
beskrivning Använder diskspd-verktyget för att lägga till disktryck till en virtuell dator. Tryck läggs till på den primära disken som standard, eller den disk som anges med parametern targetTempDirectory. Det här felet har fem olika körningslägen. Det artificiella disktrycket tas bort i slutet av varaktigheten eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:diskIOPressure/1.1
Parametrar (nyckel, värde)
pressureMode Det förinställda läget för disktryck som ska läggas till i den virtuella datorns primära lagring. Måste vara en av följande PressureModes i följande tabell.
targetTempDirectory (Valfritt) Den katalog som ska användas för att tillämpa disktryck. Exempel: D:/Temp Om parametern inte ingår läggs trycket till på den primära disken.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

Trycklägen

PressureMode beskrivning
PremiumStorageP10IOPS numberOfThreads = 1
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 2
percentOfWriteActions = 50
PremiumStorageP10Throttling
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
PremiumStorageP50Throttling numberOfThreads = 2
randomBlockSizeInKB = 1024
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 1024
sizeOfWriteBufferInKB = 1024
fileSizeInGB = 20
percentOfWriteActions = 50
Standardvärde numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50

JSON-exempel

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

I/O-tryck på Linux-disk

Property Värde
Kapacitetsnamn LinuxDiskIOPressure-1.1
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Linux
beskrivning Använder stress-ng för att utöva tryck på disken. En eller flera arbetsprocesser skapas som utför I/O-processer med tillfälliga filer. Tryck läggs till på den primära disken som standard, eller den disk som anges med parametern targetTempDirectory. Information om hur tryck tillämpas finns i artikeln stress-ng .
Förutsättningar Linux: Stress-ng-verktygetmåste installeras. Installationen sker automatiskt som en del av agentinstallationen, med standardpakethanteraren, på flera operativsystem, inklusive Debian-baserade (t.ex. Ubuntu), Red Hat Enterprise Linux och OpenSUSE. För andra distributioner, inklusive Azure Linux, måste du installera stress-ng manuellt. Mer information finns i den överordnade projektlagringsplatsen.
Urn urn:csci:microsoft:agent:linuxDiskIOPressure/1.1
Parametrar (nyckel, värde)
workerCount Antal arbetsprocesser som ska köras. Inställningen workerCount till 0 genererar lika många arbetsprocesser som antalet processorer.
fileSizePerWorker Storleken på den temporära fil som en arbetare utför I/O-åtgärder mot. Heltal plus en enhet i byte (b), kilobyte (k), megabyte (m) eller gigabyte (g) (till exempel 4m för 4 megabyte och 256g för 256 gigabyte).
Blockstorlek Blockstorlek som ska användas för disk-I/O-åtgärder, större än 1 byte och mindre än 4 megabyte (maximalt värde är 4095k). Heltal plus en enhet i byte, kilobyte eller megabyte (till exempel 512k för 512 kilobyte).
targetTempDirectory (Valfritt) Den katalog som ska användas för att tillämpa disktryck. Exempel: /tmp/ Om parametern inte ingår läggs trycket till på den primära disken.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

Dessa exempelvärden genererade ~100 % disktryck när de testades på en Standard_D2s_v3 virtuell dator med Premium SSD LRS. En stor filSizePerWorker och mindre blockSize hjälper till att stressa disken helt.

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

Stoppa tjänst

Property Värde
Kapacitetsnamn StopService-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux.
beskrivning Stoppar en Windows-tjänst eller en Linux-systembaserad tjänst under felet. Startar om den i slutet av varaktigheten eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:stopService/1.0
Parametrar (nyckel, värde)
Tjänstnamn Namnet på den Windows-tjänst eller Linux-systemtjänst som du vill stoppa.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Begränsningar

  • Windows: Visningsnamn för tjänster stöds inte. Använd sc.exe query i kommandotolken för att utforska tjänstnamn.
  • Linux: Andra tjänsttyper förutom systemd, till exempel sysvinit, stöds inte.

Avsluta process

Property Värde
Kapacitetsnamn KillProcess-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows, Linux.
beskrivning Dödar alla instanser som körs i en process som matchar processnamnet som skickas i felparametrarna. Inom den varaktighet som angetts för felåtgärden avbryts en process repetitivt baserat på värdet för det angivna avlivningsintervallet. Det här felet är ett destruktivt fel där systemadministratören skulle behöva återställa processen manuellt om självåterställning har konfigurerats för den.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:killProcess/1.0
Parametrar (nyckel, värde)
processName Namn på en process för att kontinuerligt avsluta (utan .exe). Processen behöver inte köras när felet börjar köras.
killIntervalInMilliseconds Hur lång tid felet väntar mellan efterföljande dödsförsök i millisekunder.
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Tidsändring

Property Värde
Kapacitetsnamn TimeChange-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Windows
beskrivning Ändrar systemtiden för den virtuella datorn och återställer tiden i slutet av experimentet eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:agent:timeChange/1.0
Parametrar (nyckel, värde)
Datetime En DateTime-sträng i ISO8601 format. Om YYYY-MM-DD värden saknas är de standardvärdet för den aktuella dagen när experimentet körs. Om Thh:mm:ss-värden saknas är standardvärdet 12:00:00. Om ett 2-siffrigt år tillhandahålls (YY) konverteras det till ett 4-siffrigt år (YYYY) baserat på det aktuella århundradet. Om tidszonen <Z> saknas är standardförskjutningen den lokala tidszonen. <Z> måste alltid innehålla en teckensymbol (negativ eller positiv).
virtualMachineScaleSetInstances En matris med instans-ID:t när du tillämpar det här felet på en VM-skalningsuppsättning. Krävs för vm-skalningsuppsättningar i enhetligt orkestreringsläge. Läs mer om instans-ID:t.

JSON-exempel

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

Godtycklig stressstressor

Property Värde
Kapacitetsnamn StressNg-1.0
Måltyp Microsoft-Agent
Operativsystemtyper som stöds Linux
beskrivning Kör alla stress-ng-kommandon genom att skicka argument direkt till stress-ng. Användbart när ett av de fördefinierade felen för stress-ng inte uppfyller dina behov.
Förutsättningar Linux: Stress-ng-verktygetmåste installeras. Installationen sker automatiskt som en del av agentinstallationen, med standardpakethanteraren, på flera operativsystem, inklusive Debian-baserade (t.ex. Ubuntu), Red Hat Enterprise Linux och OpenSUSE. För andra distributioner, inklusive Azure Linux, måste du installera stress-ng manuellt. Mer information finns i den överordnade projektlagringsplatsen.
Urn urn:csci:microsoft:agent:stressNg/1.0
Parametrar (nyckel, värde)
stressNgArguments Ett eller flera argument för att överföra till stress-ng-processen. Information om möjliga stress-ng-argument finns i artikeln stress-ng . Obs! Inkludera INTE argumentet "-t" eftersom det orsakar ett fel. Experimentlängden definieras direkt i användargränssnittet för Azure-kaosexperimentet, INTE i stressNgArguments.

JSON-exempel

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

Information: Tjänstdirigeringsfel

Stoppa App Service

Property Värde
Kapacitetsnamn Stopp-1.0
Måltyp Microsoft-AppService
beskrivning Stoppar de riktade App Service-programmen och startar sedan om dem i slutet av felvaraktigheten. Den här åtgärden gäller för resurser av typen "Microsoft.Web/sites", inklusive App Service, API Apps, Mobile Apps och Azure Functions.
Förutsättningar Inga.
Urn urn:csci:microsoft:appService:stop/1.0
Feltyp Kontinuerliga.
Parametrar (nyckel, värde) Inga.

JSON-exempel

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

Inaktivera autoskalning

Property Värde
Kapacitetsnamn DisaleAutoscale
Måltyp Microsoft-autoskalning Inställningar
beskrivning Inaktiverar autoskalningstjänsten. När autoskalning inaktiveras läggs inte resurser som vm-skalningsuppsättningar, webbappar, service bus med mera automatiskt till eller tas bort baserat på programmets belastning.
Förutsättningar Den autoskalningsresurs som är aktiverad på resursen måste registreras i Chaos Studio.
Urn urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0
Feltyp Kontinuerliga.
Parametrar (nyckel, värde)
enableOnComplete Boolesk. Konfigurerar om autoskalning kan återanvändas när åtgärden har utförts. Standard är true.

JSON-exempel

{
  "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 Nätverkskaos

Property Värde
Kapacitetsnamn NetworkChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Gör att ett nätverksfel som är tillgängligt via Chaos Mesh körs mot ditt AKS-kluster (Azure Kubernetes Service). Användbart för att återskapa AKS-incidenter som uppstår till följd av nätverksfel, fördröjningar, dupliceringar, förlust och skada.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder typen NetworkChaos. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn PodChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett poddfel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa AKS-incidenter som beror på poddfel eller containerproblem.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder PodChaos-typen. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn StressChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett stressfel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa AKS-incidenter på grund av belastningar över en samling poddar, till exempel på grund av hög CPU- eller minnesförbrukning.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder typen StressChaos. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn IOChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett I/O-fel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa AKS-incidenter på grund av I/O-fördröjningar och läs-/skrivfel när du använder I/O-systemanrop som open, readoch write.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder IOChaos-typen. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn TimeChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar en ändring i systemklockan i ditt AKS-kluster med hjälp av Chaos Mesh. Användbart för att återskapa AKS-incidenter som beror på att distribuerade system faller ur synkronisering, saknade/felaktiga skottår/hoppa över andra logiken med mera.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder typen TimeChaos. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn KernelChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett kernelfel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa AKS-incidenter på grund av fel på Kernel-nivå i Linux, till exempel ett monteringsfel eller att minnet inte allokeras.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder KernelChaos-typen. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn HTTPChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett HTTP-fel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa incidenter på grund av fel vid HTTP-begäran och svarsbearbetning, till exempel fördröjda eller felaktiga svar.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder HTTPChaos-typen. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Property Värde
Kapacitetsnamn DNSChaos-2.1
Måltyp Microsoft-AzureKubernetesServiceChaosMesh
Typer av nodpoolsoperativsystem som stöds Linux
beskrivning Orsakar ett DNS-fel som är tillgängligt via Chaos Mesh för att köras mot ditt AKS-kluster. Användbart för att återskapa incidenter på grund av DNS-fel.
Förutsättningar AKS-klustret måste ha Chaos Mesh distribuerat och DNS-tjänsten måste vara installerad.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1
Parametrar (nyckel, värde)
jsonSpec En JSON-formaterad Chaos Mesh-specifikation som använder TYPEN DNSChaos. Du kan använda en YAML-till-JSON-konverterare som Konvertera YAML till JSON för att konvertera Chaos Mesh YAML till JSON och minimera den. Använd enkla citattecken inom JSON eller undvik citattecken med ett omvänt snedstreck. Inkludera endast YAML under egenskapen jsonSpec . Inkludera inte information som metadata och typ. Att ange varaktighet inom jsonSpec är inte nödvändigt, men det används om det är tillgängligt.

JSON-exempel

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

Avstängning av Cloud Services (klassisk)

Property Värde
Kapacitetsnamn Avstängning-1.0
Måltyp Microsoft-DomainName
beskrivning Stoppar en distribution under felet. Startar om distributionen i slutet av felvaraktigheten eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:domainName:shutdown/1.0
Feltyp Kontinuerliga.
Parametrar Inget.

JSON-exempel

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

Azure Cache for Redis (omstart)

Property Värde
Kapacitetsnamn Reboot-1.0
Måltyp Microsoft-AzureClusteredCacheForRedis
beskrivning Orsakar en tvingad omstartsåtgärd för målet för att simulera ett kort avbrott.
Förutsättningar Ej tillämpligt
Urn urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
rebootType Nodtyperna där omstartsåtgärden ska utföras, som kan anges som PrimaryNode, SecondaryNode eller AllNodes.
shardId ID:t för shard som ska startas om. Endast relevant för Premium-nivåcacheminnen.

JSON-exempel

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

Begränsningar

  • Omstartsfelet orsakar en tvingad omstart för att bättre simulera en avbrottshändelse, vilket innebär att det finns potential för dataförlust.
  • Omstartsfelet är en diskret feltyp. Till skillnad från kontinuerliga fel är det en engångsåtgärd och har ingen varaktighet.

Cosmos DB-redundans

Property Värde
Kapacitetsnamn Redundansväxling-1.0
Måltyp Microsoft-CosmosDB
beskrivning Gör att ett Azure Cosmos DB-konto med en enda skrivregion redundansväxlar till en angiven läsregion för att simulera ett avbrott i skrivregionen.
Förutsättningar Inga.
Urn urn:csci:microsoft:cosmosDB:failover/1.0
Parametrar (nyckel, värde)
readRegion Läsregionen som ska befordras till skrivregion under redundansväxlingen, East US 2till exempel .

JSON-exempel

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

Ändra händelsehubbens tillstånd

Property Värde
Kapacitetsnamn ChangeEventHubState-1.0
Måltyp Microsoft-EventHub
beskrivning Anger enskilda händelsehubbar till önskat tillstånd i ett Azure Event Hubs-namnområde. Du kan påverka specifika namn på händelsehubben eller använda "*" för att påverka alla i namnområdet. Den här åtgärden kan hjälpa dig att testa meddelandeinfrastrukturen för underhåll eller felscenarier. Det här är ett diskret fel, så entiteten returneras inte automatiskt till starttillståndet.
Förutsättningar Ett Azure Event Hubs-namnområde med minst en händelsehubbentitet.
Urn urn:csci:microsoft:eventHub:changeEventHubState/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
desiredState Önskat tillstånd för målhändelsehubbarna. Möjliga tillstånd är Aktiv, Inaktiverad och SendDisabled.
eventHubs En kommaavgränsad lista över händelsehubbens namn i målnamnområdet. Använd *för att påverka alla entiteter i namnområdet.

JSON-exempel

{
  "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: Neka åtkomst

Property Värde
Kapacitetsnamn NekaAccess-1.0
Måltyp Microsoft-KeyVault
beskrivning Blockerar all nätverksåtkomst till ett nyckelvalv genom att tillfälligt ändra nätverksreglerna för nyckelvalvet. Den här åtgärden förhindrar att ett program som är beroende av nyckelvalvet kommer åt hemligheter, nycklar och/eller certifikat. Om nyckelvalvet tillåter åtkomst till alla nätverk ändras den här inställningen så att endast åtkomst tillåts från valda nätverk. Inga virtuella nätverk finns i listan över tillåtna i början av felet. Alla nätverk tillåts åtkomst i slutet av felvaraktigheten. Om nyckelvalvet är inställt på att endast tillåta åtkomst från valda nätverk tas alla virtuella nätverk i listan över tillåtna bort i början av felet. De återställs i slutet av felvaraktigheten.
Förutsättningar Målnyckelvalvet kan inte ha några brandväggsregler och får inte anges så att Azure-tjänster kan kringgå brandväggen. Om målnyckelvalvet är inställt på att endast tillåta åtkomst från valda nätverk måste det finnas minst en regel för virtuellt nätverk. Nyckelvalvet kan inte vara i återställningsläge.
Urn urn:csci:microsoft:keyVault:denyAccess/1.0
Feltyp Kontinuerliga.
Parametrar (nyckel, värde) Inga.

JSON-exempel

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

Key Vault: Inaktivera certifikat

Property Värde
Kapacitetsnamn DisableCertificate-1.0
Måltyp Microsoft-KeyVault
beskrivning Genom att använda certifikategenskaper inaktiverar felet certifikatet under en viss varaktighet (tillhandahålls av användaren). Det aktiverar certifikatet efter den här felvaraktigheten.
Förutsättningar Inga.
Urn urn:csci:microsoft:keyvault:disableCertificate/1.0
Feltyp Kontinuerliga.
Parametrar (nyckel, värde)
certificateName Namnet på Azure Key Vault-certifikatet som felet körs på.
version Certifikatversion som ska inaktiveras. Om den senaste versionen inte anges är den inaktiverad.

JSON-exempel

{
  "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: Öka certifikatversionen

Property Värde
Kapacitetsnamn IncrementCertificateVersion-1.0
Måltyp Microsoft-KeyVault
beskrivning Genererar en ny certifikatversion och tumavtryck med hjälp av Key Vault Certificate-klientbiblioteket. Det aktuella arbetscertifikatet uppgraderas till den här versionen. Certifikatversionen återställs inte efter felvaraktigheten.
Förutsättningar Inga.
Urn urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
certificateName Namnet på Azure Key Vault-certifikatet som felet körs på.

JSON-exempel

{
  "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: Uppdatera certifikatprincip

Property Värde
Kapacitetsnamn UpdateCertificatePolicy-1.0
Måltyp Microsoft-KeyVault
beskrivning Certifikatprinciper (till exempel certifikatets giltighetsperiod, certifikattyp, nyckelstorlek eller nyckeltyp) uppdateras baserat på användarens indata och återställs efter felvaraktigheten.
Förutsättningar Inga.
Urn urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0
Feltyp Kontinuerliga.
Parametrar (nyckel, värde)
certificateName Namnet på Azure Key Vault-certifikatet som felet körs på.
version Certifikatversion som ska uppdateras. Om den inte anges uppdateras den senaste versionen.
enabled Boolesk. Värde som anger om den nya certifikatversionen är aktiverad.
validityInMonths Giltighetsperioden för certifikatet i månader.
certificateTransparency Anger om certifikatet ska publiceras i listan över certifikattransparens när det skapas.
certificateType Certifikattyp.
Contenttype Certifikatets innehållstyp. Det är till exempel Pkcs12 när certifikatet innehåller råa PFX-byte eller Pem när det innehåller ASCII PEM-kodade byte. Pkcs12 är standardvärdet som antas.
Keysize RSA-nyckelns storlek: 2048, 3072 eller 4096.
Exporteras Boolesk. Värde som anger om certifikatnyckeln kan exporteras från valvet eller det säkra certifikatarkivet.
reuseKey Boolesk. Värde som anger om certifikatnyckeln ska återanvändas när certifikatet roteras.
Keytype Typ av säkerhetskopieringsnyckel som genereras när nya certifikat utfärdas, till exempel RSA eller EC.

JSON-exempel

{
  "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-säkerhetsregel

Property Värde
Kapacitetsnamn SecurityRule-1.0
Måltyp Microsoft-NetworkSecurityGroup
beskrivning Möjliggör manipulering eller regelskapande i en befintlig Azure-nätverkssäkerhetsgrupp (NSG) eller en uppsättning Azure NSG:er, förutsatt att regeldefinitionen gäller för säkerhetsgrupper. Användbart för:
  • Simulera ett avbrott i ett underordnat eller regionöverskridande beroende/icke-beroende.
  • Simulera en händelse som förväntas utlösa en logik för att tvinga fram en tjänstredundansväxling.
  • Simulera en händelse som förväntas utlösa en åtgärd från en övervaknings- eller tillståndshanteringstjänst.
  • Använda som ett alternativ för att blockera eller tillåta nätverkstrafik där Chaos Agent inte kan distribueras.
Förutsättningar Inga.
Urn urn:csci:microsoft:networkSecurityGroup:securityRule/1.0
Parametrar (nyckel, värde)
name Ett unikt namn för säkerhetsregeln som skapas. Felet misslyckas om det redan finns en annan regel i NSG:n med samma namn. Måste börja med en bokstav eller ett tal. Måste sluta med en bokstav, en siffra eller understreck. Får endast innehålla bokstäver, siffror, understreck, punkter eller bindestreck.
Protokollet Protokoll för säkerhetsregeln. Måste vara Any, TCP, UDP eller ICMP.
sourceAddresses En sträng som representerar en JSON-avgränsad matris med CIDR-formaterade IP-adresser. Kan också vara ett tjänsttaggnamn för en inkommande regel, AppServicetill exempel . En asterisk * kan också användas för att matcha alla käll-IP-adresser.
destinationAddresses En sträng som representerar en JSON-avgränsad matris med CIDR-formaterade IP-adresser. Kan också vara ett tjänsttaggnamn för en regel för utgående trafik, AppServicetill exempel . En asterisk * kan också användas för att matcha alla mål-IP-adresser.
åtgärd Åtkomsttyp för säkerhetsgrupper. Måste vara antingen Tillåt eller Neka.
destinationPortRanges En sträng som representerar en JSON-avgränsad matris med enskilda portar och/eller portintervall, till exempel 80 eller 1024-65535.
sourcePortRanges En sträng som representerar en JSON-avgränsad matris med enskilda portar och/eller portintervall, till exempel 80 eller 1024-65535.
prioritet Ett värde mellan 100 och 4096 som är unikt för alla säkerhetsregler i NSG. Felet misslyckas om det redan finns en annan regel i NSG:n med samma prioritet.
riktning Riktning på den trafik som påverkas av säkerhetsregeln. Måste vara antingen Inkommande eller Utgående.

JSON-exempel

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

Begränsningar

  • Felet kan bara tillämpas på en befintlig NSG.
  • När en NSG-regel som är avsedd att neka trafik tillämpas bryts inte befintliga anslutningar förrän de har varit inaktiva i 4 minuter. En lösning är att lägga till en annan gren i samma steg som använder ett fel som skulle orsaka att befintliga anslutningar bryts när NSG-felet tillämpas. Om du till exempel stoppar processen, tillfälligt stoppar tjänsten eller startar om den virtuella datorn kan anslutningar återställas.
  • Regler tillämpas i början av åtgärden. Eventuella externa ändringar av regeln under åtgärdens varaktighet gör att experimentet misslyckas.
  • Det går inte att skapa eller ändra regler för programsäkerhetsgrupp.
  • Prioritetsvärden måste vara unika för varje NSG-mål. Försök att skapa en ny regel som har samma prioritetsvärde som en annan gör att experimentet misslyckas.

Service Bus: Ändra kötillstånd

Property Värde
Kapacitetsnamn ChangeQueueState-1.0
Måltyp Microsoft-ServiceBus
beskrivning Ställer in köentiteter i ett Service Bus-namnområde till önskat tillstånd. Du kan påverka specifika entitetsnamn eller använda "*" för att påverka alla. Den här åtgärden kan hjälpa dig att testa meddelandeinfrastrukturen för underhåll eller felscenarier. Det här är ett diskret fel, så entiteten returneras inte automatiskt till starttillståndet.
Förutsättningar Ett Service Bus-namnområde med minst en köentitet.
Urn urn:csci:microsoft:serviceBus:changeQueueState/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
desiredState Önskat tillstånd för målköerna. Möjliga tillstånd är Aktiv, Inaktiverad, SendDisabled och ReceiveDisabled.
köer En kommaavgränsad lista över könamnen i målnamnområdet. Använd *för att påverka alla köer i namnområdet.

JSON-exempel

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

Begränsningar

  • Högst 1 000 köentiteter kan skickas till det här felet.

Service Bus: Ändra prenumerationstillstånd

Property Värde
Kapacitetsnamn ChangeSubscriptionState-1.0
Måltyp Microsoft-ServiceBus
beskrivning Anger prenumerationsentiteter i ett Service Bus-namnområde och Ämne till önskat tillstånd. Du kan påverka specifika entitetsnamn eller använda "*" för att påverka alla. Den här åtgärden kan hjälpa dig att testa meddelandeinfrastrukturen för underhåll eller felscenarier. Det här är ett diskret fel, så entiteten returneras inte automatiskt till starttillståndet.
Förutsättningar Ett Service Bus-namnområde med minst en prenumerationsentitet.
Urn urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
desiredState Önskat tillstånd för målprenumerationerna. Möjliga tillstånd är aktiva och inaktiverade.
Avsnitt Det överordnade ämnet som innehåller en eller flera prenumerationer som ska påverkas.
prenumerationer En kommaavgränsad lista över prenumerationsnamnen i målnamnområdet. Använd *för att påverka alla prenumerationer i namnområdet.

JSON-exempel

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

Begränsningar

  • Högst 1 000 prenumerationsentiteter kan skickas till det här felet.

Service Bus: Ändra ämnestillstånd

Property Värde
Kapacitetsnamn ChangeTopicState-1.0
Måltyp Microsoft-ServiceBus
beskrivning Anger de angivna ämnesentiteterna i ett Service Bus-namnområde till önskat tillstånd. Du kan påverka specifika entitetsnamn eller använda "*" för att påverka alla. Den här åtgärden kan hjälpa dig att testa meddelandeinfrastrukturen för underhåll eller felscenarier. Det här är ett diskret fel, så entiteten returneras inte automatiskt till starttillståndet.
Förutsättningar Ett Service Bus-namnområde med minst en ämnesentitet.
Urn urn:csci:microsoft:serviceBus:changeTopicState/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
desiredState Önskat tillstånd för målämnena. Möjliga tillstånd är aktiva och inaktiverade.
Ämnen En kommaavgränsad lista över ämnesnamnen i målnamnområdet. Använd *för att påverka alla ämnen i namnområdet.

JSON-exempel

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

Begränsningar

  • Högst 1 000 ämnesentiteter kan skickas till det här felet.

Distribuera om virtuell dator

Property Värde
Kapacitetsnamn Distribuera om-1.0
Måltyp Microsoft-VirtualMachine
beskrivning Distribuerar om en virtuell dator genom att stänga av den, flytta den till en ny nod i Azure-infrastrukturen och starta den igen. Detta hjälper dig att verifiera din arbetsbelastnings motståndskraft mot underhållshändelser.
Förutsättningar Inga.
Urn urn:csci:microsoft:virtualMachine:redeploy/1.0
Feltyp Diskret.
Parametrar (nyckel, värde) Inga.

JSON-exempel

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

Begränsningar

  • Omdistributionsåtgärden för virtuell dator begränsas inom ett intervall på 10 timmar. Om experimentet misslyckas med felet "För många omdistribueringsbegäranden" väntar du i 10 timmar för att försöka utföra experimentet igen.

Avstängning av virtuell dator

Property Värde
Kapacitetsnamn Avstängning-1.0
Måltyp Microsoft-VirtualMachine
Operativsystemtyper som stöds Windows, Linux.
beskrivning Stänger av en virtuell dator under hela felet. Startar om det i slutet av experimentet eller om experimentet avbryts. Endast virtuella Azure Resource Manager-datorer stöds.
Förutsättningar Inga.
Urn urn:csci:microsoft:virtualMachine:shutdown/1.0
Parametrar (nyckel, värde)
abruptShutdown (Valfritt) Booleskt värde som anger om den virtuella datorn ska stängas av korrekt eller plötsligt (destruktivt).

JSON-exempel

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

Avstängning av VMSS

Det här felet har två tillgängliga versioner som du kan använda, version 1.0 och version 2.0. Den största skillnaden är att version 2.0 gör att du kan filtrera efter tillgänglighetszoner och bara stänga av instanser inom en angiven zon eller zon.

VMSS-avstängning version 1.0

Property Värde
Kapacitetsnamn Version 1.0
Måltyp Microsoft-VirtualMachineScaleSet
Operativsystemtyper som stöds Windows, Linux.
beskrivning Stänger av eller stoppar en vm-skalningsuppsättningsinstans under felet och startar om den virtuella datorn i slutet av felvaraktigheten eller om experimentet avbryts.
Förutsättningar Inga.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0
Parametrar (nyckel, värde)
abruptShutdown (Valfritt) Booleskt värde som anger om den virtuella datorns skalningsuppsättningsinstans ska stängas av korrekt eller plötsligt (destruktivt).
instanser En sträng som är en avgränsad matris med instans-ID:t för vm-skalningsuppsättningar som felet tillämpas på.
JSON-exempelversion 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-avstängning version 2.0

Property Värde
Kapacitetsnamn Avstängning-2.0
Måltyp Microsoft-VirtualMachineScaleSet
Operativsystemtyper som stöds Windows, Linux.
beskrivning Stänger av eller stoppar en vm-skalningsuppsättningsinstans under felet. Startar om den virtuella datorn i slutet av felvaraktigheten eller om experimentet avbryts. Stöder dynamisk inriktning.
Förutsättningar Inga.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0
filter (Valfritt) Tillgänglig från och med version 2.0. Används för att filtrera listan över mål i en väljare. Stöder för närvarande filtrering i en lista över zoner. Filtret tillämpas endast på vm-skalningsuppsättningsresurser i en zon:
  • Om inget filter anges stänger det här felet av alla instanser i vm-skalningsuppsättningen.
  • Experimentet riktar sig till alla vm-skalningsuppsättningsinstanser i de angivna zonerna.
  • Om ett filter inte resulterar i några mål misslyckas experimentet.
Parametrar (nyckel, värde)
abruptShutdown (Valfritt) Booleskt värde som anger om den virtuella datorns skalningsuppsättningsinstans ska stängas av korrekt eller plötsligt (destruktivt).
JSON-exempelfragment i version 2.0

Följande kodfragment visar hur du konfigurerar både dynamisk filtrering och avstängningsfelet 2.0.

Konfigurera ett filter för dynamisk inriktning:

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

Konfigurera avstängningsfelet:

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

Begränsningar

För närvarande stöds endast vm-skalningsuppsättningar som konfigurerats med läget Enhetlig orkestrering. Om vm-skalningsuppsättningen använder flexibel orkestrering kan du använda avstängningsfelet för den virtuella Azure Resource Manager-datorn för att stänga av valda instanser.

Information: Orkestreringsåtgärder

Försening

Property Värde
Felprovider Ej tillämpligt
Operativsystemtyper som stöds Ej tillämpligt
beskrivning Lägger till en tidsfördröjning före, mellan eller efter andra experimentåtgärder. Den här åtgärden är inte ett fel och används för att synkronisera åtgärder i ett experiment. Använd den här åtgärden för att vänta tills effekten av ett fel visas i en tjänst eller vänta tills en aktivitet utanför experimentet har slutförts. Experimentet kan till exempel vänta tills autohealing inträffar innan ett annat fel matas in.
Förutsättningar Ej tillämpligt
Urn urn:csci:microsoft:chaosStudio:timedDelay/1.0
Varaktighet Varaktigheten för fördröjningen i ISO 8601-format (till exempel PT10M).

JSON-exempel

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

Starta belastningstest (Azure Load Testing)

Property Värde
Kapacitetsnamn Start-1.0
Måltyp Microsoft-AzureLoadTest
beskrivning Startar ett belastningstest (från Azure Load Testing) baserat på det angivna belastningstest-ID:t.
Förutsättningar Ett belastningstest med ett giltigt belastningstest-ID måste skapas i Azure Load Testing-tjänsten.
Urn urn:csci:microsoft:azureLoadTest:start/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
testID ID:t för ett specifikt belastningstest som skapats i Azure Load Testing-tjänsten.

JSON-exempel

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

Stoppa belastningstest (Azure Load Testing)

Property Värde
Kapacitetsnamn Stopp-1.0
Måltyp Microsoft-AzureLoadTest
beskrivning Stoppar ett belastningstest (från Azure Load Testing) baserat på det angivna belastningstest-ID:t.
Förutsättningar Ett belastningstest med ett giltigt belastningstest-ID måste skapas i Azure Load Testing-tjänsten.
Urn urn:csci:microsoft:azureLoadTest:stop/1.0
Feltyp Diskret.
Parametrar (nyckel, värde)
testID ID:t för ett specifikt belastningstest som skapats i Azure Load Testing-tjänsten.

JSON-exempel

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