Kesalahan dan pustaka tindakan Azure Chaos Studio

Artikel ini mencantumkan kesalahan yang dapat Anda gunakan di Chaos Studio, yang diatur oleh jenis sumber daya yang berlaku. Untuk memahami penetapan peran mana yang direkomendasikan untuk setiap jenis sumber daya, lihat Jenis sumber daya yang didukung dan penetapan peran untuk Azure Chaos Studio.

Kesalahan berbasis agen

Kesalahan berbasis agen disuntikkan ke Azure Virtual Machines atau instans Virtual Machine Scale Set dengan menginstal Chaos Studio Agent. Temukan opsi kesalahan langsung layanan untuk sumber daya ini di bawah ini dalam tabel Virtual Machine dan Virtual Machine Scale Set .

Jenis OS yang berlaku Nama kesalahan Skenario yang berlaku
Windows, Linux Tekanan CPU Kehilangan kapasitas komputasi, tekanan sumber daya
Windows, Linux Hentikan Proses Gangguan dependensi
Windows Jeda Proses Gangguan dependensi, gangguan layanan
Windows, Linux Pemutusan Sambungan Jaringan Gangguan jaringan
Windows, Linux Latensi Jaringan Penurunan performa jaringan
Windows, Linux Kehilangan Paket Jaringan Masalah keandalan jaringan
Windows, Linux Tekanan Memori Fisik Kehilangan kapasitas memori, tekanan sumber daya
Windows, Linux Hentikan Layanan Gangguan layanan/mulai ulang
Windows, Linux Perubahan Waktu Masalah sinkronisasi waktu
Windows, Linux Tekanan Memori Virtual Kehilangan kapasitas memori, tekanan sumber daya
Linux Stres-ng Arbitrer Pengujian stres sistem umum
Linux Tekanan DiskIO Linux Penurunan performa I/O Disk
Windows Tekanan DiskIO Penurunan performa I/O Disk
Windows Kegagalan DNS Masalah resolusi DNS
Windows Pemutusan Jaringan (Melalui Firewall) Gangguan jaringan

App Service

Bagian ini berlaku untuk Microsoft.Web/sites jenis sumber daya. Pelajari selengkapnya tentang App Service.

Nama kesalahan Skenario yang berlaku
Hentikan App Service Gangguan layanan

Setelan Skala Otomatis

Bagian ini berlaku untuk Microsoft.Insights/autoscaleSettings jenis sumber daya. Pelajari selengkapnya tentang Pengaturan Skala Otomatis.

Nama kesalahan Skenario yang berlaku
Nonaktifkan Autoscale Kehilangan kapasitas komputasi (saat digunakan dengan VMSS Shutdown)

Azure Kubernetes Service

Bagian ini berlaku untuk Microsoft.ContainerService/managedClusters jenis sumber daya. Pelajari selengkapnya tentang Azure Kubernetes Service.

Nama kesalahan Skenario yang berlaku
AKS Chaos Mesh DNS Chaos Masalah resolusi DNS
AKS Chaos Mesh HTTP Chaos Gangguan jaringan
AKS Chaos Mesh IO Chaos Degradasi/tekanan disk
AKS Chaos Mesh Kernel Chaos Gangguan kernel
AKS Chaos Mesh Network Chaos Gangguan jaringan
AKS Chaos Mesh Pod Chaos Gangguan kontainer
AKS Chaos Mesh Stress Chaos Pengujian stres sistem
AKS Chaos Mesh Time Chaos Masalah sinkronisasi waktu

Cloud Services (Klasik)

Bagian ini berlaku untuk Microsoft.ClassicCompute/domainNames jenis sumber daya. Pelajari selengkapnya tentang Cloud Services (Klasik).

Nama kesalahan Skenario yang berlaku
Penonaktifan Layanan Cloud Kehilangan komputasi

Cache terkluster untuk Redis

Bagian ini berlaku untuk Microsoft.Cache/redis jenis sumber daya. Pelajari selengkapnya tentang Clustered Cache for Redis.

Nama kesalahan Skenario yang berlaku
Azure Cache for Redis (Reboot) Gangguan dependensi (cache)

Cosmos DB

Bagian ini berlaku untuk Microsoft.DocumentDB/databaseAccounts jenis sumber daya. Pelajari selengkapnya tentang Cosmos DB.

Nama kesalahan Skenario yang berlaku
Cosmos DB Failover Kegagalan database

Event Hubs

Bagian ini berlaku untuk Microsoft.EventHub/namespaces jenis sumber daya. Pelajari selengkapnya tentang Azure Event Hubs.

Nama kesalahan Skenario yang berlaku
Ubah Status Pusat Aktivitas Kesalahan konfigurasi/gangguan infrastruktur olahpesan

Key Vault

Bagian ini berlaku untuk Microsoft.KeyVault/vaults jenis sumber daya. Pelajari selengkapnya tentang Azure Key Vault.

Nama kesalahan Skenario yang berlaku
Key Vault: Tolak Akses Penolakan sertifikat
Key Vault: Nonaktifkan Sertifikat Gangguan sertifikat
Key Vault: Versi Sertifikat Tambahan Kenaikan versi sertifikat
Key Vault: Memperbarui Kebijakan Sertifikat Perubahan/kesalahan konfigurasi kebijakan sertifikat

Kelompok Keamanan Jaringan

Bagian ini berlaku untuk Microsoft.Network/networkSecurityGroups jenis sumber daya. Pelajari selengkapnya tentang kelompok keamanan jaringan.

Nama kesalahan Skenario yang berlaku
Aturan Keamanan NSG Gangguan jaringan (untuk banyak layanan Azure)

Service Bus

Bagian ini berlaku untuk Microsoft.ServiceBus/namespaces jenis sumber daya. Pelajari selengkapnya tentang Bus Layanan.

Nama kesalahan Skenario yang berlaku
Ubah Status Antrean Kesalahan konfigurasi/gangguan infrastruktur olahpesan
Ubah Status Langganan Kesalahan konfigurasi/gangguan infrastruktur olahpesan
Ubah Status Topik Kesalahan konfigurasi/gangguan infrastruktur olahpesan

Virtual Machines (langsung layanan)

Bagian ini berlaku untuk Microsoft.Compute/virtualMachines jenis sumber daya. Pelajari selengkapnya tentang Virtual Machines.

Nama kesalahan Skenario yang berlaku
Penyebaran Ulang VM Gangguan komputasi, peristiwa pemeliharaan
Matikan VM Kehilangan/gangguan komputasi

Set Skala Komputer Virtual

Bagian ini berlaku untuk Microsoft.Compute/virtualMachineScaleSets jenis sumber daya. Pelajari selengkapnya tentang Virtual Machine Scale Sets.

Nama kesalahan Skenario yang berlaku
Matikan VMSS Kehilangan/gangguan komputasi
Matikan VMSS (2.0) Kehilangan/gangguan komputasi (berdasarkan Zona Ketersediaan)

Tindakan orkestrasi

Tindakan ini adalah blok penyusun untuk membangun eksperimen yang efektif. Gunakan dalam kombinasi dengan kesalahan lain, seperti menjalankan uji beban saat secara paralel mematikan instans komputasi di zona.

Kategori tindakan Nama kesalahan
Muat Mulai uji beban (Pengujian Beban Azure)
Muat Hentikan pengujian beban (Pengujian Beban Azure)
Penundaan waktu Tunda

Detail: Kesalahan berbasis agen

Pemutusan Jaringan

Properti Nilai
Nama kapabilitas NetworkDisconnect-1.1
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux.
Deskripsi Memblokir lalu lintas jaringan keluar untuk rentang port dan blok jaringan tertentu. Setidaknya satu destinasiFilter atau array inboundDestinationFilter harus disediakan.
Prasyarat Windows: Agen harus berjalan sebagai administrator, yang terjadi secara default jika diinstal sebagai ekstensi VM.
Linux: Paket tc (Kontrol Lalu Lintas) digunakan untuk kesalahan jaringan. Jika belum diinstal, agen secara otomatis mencoba menginstalnya dari manajer paket default.
Urn urn:csci:microsoft:agent:networkDisconnect/1.1
Parameter (kunci, nilai)
destinationFilters Array JSON filter paket yang dibatasi menentukan paket keluar mana yang akan ditargetkan. Maksimum 16.
inboundDestinationFilters Array JSON yang dibatasi dari filter paket yang menentukan paket masuk mana yang akan ditargetkan. Maksimum 16.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

Parameter destinationFilters dan inboundDestinationFilters menggunakan array filter paket berikut.

Properti Nilai
address Alamat IP yang menunjukkan dimulainya rentang IP.
subnetMask Subnet mask untuk rentang alamat IP.
portLow (Opsional) Nomor port awal rentang port.
portHigh (Opsional) Nomor port akhir rentang port.

JSON Sampel

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

Batasan

  • Kesalahan jaringan berbasis agen saat ini hanya mendukung alamat IPv4.
  • Kesalahan pemutusan sambungan hanya memengaruhi koneksi baru. Koneksi aktif yang ada terus berlanjut. Anda dapat menghidupkan ulang layanan atau proses untuk memaksa koneksi agar terputus.
  • Saat berjalan di Windows, kesalahan pemutusan jaringan saat ini hanya berfungsi dengan paket TCP atau UDP.

Pemutusan Jaringan (Melalui Firewall)

Properti Nilai
Nama kapabilitas NetworkDisconnectViaFirewall-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows
Deskripsi Menerapkan aturan firewall Windows untuk memblokir lalu lintas keluar untuk rentang port dan blok jaringan tertentu.
Prasyarat Agen harus berjalan sebagai administrator. Jika agen diinstal sebagai ekstensi VM, agen berjalan sebagai administrator secara default.
Urn urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0
Parameter (kunci, nilai)
destinationFilters Array JSON yang dibatasi dari filter paket yang menentukan paket keluar mana yang akan ditargetkan untuk injeksi kesalahan.
address Alamat IP yang menunjukkan dimulainya rentang IP.
subnetMask Subnet mask untuk rentang alamat IP.
portLow (Opsional) Nomor port awal rentang port.
portHigh (Opsional) Nomor port akhir rentang port.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Batasan

  • Kesalahan jaringan berbasis agen saat ini hanya mendukung alamat IPv4.

Latensi Jaringan

Properti Nilai
Nama kapabilitas Latensi Jaringan-1.1
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux (hanya lalu lintas keluar)
Deskripsi Meningkatkan latensi jaringan untuk rentang port dan blok jaringan tertentu. Setidaknya satu destinasiFilter atau array inboundDestinationFilter harus disediakan.
Prasyarat Windows: Agen harus berjalan sebagai administrator, yang terjadi secara default jika diinstal sebagai ekstensi VM.
Linux: Paket tc (Kontrol Lalu Lintas) digunakan untuk kesalahan jaringan. Jika belum diinstal, agen secara otomatis mencoba menginstalnya dari manajer paket default.
Urn urn:csci:microsoft:agent:networkLatency/1.1
Parameter (kunci, nilai)
latencyInMilliseconds Jumlah latensi yang akan diterapkan dalam milidetik.
destinationFilters Array JSON filter paket yang dibatasi menentukan paket keluar mana yang akan ditargetkan. Maksimum 16.
inboundDestinationFilters Array JSON yang dibatasi dari filter paket yang menentukan paket masuk mana yang akan ditargetkan. Maksimum 16.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

Parameter destinationFilters dan inboundDestinationFilters menggunakan array filter paket berikut.

Properti Nilai
address Alamat IP yang menunjukkan dimulainya rentang IP.
subnetMask Subnet mask untuk rentang alamat IP.
portLow (Opsional) Nomor port awal rentang port.
portHigh (Opsional) Nomor port akhir rentang port.

JSON Sampel

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

Batasan

  • Kesalahan jaringan berbasis agen saat ini hanya mendukung alamat IPv4.
  • Saat berjalan di Linux, kesalahan latensi jaringan hanya dapat memengaruhi lalu lintas keluar , bukan lalu lintas masuk. Kesalahan dapat memengaruhi lalu lintas masuk dan keluar di lingkungan Windows (melalui inboundDestinationFilters parameter dan destinationFilters ).
  • Saat berjalan di Windows, kesalahan latensi jaringan saat ini hanya berfungsi dengan paket TCP atau UDP.

Kehilangan Paket Jaringan

Properti Nilai
Nama kapabilitas NetworkPacketLoss-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux
Deskripsi Memperkenalkan kehilangan paket untuk lalu lintas keluar pada tingkat tertentu, antara 0,0 (tidak ada paket yang hilang) dan 1,0 (semua paket hilang). Tindakan ini dapat membantu mensimulasikan skenario seperti kemacetan jaringan atau masalah perangkat keras jaringan.
Prasyarat Windows: Agen harus berjalan sebagai administrator, yang terjadi secara default jika diinstal sebagai ekstensi VM.
Linux: Paket tc (Kontrol Lalu Lintas) digunakan untuk kesalahan jaringan. Jika belum diinstal, agen secara otomatis mencoba menginstalnya dari manajer paket default.
Urn urn:csci:microsoft:agent:networkPacketLoss/1.0
Parameter (kunci, nilai)
packetLossRate Tingkat di mana paket yang cocok dengan filter tujuan akan hilang, mulai dari 0,0 hingga 1,0.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.
destinationFilters Array JSON yang dibatasi dari filter paket (parameter di bawah) yang menentukan paket keluar mana yang akan ditargetkan untuk injeksi kesalahan. Maksimum tiga.
address Alamat IP yang menunjukkan dimulainya rentang IP.
subnetMask Subnet mask untuk rentang alamat IP.
portLow (Opsional) Nomor port awal rentang port.
portHigh (Opsional) Nomor port akhir rentang port.

JSON Sampel

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

Batasan

  • Kesalahan jaringan berbasis agen saat ini hanya mendukung alamat IPv4.
  • Saat berjalan di Windows, kesalahan kehilangan paket jaringan saat ini hanya berfungsi dengan paket TCP atau UDP.

Kegagalan DNS

Properti Nilai
Nama kapabilitas DnsFailure-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows
Deskripsi Mengganti respons permintaan pencarian DNS dengan kode kesalahan tertentu. Permintaan pencarian DNS yang diganti harus:
  • Berasal dari VM.
  • Cocokkan parameter kesalahan yang ditentukan.
Pencarian DNS yang tidak dibuat oleh klien DNS Windows tidak terpengaruh oleh kesalahan ini.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:dnsFailure/1.0
Parameter (kunci, nilai)
penyelenggara Array JSON yang Dibatasi nama host agar permintaan pencarian DNS gagal.

Properti ini menerima kartubebas (*), tetapi hanya untuk subdomain pertama dalam alamat dan hanya berlaku untuk subdomain yang ditentukan. Contohnya:
  • *.microsoft.com didukung.
  • subdomain.*.microsoft tidak didukung.
  • *.microsoft.com tidak berfungsi untuk beberapa subdomain dalam alamat, seperti subdomain1.subdomain2.microsoft.com.
dnsFailureReturnCode Kode galat DNS yang akan dikembalikan ke klien untuk kegagalan pencarian (FormErr, ServFail, NXDomain, NotImp, Refused, XDomain, YXRRSet, NXRRSet, NotAuth, NotZone). Untuk informasi selengkapnya tentang kode pengembalian DNS, lihat situs web IANA.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Batasan

  • Kesalahan Kegagalan DNS memerlukan Windows 2019 RS5 atau yang lebih baru.
  • Singgahan DNS diabaikan selama durasi kesalahan untuk nama host yang ditentukan dalam kesalahan.

Tekanan CPU

Properti Nilai
Nama kapabilitas CPUPressure-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux.
Deskripsi Menambahkan tekanan CPU, hingga nilai yang ditentukan, pada VM tempat kesalahan ini disuntikkan selama tindakan kesalahan. Tekanan CPU buatan dihapus pada akhir durasi atau jika eksperimen dibatalkan. Pada Windows, penghitung kinerja Utilitas Prosesor % digunakan pada kesalahan mulai untuk menentukan persentase CPU saat ini, yang dikurangi dari pressureLevel yang ditentukan dalam kesalahan sehingga % Utilitas Prosesor mencapai sekitar pressureLevel yang ditentukan dalam parameter kesalahan.
Prasyarat Linux: Utilitas stress-ng perlu diinstal. Penginstalan terjadi secara otomatis sebagai bagian dari penginstalan agen, menggunakan manajer paket default, pada beberapa sistem operasi termasuk berbasis Debian (seperti Ubuntu), Red Hat Enterprise Linux, dan OpenSUSE. Untuk distribusi lain, termasuk Azure Linux, Anda harus menginstal stress-ng secara manual. Untuk informasi selengkapnya, lihat repositori proyek upstram.
Windows: Tidak ada.
Urn urn:csci:microsoft:agent:cpuPressure/1.0
Parameter (kunci, nilai)
pressureLevel Bilangan bulat antara 1 dan 99 yang menunjukkan berapa banyak tekanan CPU (%) yang diterapkan ke VM dalam hal % Penggunaan CPU
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Batasan

Masalah yang diketahui di Linux:

  • Efek stres mungkin tidak dihentikan dengan benar jika AzureChaosAgent secara tak terduga dibunuh.

Tekanan Memori Fisik

Properti Nilai
Nama kapabilitas PhysicalMemoryPressure-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux.
Deskripsi Menambahkan tekanan memori fisik, hingga nilai yang ditentukan, pada VM tempat kesalahan ini disuntikkan selama tindakan kesalahan. Tekanan memori fisik buatan dihilangkan pada akhir durasi atau jika eksperimen dibatalkan.
Prasyarat Linux: Utilitas stress-ng perlu diinstal. Penginstalan terjadi secara otomatis sebagai bagian dari penginstalan agen, menggunakan manajer paket default, pada beberapa sistem operasi termasuk berbasis Debian (seperti Ubuntu), Red Hat Enterprise Linux, dan OpenSUSE. Untuk distribusi lain, termasuk Azure Linux, Anda harus menginstal stress-ng secara manual. Untuk informasi selengkapnya, lihat repositori proyek upstram.
Windows: Tidak ada.
Urn urn:csci:microsoft:agent:physicalMemoryPressure/1.0
Parameter (kunci, nilai)
pressureLevel Bilangan bulat antara 1 dan 99 yang menunjukkan berapa banyak tekanan memori fisik (%) yang diterapkan ke VM.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Batasan

Saat ini, agen Windows tidak mengurangi tekanan memori ketika aplikasi lain meningkatkan penggunaan memori mereka. Jika penggunaan memori keseluruhan melebihi 100%, agen Windows mungkin mengalami crash.

Tekanan Memori Virtual

Properti Nilai
Nama kapabilitas VirtualMemoryPressure-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows
Deskripsi Menambahkan tekanan memori virtual, hingga nilai yang ditentukan, pada VM tempat kesalahan ini disuntikkan selama tindakan kesalahan. Tekanan memori virtual buatan dihapus pada akhir durasi atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:virtualMemoryPressure/1.0
Parameter (kunci, nilai)
pressureLevel Bilangan bulat antara 1 dan 99 yang menunjukkan berapa banyak tekanan memori fisik (%) yang diterapkan ke VM.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Tekanan IO Disk

Properti Nilai
Nama kapabilitas DiskIOPressure-1.1
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows
Deskripsi Menggunakan utilitas diskspd untuk menambahkan tekanan disk ke Komputer Virtual. Tekanan ditambahkan ke disk utama secara default, atau disk yang ditentukan dengan parameter targetTempDirectory. Kesalahan ini memiliki lima mode eksekusi yang berbeda. Tekanan disk buatan dihapus pada akhir durasi atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:diskIOPressure/1.1
Parameter (kunci, nilai)
pressureMode Mode prasetel tekanan disk untuk ditambahkan ke penyimpanan utama mesin virtual. Harus salah satu dalam PressureModes tabel berikut.
targetTempDirectory (Opsional) Direktori yang digunakan untuk menerapkan tekanan disk. Contohnya,D:/Temp. Jika parameter tidak disertakan, tekanan ditambahkan ke disk utama.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

Mode tekanan

PressureMode Deskripsi
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
Default numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50

JSON Sampel

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

Tekanan IO Disk Linux

Properti Nilai
Nama kapabilitas LinuxDiskIOPressure-1.1
Jenis target Microsoft-Agent
Jenis OS yang didukung Linux
Deskripsi Gunakan stress-ng untuk memberikan tekanan pada disk. Satu atau lebih proses pekerja muncul yang melakukan proses I/O dengan file sementara. Tekanan ditambahkan ke disk utama secara default, atau disk yang ditentukan dengan parameter targetTempDirectory. Untuk informasi tentang bagaimana tekanan diterapkan, lihat artikel stres-ng .
Prasyarat Linux: Utilitas stress-ng perlu diinstal. Penginstalan terjadi secara otomatis sebagai bagian dari penginstalan agen, menggunakan manajer paket default, pada beberapa sistem operasi termasuk berbasis Debian (seperti Ubuntu), Red Hat Enterprise Linux, dan OpenSUSE. Untuk distribusi lain, termasuk Azure Linux, Anda harus menginstal stress-ng secara manual. Untuk informasi selengkapnya, lihat repositori proyek upstram.
Urn urn:csci:microsoft:agent:linuxDiskIOPressure/1.1
Parameter (kunci, nilai)
workerCount Jumlah proses pekerja untuk dijalankan. Pengaturan workerCount ke 0 menghasilkan proses pekerja sebanyak ada jumlah prosesor.
fileSizePerWorker Ukuran file sementara yang ditentang pekerja untuk melakukan operasi I/O. Bilangan bulat ditambah unit dalam byte (b), kilobyte (k), megabyte (m), atau gigabyte (g) (misalnya, 4m untuk 4 megabyte dan 256g untuk 256 gigabyte).
blockSize Ukuran blok yang akan digunakan untuk operasi I/O disk, lebih besar dari 1 byte dan kurang dari 4 megabyte (nilai maksimum adalah 4095k). Bilangan bulat ditambah unit dalam byte, kilobyte, atau megabyte (misalnya, 512k untuk 512 kilobyte).
targetTempDirectory (Opsional) Direktori yang digunakan untuk menerapkan tekanan disk. Contohnya,/tmp/. Jika parameter tidak disertakan, tekanan ditambahkan ke disk utama.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

Nilai sampel ini menghasilkan ~100% tekanan disk saat diuji pada Standard_D2s_v3 komputer virtual dengan Premium SSD LRS. File besarSizePerWorker dan blockSize yang lebih kecil membantu menekankan disk sepenuhnya.

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

Hentikan Layanan

Properti Nilai
Nama kapabilitas StopService-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux.
Deskripsi Menghentikan layanan Windows atau layanan sistem Linux selama kesalahan. Memulai ulang pada akhir durasi atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:stopService/1.0
Parameter (kunci, nilai)
serviceName Nama layanan Windows atau layanan sistem Linux yang ingin Anda hentikan.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Batasan

  • Windows: Nama tampilan untuk layanan tidak didukung. Gunakan sc.exe query di prompt perintah untuk menjelajahi nama layanan.
  • Linux: Jenis layanan lain selain systemd, seperti sysvinit, tidak didukung.

Hentikan Proses

Properti Nilai
Nama kapabilitas KillProcess-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows, Linux.
Deskripsi Matikan semua instans proses yang berjalan yang cocok dengan nama proses yang dikirim dalam parameter kesalahan. Dalam durasi yang ditetapkan untuk tindakan kesalahan, proses dimatikan secara berulang berdasarkan nilai interval penghentian yang ditentukan. Kesalahan ini adalah kesalahan yang merusak di mana admin sistem perlu memulihkan proses secara manual jika penyembuhan sendiri dikonfigurasi untuk itu.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:killProcess/1.0
Parameter (kunci, nilai)
processName Nama proses untuk terus membunuh (tanpa .exe). Proses tidak perlu berjalan ketika kesalahan mulai dijalankan.
killIntervalInMilliseconds Jumlah waktu kesalahan menunggu di antara upaya pembunuhan berturut-turut dalam milidetik.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Jeda Proses

Properti Nilai
Nama kapabilitas PauseProcess-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows.
Deskripsi Menjeda (menangguhkan) proses yang ditentukan selama durasi yang ditentukan. Jika ada beberapa proses dengan nama yang sama, kesalahan ini menangguhkan semua proses tersebut. Dalam durasi kesalahan, proses dijeda berulang pada interval yang ditentukan. Pada akhir durasi atau jika eksperimen dibatalkan, proses akan dilanjutkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:pauseProcess/1.0
Parameter (kunci, nilai)
processNames Array JSON yang dibatasi dari nama proses yang menentukan proses mana yang akan dijeda. Maksimum 4. Nama proses dapat secara opsional menyertakan ekstensi ".exe".
pauseIntervalInMilliseconds Jumlah waktu kesalahan menunggu antara upaya jeda berturut-turut, dalam milidetik.
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

{
  "name": "branchOne",
  "actions": [
    {
      "type": "continuous",
      "name": "urn:csci:microsoft:agent:pauseProcess/1.0",
      "parameters": [
        {
          "key": "processNames",
          "value": "[ \"test-0\", \"test-1.exe\" ]"
        },
        {
          "key": "pauseIntervalInMilliseconds",
          "value": "1000"
        }
      ],
      "duration": "PT10M",
      "selectorid": "myResources"
    }
  ]
}

Batasan

Saat ini, maksimal 4 nama proses dapat dicantumkan dalam parameter processNames.

Perubahan Waktu

Properti Nilai
Nama kapabilitas TimeChange-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Windows
Deskripsi Mengubah waktu sistem komputer virtual dan mengatur ulang waktu di akhir eksperimen atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:agent:timeChange/1.0
Parameter (kunci, nilai)
tanggalWaktu String DateTime dalam format ISO8601. Jika YYYY-MM-DD nilai hilang, nilai tersebut default ke hari ini saat eksperimen berjalan. Jika nilai Thh:mm:ss tidak ada, nilai defaultnya adalah 12:00:00. Jika tahun 2 digit disediakan (YY), tahun tersebut dikonversi ke tahun 4 digit (YYYY) berdasarkan abad saat ini. Jika zona <Z> waktu hilang, offset default adalah zona waktu lokal. <Z> harus selalu menyertakan simbol tanda (negatif atau positif).
virtualMachineScaleSetInstances Array ID instans saat Anda menerapkan kesalahan ini ke set skala komputer virtual. Diperlukan untuk set skala komputer virtual dalam mode orkestrasi seragam. Pelajari selengkapnya tentang ID instans.

JSON Sampel

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

Stres-ng Arbitrer

Properti Nilai
Nama kapabilitas StressNg-1.0
Jenis target Microsoft-Agent
Jenis OS yang didukung Linux
Deskripsi Menjalankan perintah stress-ng dengan meneruskan argumen langsung ke stress-ng. Berguna ketika salah satu kesalahan yang telah ditentukan sebelumnya untuk stres-ng tidak memenuhi kebutuhan Anda.
Prasyarat Linux: Utilitas stress-ng perlu diinstal. Penginstalan terjadi secara otomatis sebagai bagian dari penginstalan agen, menggunakan manajer paket default, pada beberapa sistem operasi termasuk berbasis Debian (seperti Ubuntu), Red Hat Enterprise Linux, dan OpenSUSE. Untuk distribusi lain, termasuk Azure Linux, Anda harus menginstal stress-ng secara manual. Untuk informasi selengkapnya, lihat repositori proyek upstram.
Urn urn:csci:microsoft:agent:stressNg/1.0
Parameter (kunci, nilai)
stressNgArguments Satu atau lebih argumen untuk diteruskan ke proses stress-ng. Untuk informasi tentang kemungkinan argumen stres-ng, lihat artikel stres-ng . CATATAN: JANGAN sertakan argumen "-t" karena akan menyebabkan kesalahan. Panjang eksperimen didefinisikan langsung dalam antarmuka pengguna eksperimen chaos Azure, BUKAN di stressNgArguments.

JSON Sampel

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

Detail: Kesalahan langsung layanan

Hentikan App Service

Properti Nilai
Nama kapabilitas Stop-1.0
Jenis target Microsoft-AppService
Deskripsi Menghentikan aplikasi App Service yang ditargetkan, lalu memulai ulang aplikasi tersebut di akhir durasi kesalahan. Tindakan ini berlaku untuk sumber daya jenis "Microsoft.Web/sites", termasuk App Service, API Apps, Mobile Apps, dan Azure Functions.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:appService:stop/1.0
Jenis kesalahan Berkelanjutan.
Parameter (kunci, nilai) Tidak ada.

JSON Sampel

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

Nonaktifkan Autoscale

Properti Nilai
Nama kapabilitas DisaleAutoscale
Jenis target Microsoft-Autoscale Pengaturan
Deskripsi Menonaktifkan layanan skala otomatis. Saat skala otomatis dinonaktifkan, sumber daya seperti set skala komputer virtual, aplikasi web, bus layanan, dan lainnya tidak secara otomatis ditambahkan atau dihapus berdasarkan beban aplikasi.
Prasyarat Sumber daya autoScalesetting yang diaktifkan pada sumber daya harus di-onboard ke Chaos Studio.
Urn urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0
Jenis kesalahan Berkelanjutan.
Parameter (kunci, nilai)
enableOnComplete Boolean. Mengonfigurasi apakah autoscaling dapat diaktifkan kembali setelah tindakan selesai. Defaultnya adalah true.

JSON Sampel

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

Properti Nilai
Nama kapabilitas NetworkChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan kesalahan jaringan yang tersedia melalui Chaos Mesh berjalan terhadap kluster Azure Kubernetes Service (AKS). Berguna untuk membuat ulang insiden AKS yang diakibatkan oleh pemadaman jaringan, penundaan, duplikasi, kehilangan, dan kerusakan.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis NetworkChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas PodChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan kesalahan pod yang tersedia melalui Chaos Mesh untuk dijalankan terhadap kluster AKS Anda. Berguna untuk membuat ulang insiden AKS yang merupakan akibat dari kegagalan pod atau masalah kontainer.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis PodChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas StressChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan kesalahan stres yang tersedia melalui Chaos Mesh untuk dijalankan terhadap kluster AKS Anda. Berguna untuk membuat ulang insiden AKS karena stres pada kumpulan pod, misalnya, karena konsumsi CPU atau memori yang tinggi.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis StressChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas IOChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan kesalahan IO yang tersedia melalui Chaos Mesh untuk dijalankan terhadap kluster AKS Anda. Berguna untuk membuat ulang insiden AKS karena keterlambatan IO dan kegagalan baca/tulis saat Anda menggunakan panggilan sistem IO seperti open, read, dan write.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis IOChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas TimeChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan perubahan jam sistem pada kluster AKS Anda dengan menggunakan Chaos Mesh. Berguna untuk membuat ulang insiden AKS yang diakibatkan oleh sistem terdistribusi yang tidak sinkron, logika tahun kabut/lompatan kedua yang hilang/salah, dan banyak lagi.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis TimeChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas KernelChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan kesalahan kernel yang tersedia melalui Chaos Mesh untuk dijalankan terhadap kluster AKS Anda. Berguna untuk membuat ulang insiden AKS karena kesalahan tingkat kernel Linux, seperti pemasangan gagal atau memori tidak dialokasikan.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis KernelChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas HTTPChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan fault HTTP tersedia melalui Chaos Mesh untuk dijalankan dalam kluster AKS. Berguna untuk membuat ulang insiden karena permintaan HTTP dan kegagalan pemrosesan respons, seperti respons yang tertunda atau salah.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis HTTPChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Properti Nilai
Nama kapabilitas DNSChaos-2.1
Jenis target Microsoft-AzureKubernetesServiceChaosMesh
Jenis OS kumpulan simpul yang didukung Linux
Deskripsi Menyebabkan fault DNS yang tersedia melalui Chaos Mesh untuk dijalankan di kluster AKS. Berguna untuk membuat ulang insiden karena kegagalan DNS.
Prasyarat Kluster AKS harus menyebarkan Chaos Mesh dan menginstal layanan DNS.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1
Parameter (kunci, nilai)
jsonSpec Spesifikasi Chaos Mesh berformat JSON yang menggunakan jenis DNSChaos. Anda dapat menggunakan konverter YAML-ke-JSON seperti Konversi YAML Ke JSON untuk mengonversi CHAOS Mesh YAML ke JSON dan menambangnya. Gunakan tanda kutip tunggal dalam JSON atau lolos dari tanda kutip dengan karakter garis miring terbelakang. Hanya sertakan YAML di jsonSpec bawah properti . Jangan sertakan informasi seperti metadata dan jenis. Menentukan durasi dalam jsonSpec tidak diperlukan, tetapi digunakan jika tersedia.

JSON Sampel

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

Penonaktifan Cloud Services (Klasik)

Properti Nilai
Nama kapabilitas Shutdown-1.0
Jenis target Microsoft-DomainName
Deskripsi Menghentikan penyebaran selama kesalahan. Memulai ulang penyebaran di akhir durasi kesalahan atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:domainName:shutdown/1.0
Jenis kesalahan Berkelanjutan.
Parameter Tidak ada.

JSON Sampel

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

Azure Cache for Redis (Reboot)

Properti Nilai
Nama kapabilitas Reboot-1.0
Jenis target Microsoft-AzureClusteredCacheForRedis
Deskripsi Menyebabkan operasi mulai ulang paksa terjadi pada target untuk mensimulasikan ketidaktersediaan singkat.
Prasyarat T/A
Urn urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
rebootType Jenis node tempat tindakan reboot akan dilakukan, yang dapat ditentukan sebagai PrimaryNode, SecondaryNode, atau AllNodes.
shardId ID pecahan yang akan dimulai ulang. Hanya relevan untuk cache tingkat Premium.

JSON Sampel

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

Batasan

  • Kesalahan boot ulang menyebabkan boot ulang paksa untuk mensimulasikan peristiwa pemadaman dengan lebih baik, yang berarti ada potensi kehilangan data terjadi.
  • Kesalahan mulai ulang adalah jenis kesalahan diskret. Tidak seperti kesalahan berkelanjutan, ini adalah tindakan satu kali dan tidak memiliki durasi.

Cosmos DB Failover

Properti Nilai
Nama kapabilitas Failover-1.0
Jenis target Microsoft-CosmosDB
Deskripsi Menyebabkan akun Azure Cosmos DB dengan satu wilayah tulis gagal ke wilayah baca tertentu untuk mensimulasikan pemadaman wilayah tulis.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:cosmosDB:failover/1.0
Parameter (kunci, nilai)
readRegion Wilayah baca yang harus dipromosikan ke wilayah tulis selama failover, misalnya, East US 2.

JSON Sampel

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

Ubah Status Pusat Aktivitas

Properti Nilai
Nama kapabilitas ChangeEventHubState-1.0
Jenis target Microsoft-EventHub
Deskripsi Mengatur hub peristiwa individual ke status yang diinginkan dalam namespace Azure Event Hubs. Anda dapat memengaruhi nama hub peristiwa tertentu atau menggunakan "*" untuk memengaruhi semua dalam namespace layanan. Tindakan ini dapat membantu menguji infrastruktur olahpesan Anda untuk skenario pemeliharaan atau kegagalan. Ini adalah kesalahan diskrit, sehingga entitas tidak akan dikembalikan ke status awal secara otomatis.
Prasyarat Namespace Azure Event Hubs dengan setidaknya satu entitas hub peristiwa.
Urn urn:csci:microsoft:eventHub:changeEventHubState/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
desiredState Status yang diinginkan untuk hub peristiwa yang ditargetkan. Status yang mungkin adalah Aktif, Dinonaktifkan, dan SendDisabled.
eventHubs Daftar nama pusat aktivitas yang dipisahkan koma dalam namespace layanan yang ditargetkan. Gunakan "*" untuk memengaruhi semua entitas dalam namespace layanan.

JSON Sampel

{
  "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: Tolak Akses

Properti Nilai
Nama kapabilitas DenyAccess-1.0
Jenis target Microsoft-KeyVault
Deskripsi Memblokir semua akses jaringan ke brankas kunci dengan memodifikasi aturan jaringan brankas kunci untuk sementara. Tindakan ini mencegah aplikasi bergantung pada brankas kunci mengakses rahasia, kunci, dan/atau sertifikat. Jika brankas kunci mengizinkan akses ke semua jaringan, pengaturan ini diubah untuk hanya mengizinkan akses dari jaringan yang dipilih. Tidak ada jaringan virtual dalam daftar yang diizinkan di awal kesalahan. Semua jaringan diperbolehkan mengakses di akhir durasi kesalahan. Jika brankas kunci diatur untuk hanya mengizinkan akses dari jaringan yang dipilih, jaringan virtual apa pun dalam daftar yang diizinkan akan dihapus di awal kesalahan. Mereka dipulihkan pada akhir durasi kesalahan.
Prasyarat Brankas kunci target tidak dapat memiliki aturan firewall apa pun dan tidak boleh diatur untuk mengizinkan layanan Azure melewati firewall. Jika brankas kunci target diatur untuk hanya mengizinkan akses dari jaringan yang dipilih, setidaknya harus ada satu aturan jaringan virtual. Brankas kunci tidak dapat berada dalam mode pemulihan.
Urn urn:csci:microsoft:keyVault:denyAccess/1.0
Jenis kesalahan Berkelanjutan.
Parameter (kunci, nilai) Tidak ada.

JSON Sampel

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

Key Vault: Nonaktifkan Sertifikat

Properti Nilai
Nama kapabilitas DisableCertificate-1.0
Jenis target Microsoft-KeyVault
Deskripsi Dengan menggunakan properti sertifikat, kesalahan menonaktifkan sertifikat untuk durasi tertentu (disediakan oleh pengguna). Ini memungkinkan sertifikat setelah durasi kesalahan ini.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:keyvault:disableCertificate/1.0
Jenis kesalahan Berkelanjutan.
Parameter (kunci, nilai)
certificateName Nama sertifikat Azure Key Vault tempat kesalahan dijalankan.
versi Versi sertifikat yang harus dinonaktifkan. Jika tidak ditentukan, versi terbaru dinonaktifkan.

JSON Sampel

{
  "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: Versi Sertifikat Tambahan

Properti Nilai
Nama kapabilitas IncrementCertificateVersion-1.0
Jenis target Microsoft-KeyVault
Deskripsi Menghasilkan versi sertifikat dan thumbprint baru dengan menggunakan pustaka klien Sertifikat Key Vault. Sertifikat kerja saat ini dimutakhirkan ke versi ini. Versi sertifikat tidak dikembalikan setelah durasi kesalahan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
certificateName Nama sertifikat Azure Key Vault tempat kesalahan dijalankan.

JSON Sampel

{
  "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: Memperbarui Kebijakan Sertifikat

Properti Nilai
Nama kapabilitas UpdateCertificatePolicy-1.0
Jenis target Microsoft-KeyVault
Deskripsi Kebijakan sertifikat (misalnya, periode validitas sertifikat, jenis sertifikat, ukuran kunci, atau jenis kunci) diperbarui berdasarkan input pengguna dan dikembalikan setelah durasi kesalahan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0
Jenis kesalahan Berkelanjutan.
Parameter (kunci, nilai)
certificateName Nama sertifikat Azure Key Vault tempat kesalahan dijalankan.
versi Versi sertifikat yang harus diperbarui. Jika tidak ditentukan, versi terbaru diperbarui.
diaktifkan Boolean. Nilai yang menunjukkan apakah versi sertifikat baru diaktifkan.
validityInMonths Periode validitas sertifikat dalam bulan.
certificateTransparency Menunjukkan apakah sertifikat harus diterbitkan ke daftar transparansi sertifikat saat dibuat.
certificateType Jenis sertifikat.
contentType Tipe konten sertifikat. Misalnya, itu Pkcs12 ketika sertifikat berisi byte PFX mentah atau Pem ketika berisi byte yang dikodekan PEM ASCII. Pkcs12 adalah nilai default yang diasumsikan.
keySize Ukuran kunci RSA: 2048, 3072, atau 4096.
Ekspor Boolean. Nilai yang menunjukkan apakah kunci sertifikat dapat diekspor dari brankas atau penyimpanan sertifikat aman.
reuseKey Boolean. Nilai yang menunjukkan apakah kunci sertifikat harus digunakan kembali saat sertifikat diputar.
keyType Jenis kunci cadangan yang dihasilkan saat sertifikat baru dikeluarkan, seperti RSA atau EC.

JSON Sampel

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

Aturan Keamanan NSG

Properti Nilai
Nama kapabilitas SecurityRule-1.0
Jenis target Microsoft-NetworkSecurityGroup
Deskripsi Mengaktifkan manipulasi atau pembuatan aturan di grup keamanan jaringan Azure (NSG) atau set Azure NSG yang ada, dengan asumsi definisi aturan berlaku di seluruh grup keamanan. Berguna untuk:
  • Mensimulasikan pemadaman dependensi/nondependensi hilir atau lintas wilayah.
  • Mensimulasikan peristiwa yang diharapkan memicu logika untuk memaksa failover layanan.
  • Mensimulasikan peristiwa yang diharapkan dapat memicu tindakan dari layanan pemantauan atau manajemen status.
  • Menggunakan sebagai alternatif untuk memblokir atau mengizinkan lalu lintas jaringan di mana Agen Chaos tidak dapat disebarkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:networkSecurityGroup:securityRule/1.0
Parameter (kunci, nilai)
nama Nama unik untuk aturan keamanan yang dibuat. Kesalahan gagal jika aturan lain sudah ada di NSG dengan nama yang sama. Harus dimulai dengan huruf atau angka. Harus diakhir dengan huruf, angka, atau garis bawah. Hanya boleh berisi huruf, angka, garis bawah, titik, atau tanda hubung.
protokol Protokol untuk aturan keamanan. Harus Any, TCP, UDP, atau ICMP.
sourceAddresses String yang mewakili array berbatas JSON dari alamat IP berformat CIDR. Dapat juga menjadi nama tag layanan untuk aturan masuk, misalnya, AppService. Tanda bintang juga dapat digunakan untuk mencocokkan * semua IP sumber.
destinationAddresses String yang mewakili array berbatas JSON dari alamat IP berformat CIDR. Dapat juga menjadi nama tag layanan untuk aturan keluar, misalnya, AppService. Tanda bintang juga dapat digunakan untuk mencocokkan * semua IP tujuan.
tindakan Jenis akses kelompok keamanan. Harus Izinkan atau Tolak.
destinationPortRanges String yang mewakili array port tunggal dan/atau rentang port yang dibatasi JSON, seperti 80 atau 1024-65535.
sourcePortRanges String yang mewakili array port tunggal dan/atau rentang port yang dibatasi JSON, seperti 80 atau 1024-65535.
prioritas Nilai antara 100 dan 4096 yang unik untuk semua aturan keamanan dalam NSG. Kesalahan gagal jika aturan lain sudah ada di NSG dengan prioritas yang sama.
direction Arah lalu lintas yang terpengaruh oleh aturan keamanan. Harus Masuk atau Keluar.

JSON Sampel

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

Batasan

  • Kesalahan hanya dapat diterapkan ke NSG yang ada.
  • Ketika aturan NSG yang dimaksudkan untuk menolak lalu lintas diterapkan, koneksi yang ada tidak akan rusak sampai diam selama 4 menit. Salah satu solusinya adalah menambahkan cabang lain dalam langkah yang sama yang menggunakan kesalahan yang akan menyebabkan koneksi yang ada terputus saat kesalahan NSG diterapkan. Misalnya, mematikan proses, menghentikan layanan untuk sementara, atau memulai ulang mesin virtual akan menyebabkan koneksi disetel ulang.
  • Aturan diterapkan pada awal tindakan. Setiap perubahan eksternal pada aturan selama durasi tindakan menyebabkan eksperimen gagal.
  • Membuat atau mengubah aturan Kelompok Keamanan Aplikasi tidak didukung.
  • Nilai prioritas harus unik pada setiap NSG yang ditargetkan. Mencoba membuat aturan baru yang memiliki nilai prioritas yang sama dengan yang lain menyebabkan eksperimen gagal.
  • Kesalahan Aturan Keamanan NSG versi 1.1 mendukung parameter tambahan flushConnection . Fungsionalitas ini memiliki masalah aktif yang diketahui: jika flushConnection diaktifkan, kesalahan dapat mengakibatkan kesalahan "FlushingNetworkSecurityGroup Koneksi ionIsNotEnabled". Untuk menghindari kesalahan ini sementara, nonaktifkan flushConnection parameter atau gunakan kesalahan Aturan Keamanan NSG versi 1.0 .

Bus Layanan: Ubah Status Antrean

Properti Nilai
Nama kapabilitas ChangeQueueState-1.0
Jenis target Microsoft-ServiceBus
Deskripsi Mengatur entitas Antrean dalam namespace Bus Layanan ke status yang diinginkan. Anda dapat memengaruhi nama entitas tertentu atau menggunakan "*" untuk memengaruhi semua. Tindakan ini dapat membantu menguji infrastruktur olahpesan Anda untuk skenario pemeliharaan atau kegagalan. Ini adalah kesalahan diskrit, sehingga entitas tidak akan dikembalikan ke status awal secara otomatis.
Prasyarat Namespace Bus Layanan dengan setidaknya satu entitas Antrean.
Urn urn:csci:microsoft:serviceBus:changeQueueState/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
desiredState Status yang diinginkan untuk antrean yang ditargetkan. Status yang mungkin adalah Aktif, Dinonaktifkan, SendDisabled, dan ReceiveDisabled.
antrean Daftar nama antrean yang dipisahkan koma dalam namespace yang ditargetkan. Gunakan "*" untuk memengaruhi semua antrean dalam namespace.

JSON Sampel

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

Batasan

  • Maksimum 1000 entitas antrean dapat diteruskan ke kesalahan ini.

Bus Layanan: Ubah Status Langganan

Properti Nilai
Nama kapabilitas ChangeSubscriptionState-1.0
Jenis target Microsoft-ServiceBus
Deskripsi Mengatur entitas Langganan dalam namespace Bus Layanan dan Topik ke status yang diinginkan. Anda dapat memengaruhi nama entitas tertentu atau menggunakan "*" untuk memengaruhi semua. Tindakan ini dapat membantu menguji infrastruktur olahpesan Anda untuk skenario pemeliharaan atau kegagalan. Ini adalah kesalahan diskrit, sehingga entitas tidak akan dikembalikan ke status awal secara otomatis.
Prasyarat Namespace Bus Layanan dengan setidaknya satu entitas Langganan.
Urn urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
desiredState Status yang diinginkan untuk langganan yang ditargetkan. Status yang mungkin adalah Aktif dan Dinonaktifkan.
topik Topik induk yang berisi satu atau beberapa langganan yang akan terpengaruh.
langganan Daftar nama langganan yang dipisahkan koma dalam namespace layanan yang ditargetkan. Gunakan "*" untuk memengaruhi semua langganan dalam namespace layanan.

JSON Sampel

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

Batasan

  • Maksimum 1000 entitas langganan dapat diteruskan ke kesalahan ini.

Bus Layanan: Ubah Status Topik

Properti Nilai
Nama kapabilitas ChangeTopicState-1.0
Jenis target Microsoft-ServiceBus
Deskripsi Mengatur entitas Topik yang ditentukan dalam namespace Bus Layanan ke status yang diinginkan. Anda dapat memengaruhi nama entitas tertentu atau menggunakan "*" untuk memengaruhi semua. Tindakan ini dapat membantu menguji infrastruktur olahpesan Anda untuk skenario pemeliharaan atau kegagalan. Ini adalah kesalahan diskrit, sehingga entitas tidak akan dikembalikan ke status awal secara otomatis.
Prasyarat Namespace Bus Layanan dengan setidaknya satu entitas Topik.
Urn urn:csci:microsoft:serviceBus:changeTopicState/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
desiredState Status yang diinginkan untuk topik yang ditargetkan. Status yang mungkin adalah Aktif dan Dinonaktifkan.
topik Daftar nama topik yang dipisahkan koma dalam namespace layanan yang ditargetkan. Gunakan "*" untuk memengaruhi semua topik dalam namespace.

JSON Sampel

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

Batasan

  • Maksimum 1000 entitas topik dapat diteruskan ke kesalahan ini.

Penyebaran Ulang VM

Properti Nilai
Nama kapabilitas Sebarkan ulang-1.0
Jenis target Microsoft-VirtualMachine
Deskripsi Menyebarkan ulang VM dengan mematikannya, memindahkannya ke simpul baru di infrastruktur Azure, dan menyalakannya kembali. Ini membantu memvalidasi ketahanan beban kerja Anda terhadap peristiwa pemeliharaan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:virtualMachine:redeploy/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai) Tidak ada.

JSON Sampel

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

Batasan

  • Operasi Penyebaran Ulang Komputer Virtual dibatasi dalam interval 10 jam. Jika eksperimen Anda gagal dengan kesalahan "Terlalu banyak permintaan penyebaran ulang", tunggu selama 10 jam untuk mencoba kembali eksperimen.

Matikan VM

Properti Nilai
Nama kapabilitas Shutdown-1.0
Jenis target Microsoft-VirtualMachine
Jenis OS yang didukung Windows, Linux.
Deskripsi Mematikan VM selama durasi kesalahan. Memulai ulang di akhir eksperimen atau jika eksperimen dibatalkan. Hanya mesin virtual Azure Resource Manager yang didukung.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:virtualMachine:shutdown/1.0
Parameter (kunci, nilai)
abruptShutdown (Opsional) Boolean yang menunjukkan apakah VM harus dimatikan dengan anggun atau tiba-tiba (merusak).

JSON Sampel

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

Matikan VMSS

Kesalahan ini memiliki dua versi yang tersedia yang dapat Anda gunakan, Versi 1.0 dan Versi 2.0. Perbedaan utamanya adalah bahwa Versi 2.0 memungkinkan Anda untuk memfilter berdasarkan zona ketersediaan, hanya mematikan instans dalam zona atau zona tertentu.

Matikan VMSS versi 1.0

Properti Nilai
Nama kapabilitas Versi 1.0
Jenis target Microsoft-VirtualMachineScaleSet
Jenis OS yang didukung Windows, Linux.
Deskripsi Mematikan atau mematikan instans set skala komputer virtual selama kesalahan dan memulai ulang VM di akhir durasi kesalahan atau jika eksperimen dibatalkan.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0
Parameter (kunci, nilai)
abruptShutdown (Opsional) Boolean yang menunjukkan apakah instans set skala komputer virtual harus dimatikan dengan baik atau tiba-tiba (merusak).
instances String yang merupakan array yang dibatasi dari ID instans set skala komputer virtual tempat kesalahan diterapkan.
Sampel JSON versi 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"
    }
  ]
}

Matikan VMSS Versi 2.0

Properti Nilai
Nama kapabilitas Matikan-2.0
Jenis target Microsoft-VirtualMachineScaleSet
Jenis OS yang didukung Windows, Linux.
Deskripsi Mematikan atau mematikan instans set skala komputer virtual selama kesalahan. Memulai ulang VM di akhir durasi kesalahan atau jika eksperimen dibatalkan. Mendukung penargetan dinamis.
Prasyarat Tidak ada.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0
filter (Opsional) Tersedia dimulai dengan Versi 2.0. Digunakan untuk memfilter daftar target dalam pemilih. Saat ini mendukung pemfilteran pada daftar zona. Filter hanya diterapkan ke sumber daya set skala komputer virtual dalam zona:
  • Jika tidak ada filter yang ditentukan, kesalahan ini mematikan semua instans dalam set skala komputer virtual.
  • Eksperimen menargetkan semua instans set skala komputer virtual di zona yang ditentukan.
  • Jika filter tidak menghasilkan target, eksperimen gagal.
Parameter (kunci, nilai)
abruptShutdown (Opsional) Boolean yang menunjukkan apakah instans set skala komputer virtual harus dimatikan dengan baik atau tiba-tiba (merusak).
Cuplikan JSON sampel versi 2.0

Cuplikan berikut menunjukkan cara mengonfigurasi pemfilteran dinamis dan kesalahan shutdown 2.0.

Konfigurasikan filter untuk penargetan dinamis:

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

Mengonfigurasi kesalahan matikan:

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

Batasan

Saat ini, hanya set skala komputer virtual yang dikonfigurasi dengan mode orkestrasi Uniform yang didukung. Jika set skala komputer virtual Anda menggunakan orkestrasi Fleksibel , Anda dapat menggunakan kesalahan penonaktifan komputer virtual Azure Resource Manager untuk mematikan instans yang dipilih.

Detail: Tindakan orkestrasi

Tunda

Properti Nilai
Penyedia kesalahan T/A
Jenis OS yang didukung T/A
Deskripsi Menambahkan penundaan waktu sebelum, antara, atau setelah tindakan eksperimen lainnya. Tindakan ini bukan kesalahan dan digunakan untuk menyinkronkan tindakan dalam eksperimen. Gunakan tindakan ini untuk menunggu dampak kesalahan muncul dalam layanan, atau tunggu aktivitas di luar eksperimen selesai. Misalnya, eksperimen Anda dapat menunggu penyembuhan otomatis terjadi sebelum menyuntikkan kesalahan lain.
Prasyarat T/A
Urn urn:csci:microsoft:chaosStudio:timedDelay/1.0
Durasi Durasi penundaan format ISO 8601 (misalnya, PT10M).

JSON Sampel

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

Mulai Uji Beban (Pengujian Beban Azure)

Properti Nilai
Nama kapabilitas Mulai-1.0
Jenis target Microsoft-AzureLoadTest
Deskripsi Memulai pengujian beban (dari Azure Load Testing) berdasarkan ID uji beban yang disediakan.
Prasyarat Pengujian beban dengan ID uji beban yang valid harus dibuat di layanan Azure Load Testing.
Urn urn:csci:microsoft:azureLoadTest:start/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
testID ID pengujian beban tertentu yang dibuat di layanan Azure Load Testing.

JSON Sampel

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

Hentikan Uji Beban (Pengujian Beban Azure)

Properti Nilai
Nama kapabilitas Stop-1.0
Jenis target Microsoft-AzureLoadTest
Deskripsi Menghentikan pengujian beban (dari Azure Load Testing) berdasarkan ID pengujian beban yang disediakan.
Prasyarat Pengujian beban dengan ID uji beban yang valid harus dibuat di layanan Azure Load Testing.
Urn urn:csci:microsoft:azureLoadTest:stop/1.0
Jenis kesalahan Diskrit.
Parameter (kunci, nilai)
testID ID pengujian beban tertentu yang dibuat di layanan Azure Load Testing.

JSON Sampel

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