Share via


Azure Chaos Studio hata ve eylem kitaplığı

Bu makalede, Chaos Studio'da kullanabileceğiniz ve ilgili kaynak türüne göre düzenlenmiş hatalar listelenir. Her kaynak türü için hangi rol atamalarının önerildiği hakkında bilgi edinmek için bkz . Azure Chaos Studio için desteklenen kaynak türleri ve rol atamaları.

Aracı tabanlı hatalar

Aracı tabanlı hatalar, Chaos Studio Aracısı yüklenerek Azure Sanal Makineler veya Sanal Makine Ölçek Kümesi örneklerine eklenir. Aşağıdaki Sanal Makine ve Sanal Makine Ölçek Kümesi tablolarında bu kaynaklar için hizmet doğrudan hata seçeneklerini bulabilirsiniz.

Geçerli işletim sistemi türleri Hata adı Uygulanabilir senaryolar
Windows, Linux CPU Baskısı İşlem kapasitesi kaybı, kaynak baskısı
Windows, Linux Sonlandırma İşlemi Bağımlılık kesintisi
Windows İşlemi Duraklatma Bağımlılık kesintisi, hizmet kesintisi
Windows, Linux Ağ Bağlantısını Kes Ağ kesintisi
Windows, Linux Ağ Gecikme Süresi Ağ performansı düşüşü
Windows, Linux Ağ Paket Kaybı Ağ güvenilirliği sorunları
Windows, Linux Fiziksel Bellek Baskısı Bellek kapasitesi kaybı, kaynak baskısı
Windows, Linux Hizmeti Durdur Hizmet kesintisi/yeniden başlatma
Windows, Linux Zaman Değişikliği Zaman eşitleme sorunları
Windows, Linux Sanal Bellek Baskısı Bellek kapasitesi kaybı, kaynak baskısı
Linux Rastgele Stress-ng Stressor Genel sistem stres testi
Linux Linux DiskIO Baskısı Disk G/Ç performans düşüşü
Windows DiskIO Basıncı Disk G/Ç performans düşüşü
Windows DNS Hatası DNS çözümleme sorunları
Windows Ağ Bağlantısı Kes (Güvenlik Duvarı aracılığıyla) Ağ kesintisi

App Service

Bu bölüm kaynak türü için Microsoft.Web/sites geçerlidir. App Service hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
App Service'i Durdur Hizmet kesintisi

Otomatik Ölçeklendirme Ayarları

Bu bölüm kaynak türü için Microsoft.Insights/autoscaleSettings geçerlidir. Otomatik ölçeklendirme Ayarlar hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Otomatik Ölçeklendirmeyi Devre Dışı Bırak İşlem kapasitesi kaybı (VMSS Kapatma ile kullanıldığında)

Azure Kubernetes Service

Bu bölüm kaynak türü için Microsoft.ContainerService/managedClusters geçerlidir. Azure Kubernetes Service hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
AKS Chaos Mesh DNS Chaos DNS çözümleme sorunları
AKS Chaos Mesh HTTP Chaos Ağ kesintisi
AKS Chaos Mesh IO Chaos Disk düşüşü/basınç
AKS Chaos Mesh Çekirdek Kaosu Çekirdek kesintisi
AKS Chaos Mesh Network Chaos Ağ kesintisi
AKS Chaos Mesh Pod Chaos Kapsayıcı kesintisi
AKS Chaos Mesh Stress Chaos Sistem stres testi
AKS Chaos Mesh Zaman Kaos Zaman eşitleme sorunları

Cloud Services (Klasik)

Bu bölüm kaynak türü için Microsoft.ClassicCompute/domainNames geçerlidir. Cloud Services (Klasik) hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Bulut Hizmeti Kapatma İşlem kaybı

Redis için Kümelenmiş Önbellek

Bu bölüm kaynak türü için Microsoft.Cache/redis geçerlidir. Redis için Kümelenmiş Önbellek hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Redis için Azure Cache (Yeniden Başlatma) Bağımlılık kesintisi (önbellekler)

Cosmos DB

Bu bölüm kaynak türü için Microsoft.DocumentDB/databaseAccounts geçerlidir. Cosmos DB hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Cosmos DB Yük Devretme Veritabanı yük devretmesi

Event Hubs

Bu bölüm kaynak türü için Microsoft.EventHub/namespaces geçerlidir. Event Hubs hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Olay Hub'ı Durumunu Değiştir Mesajlaşma altyapısını yanlış yapılandırma/kesinti

Key Vault

Bu bölüm kaynak türü için Microsoft.KeyVault/vaults geçerlidir. Key Vault hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Key Vault: Erişimi Reddet Sertifika reddi
Key Vault: Sertifikayı Devre Dışı Bırak Sertifika kesintisi
Key Vault: Sertifika Sürümünü Artırma Sertifika sürümü artışı
Key Vault: Sertifika İlkesini Güncelleştirme Sertifika ilkesi değişiklikleri/yanlış yapılandırmalar

Ağ Güvenlik Grupları

Bu bölüm kaynak türü için Microsoft.Network/networkSecurityGroups geçerlidir. Ağ güvenlik grupları hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
NSG Güvenlik Kuralı Ağ kesintisi (birçok Azure hizmeti için)

Service Bus

Bu bölüm kaynak türü için Microsoft.ServiceBus/namespaces geçerlidir. Service Bus hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
Kuyruk Durumunu Değiştir Mesajlaşma altyapısını yanlış yapılandırma/kesinti
Abonelik Durumunu Değiştir Mesajlaşma altyapısını yanlış yapılandırma/kesinti
Konu Durumunu Değiştir Mesajlaşma altyapısını yanlış yapılandırma/kesinti

Sanal Makineler (doğrudan hizmet)

Bu bölüm kaynak türü için Microsoft.Compute/virtualMachines geçerlidir. Sanal Makineler hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
VM Yeniden Dağıtma İşlem kesintisi, bakım olayları
VM Kapatma İşlem kaybı/kesintisi

Sanal Makine Ölçek Kümesi

Bu bölüm kaynak türü için Microsoft.Compute/virtualMachineScaleSets geçerlidir. Sanal Makine Ölçek Kümeleri hakkında daha fazla bilgi edinin.

Hata adı Uygulanabilir senaryolar
VMSS Kapatma İşlem kaybı/kesintisi
VMSS Kapatma (2.0) İşlem kaybı/kesintisi (Kullanılabilirlik Alanına göre)

Düzenleme eylemleri

Bu eylemler etkili denemeler oluşturmaya yönelik yapı taşlarıdır. Bunları, bir bölgedeki işlem örneklerini paralel olarak kapatırken yük testi çalıştırma gibi diğer hatalarla birlikte kullanın.

Eylem kategorisi Hata adı
Yükleme Yük testlerini başlatma (Azure Yük Testi)
Yükleme Yük testlerini durdurma (Azure Yük Testi)
Gecikme süresi Delay

Ayrıntılar: Aracı tabanlı hatalar

Ağ Bağlantısını Kes

Özellik Değer
Yetenek adı NetworkDisconnect-1.1
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Belirtilen bağlantı noktası aralığı ve ağ bloğu için giden ağ trafiğini engeller. En az bir destinationFilter veya inboundDestinationFilter dizisi sağlanmalıdır.
Önkoşullar Windows: Aracının yönetici olarak çalışması gerekir. Bu, vm uzantısı olarak yüklenirse varsayılan olarak gerçekleşir.
Linux:tc (Trafik Denetimi) paketi ağ hataları için kullanılır. Henüz yüklü değilse, aracı otomatik olarak varsayılan paket yöneticisinden yüklemeyi dener.
Urn urn:csci:microsoft:agent:networkDisconnect/1.1
Parametreler (anahtar, değer)
destinationFilters Hangi giden paketlerin hedeflendiğini tanımlayan paket filtrelerinin sınırlandırılmış JSON dizisi. En fazla 16.
inboundDestinationFilters Hangi gelen paketlerin hedeflendiğini tanımlayan paket filtrelerinin sınırlandırılmış JSON dizisi. En fazla 16.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

destinationFilters ve inboundDestinationFilters parametreleri aşağıdaki paket filtreleri dizisini kullanır.

Özellik Değer
adres IP aralığının başlangıcını gösteren IP adresi.
subnetMask IP adresi aralığı için alt ağ maskesi.
portLow (İsteğe bağlı) Bağlantı noktası aralığının başlangıcının bağlantı noktası numarası.
portHigh (İsteğe bağlı) Bağlantı noktası aralığının sonunun bağlantı noktası numarası.

Örnek JSON

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

Sınırlamalar

  • Aracı tabanlı ağ hataları şu anda yalnızca IPv4 adreslerini destekler.
  • Ağ bağlantısı kesme hatası yalnızca yeni bağlantıları etkiler. Mevcut etkin bağlantılar kalıcı olarak devam eder. Bağlantıların bozulmasına zorlamak için hizmeti veya işlemi yeniden başlatabilirsiniz.
  • Windows'da çalışırken ağ bağlantısı kesme hatası şu anda yalnızca TCP veya UDP paketleriyle çalışır.

Ağ Bağlantısı Kes (Güvenlik Duvarı aracılığıyla)

Özellik Değer
Yetenek adı NetworkDisconnectViaFirewall-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows
Açıklama Belirtilen bağlantı noktası aralığı ve ağ bloğu için giden trafiği engellemek için bir Windows güvenlik duvarı kuralı uygular.
Önkoşullar Aracı yönetici olarak çalıştırılmalıdır. Aracı bir VM uzantısı olarak yüklenirse, varsayılan olarak yönetici olarak çalışır.
Urn urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0
Parametreler (anahtar, değer)
destinationFilters Hata ekleme için hedeflenen giden paketleri tanımlayan paket filtrelerinin sınırlandırılmış JSON dizisi.
adres IP aralığının başlangıcını gösteren IP adresi.
subnetMask IP adresi aralığı için alt ağ maskesi.
portLow (İsteğe bağlı) Bağlantı noktası aralığının başlangıcının bağlantı noktası numarası.
portHigh (İsteğe bağlı) Bağlantı noktası aralığının sonunun bağlantı noktası numarası.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

  • Aracı tabanlı ağ hataları şu anda yalnızca IPv4 adreslerini destekler.

Ağ Gecikmesi

Özellik Değer
Yetenek adı NetworkLatency-1.1
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux (yalnızca giden trafik)
Açıklama Belirtilen bağlantı noktası aralığı ve ağ bloğu için ağ gecikme süresini artırır. En az bir destinationFilter veya inboundDestinationFilter dizisi sağlanmalıdır.
Önkoşullar Windows: Aracının yönetici olarak çalışması gerekir. Bu, vm uzantısı olarak yüklenirse varsayılan olarak gerçekleşir.
Linux:tc (Trafik Denetimi) paketi ağ hataları için kullanılır. Henüz yüklü değilse, aracı otomatik olarak varsayılan paket yöneticisinden yüklemeyi dener.
Urn urn:csci:microsoft:agent:networkLatency/1.1
Parametreler (anahtar, değer)
latencyInMilliseconds Milisaniye cinsinden uygulanacak gecikme süresi miktarı.
destinationFilters Hangi giden paketlerin hedeflendiğini tanımlayan paket filtrelerinin sınırlandırılmış JSON dizisi. En fazla 16.
inboundDestinationFilters Hangi gelen paketlerin hedeflendiğini tanımlayan paket filtrelerinin sınırlandırılmış JSON dizisi. En fazla 16.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

destinationFilters ve inboundDestinationFilters parametreleri aşağıdaki paket filtreleri dizisini kullanır.

Özellik Değer
adres IP aralığının başlangıcını gösteren IP adresi.
subnetMask IP adresi aralığı için alt ağ maskesi.
portLow (İsteğe bağlı) Bağlantı noktası aralığının başlangıcının bağlantı noktası numarası.
portHigh (İsteğe bağlı) Bağlantı noktası aralığının sonunun bağlantı noktası numarası.

Örnek JSON

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

Sınırlamalar

  • Aracı tabanlı ağ hataları şu anda yalnızca IPv4 adreslerini destekler.
  • Linux üzerinde çalışırken ağ gecikmesi hatası gelen trafiği değil yalnızca giden trafiği etkileyebilir. Hata, Windows ortamlarında (ve destinationFilters parametreleri aracılığıylainboundDestinationFilters) hem gelen hem de giden trafiği etkileyebilir.
  • Windows üzerinde çalışırken ağ gecikmesi hatası şu anda yalnızca TCP veya UDP paketleriyle çalışır.

Ağ Paket Kaybı

Özellik Değer
Yetenek adı NetworkPacketLoss-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux
Açıklama 0,0 (paket kaybı yok) ile 1,0 (tüm paketler kayboldu) arasında, belirtilen hızda giden trafik için paket kaybına neden olur. Bu eylem, ağ tıkanıklığı veya ağ donanımı sorunları gibi senaryoların benzetimini yapmanıza yardımcı olabilir.
Önkoşullar Windows: Aracının yönetici olarak çalışması gerekir. Bu, vm uzantısı olarak yüklenirse varsayılan olarak gerçekleşir.
Linux:tc (Trafik Denetimi) paketi ağ hataları için kullanılır. Henüz yüklü değilse, aracı otomatik olarak varsayılan paket yöneticisinden yüklemeyi dener.
Urn urn:csci:microsoft:agent:networkPacketLoss/1.0
Parametreler (anahtar, değer)
packetLossRate Hedef filtrelerle eşleşen paketlerin kaybolma oranı (0,0 ile 1,0 arasında).
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.
destinationFilters Hata ekleme için hangi giden paketlerin hedeflendiğini tanımlayan sınırlanmış JSON paket filtreleri dizisi (aşağıdaki parametreler). En fazla üç.
adres IP aralığının başlangıcını gösteren IP adresi.
subnetMask IP adresi aralığı için alt ağ maskesi.
portLow (İsteğe bağlı) Bağlantı noktası aralığının başlangıcının bağlantı noktası numarası.
portHigh (İsteğe bağlı) Bağlantı noktası aralığının sonunun bağlantı noktası numarası.

Örnek JSON

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

Sınırlamalar

  • Aracı tabanlı ağ hataları şu anda yalnızca IPv4 adreslerini destekler.
  • Windows üzerinde çalışırken ağ paketi kaybı hatası şu anda yalnızca TCP veya UDP paketleriyle çalışır.

DNS Hatası

Özellik Değer
Yetenek adı DnsFailure-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows
Açıklama DNS arama isteği yanıtlarının yerine belirtilen hata kodunu kullanır. Değiştirilen DNS arama istekleri şunlardır:
  • Vm'den kaynaklanır.
  • Tanımlanan hata parametrelerini eşleştirin.
Windows DNS istemcisi tarafından yapılmaan DNS aramaları bu hatadan etkilenmez.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:dnsFailure/1.0
Parametreler (anahtar, değer)
hosts DNS arama isteğinin başarısız olması için konak adlarının sınırlandırılmış JSON dizisi.

Bu özellik joker karakterleri ()* kabul eder, ancak yalnızca bir adresteki ilk alt etki alanı için geçerlidir ve yalnızca belirtildikleri alt etki alanına uygulanır. Örneğin:
  • *.microsoft.com desteklenir.
  • alt etki alanı.*.microsoft desteklenmez.
  • *.microsoft.com, subdomain1.subdomain2.microsoft.com gibi bir adresteki birden çok alt etki alanı için çalışmaz.
dnsFailureReturnCode Arama hatası için istemciye döndürülecek DNS hata kodu (FormErr, ServFail, NXDomain, NotImp, Refused, XDomain, YXRRSet, NXRRSet, NotAuth, NotZone). DNS dönüş kodları hakkında daha fazla bilgi için IANA web sitesine bakın.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

  • DNS Hatası hatası windows 2019 RS5 veya daha yenisini gerektirir.
  • DNS Önbelleği, hatada tanımlanan konak adları için hata süresince yoksayılır.

CPU Baskısı

Özellik Değer
Yetenek adı CPUPressure-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata eylemi sırasında bu hatanın eklendiği VM'de belirtilen değere kadar CPU baskısı ekler. Sürenin sonunda veya deneme iptal edilirse yapay CPU baskısı kaldırılır. Windows'da , % İşlemci Yardımcı Programı performans sayacı, hatada tanımlanan cpu yüzdesini belirlemek için hata başlangıcında kullanılır ve bu da % İşlemci Yardımcı Programı'nın hata parametrelerinde yaklaşık olarak pressureLevel tanımlanan değere çarpması için hatada tanımlanan cpu yüzdesinden pressureLevel çıkarılır.
Önkoşullar Linux: Stress-ng yardımcı programının yüklenmesi gerekir. Yükleme, Debian tabanlı (Ubuntu gibi), Red Hat Enterprise Linux ve OpenSUSE gibi çeşitli işletim sistemlerinde varsayılan paket yöneticisi kullanılarak aracı yüklemesinin bir parçası olarak otomatik olarak gerçekleşir. Azure Linux dahil olmak üzere diğer dağıtımlar için stress-ng'yi el ile yüklemeniz gerekir. Daha fazla bilgi için yukarı akış proje deposuna bakın.
Windows: Yok.
Urn urn:csci:microsoft:agent:cpuPressure/1.0
Parametreler (anahtar, değer)
pressureLevel %CPU Kullanımı açısından VM'ye ne kadar CPU baskısı (%) uygulandığını gösteren 1 ile 99 arasında bir tamsayı
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

Linux'ta bilinen sorunlar:

  • Beklenmedik şekilde öldürülürse AzureChaosAgent stres etkisi doğru şekilde sonlandırılamayabilir.

Fiziksel Bellek Baskısı

Özellik Değer
Yetenek adı PhysicalMemoryPressure-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata eylemi sırasında bu hatanın eklendiği VM'de belirtilen değere kadar fiziksel bellek baskısı ekler. Sürenin sonunda veya deneme iptal edilirse yapay fiziksel bellek baskısı kaldırılır.
Önkoşullar Linux: Stress-ng yardımcı programının yüklenmesi gerekir. Yükleme, Debian tabanlı (Ubuntu gibi), Red Hat Enterprise Linux ve OpenSUSE gibi çeşitli işletim sistemlerinde varsayılan paket yöneticisi kullanılarak aracı yüklemesinin bir parçası olarak otomatik olarak gerçekleşir. Azure Linux dahil olmak üzere diğer dağıtımlar için stress-ng'yi el ile yüklemeniz gerekir. Daha fazla bilgi için yukarı akış proje deposuna bakın.
Windows: Yok.
Urn urn:csci:microsoft:agent:physicalMemoryPressure/1.0
Parametreler (anahtar, değer)
pressureLevel VM'ye ne kadar fiziksel bellek baskısı (%) uygulandığını gösteren 1 ile 99 arasında bir tamsayı.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

Şu anda Windows aracısı, diğer uygulamalar bellek kullanımını artırdığında bellek baskısını azaltmaz. Genel bellek kullanımı %100'ü aşarsa Windows aracısı kilitlenebilir.

Sanal Bellek Baskısı

Özellik Değer
Yetenek adı VirtualMemoryPressure-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows
Açıklama Hata eylemi sırasında bu hatanın eklendiği VM'de belirtilen değere kadar sanal bellek baskısı ekler. Yapay sanal bellek baskısı süre sonunda veya deneme iptal edilirse kaldırılır.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:virtualMemoryPressure/1.0
Parametreler (anahtar, değer)
pressureLevel VM'ye ne kadar fiziksel bellek baskısı (%) uygulandığını gösteren 1 ile 99 arasında bir tamsayı.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Disk GÇ Baskısı

Özellik Değer
Yetenek adı DiskIOPressure-1.1
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows
Açıklama Bir Sanal Makineye disk baskısı eklemek için diskspd yardımcı programını kullanır. Basınç varsayılan olarak birincil diske veya targetTempDirectory parametresiyle belirtilen diske eklenir. Bu hatanın beş farklı yürütme modu vardır. Yapay disk baskısı süre sonunda veya deneme iptal edilirse kaldırılır.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:diskIOPressure/1.1
Parametreler (anahtar, değer)
pressureMode VM'nin birincil depolama alanına eklenecek önceden ayarlanmış disk baskı modu. Aşağıdaki tabloda yer PressureModes alanlardan biri olmalıdır.
targetTempDirectory (İsteğe bağlı) Disk baskısı uygulamak için kullanılacak dizin. Örneğin, D:/Temp. Parametre dahil değilse, birincil diske basınç eklenir.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Basınç modları

PressureMode Açıklama
Premium Depolama P10IOPS numberOfThreads = 1
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 2
percentOfWriteActions = 50
Premium Depolama P10Throttling
numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 25
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50
Premium Depolama P50IOPS numberOfThreads = 32
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 32
sizeOfBlocksInKB = 8
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50
Premium Depolama P50Throttling numberOfThreads = 2
randomBlockSizeInKB = 1024
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 1024
sizeOfWriteBufferInKB = 1024
fileSizeInGB = 20
percentOfWriteActions = 50
Varsayılan numberOfThreads = 2
randomBlockSizeInKB = 64
randomSeed = 10
numberOfIOperThread = 2
sizeOfBlocksInKB = 64
sizeOfWriteBufferInKB = 64
fileSizeInGB = 1
percentOfWriteActions = 50

Örnek JSON

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

Linux Disk GÇ Baskısı

Özellik Değer
Yetenek adı LinuxDiskIOPressure-1.1
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Linux
Açıklama Diske basınç uygulamak için stress-ng kullanır. Geçici dosyalarla G/Ç işlemleri gerçekleştiren bir veya daha fazla çalışan işlemi oluşturulur. Basınç varsayılan olarak birincil diske veya targetTempDirectory parametresiyle belirtilen diske eklenir. Baskının nasıl uygulandığı hakkında bilgi için stress-ng makalesine bakın.
Önkoşullar Linux: Stress-ng yardımcı programının yüklenmesi gerekir. Yükleme, Debian tabanlı (Ubuntu gibi), Red Hat Enterprise Linux ve OpenSUSE gibi çeşitli işletim sistemlerinde varsayılan paket yöneticisi kullanılarak aracı yüklemesinin bir parçası olarak otomatik olarak gerçekleşir. Azure Linux dahil olmak üzere diğer dağıtımlar için stress-ng'yi el ile yüklemeniz gerekir. Daha fazla bilgi için yukarı akış proje deposuna bakın.
Urn urn:csci:microsoft:agent:linuxDiskIOPressure/1.1
Parametreler (anahtar, değer)
workerCount Çalıştırılacak çalışan işlemlerinin sayısı. 0 olarak ayarlanması workerCount , işlemci sayısı kadar çalışan işlemi oluşturur.
fileSizePerWorker Bir çalışanın G/Ç işlemleri gerçekleştirdiği geçici dosyanın boyutu. Tamsayı artı bayt (b), kilobayt (k), megabayt (m) veya gigabayt (g) cinsinden bir birim (örneğin, 4m 4 megabayt ve 256g 256 gigabayt için).
blockSize Disk G/Ç işlemleri için 1 bayttan büyük ve 4 megabayttan küçük blok boyutu (en yüksek değer olur 4095k). Tamsayı artı bayt, kilobayt veya megabayt cinsinden bir birim (örneğin, 512k 512 kilobayt için).
targetTempDirectory (İsteğe bağlı) Disk baskısı uygulamak için kullanılacak dizin. Örneğin, /tmp/. Parametre dahil değilse, birincil diske basınç eklenir.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

Bu örnek değerler Premium SSD LRS'ye sahip bir Standard_D2s_v3 sanal makinede test edildiğinde yaklaşık %100 disk baskısı üretti. Büyük bir fileSizePerWorker ve daha küçük bir blockSize, diskin tam olarak vurgulenmesine yardımcı olur.

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

Hizmeti Durdur

Özellik Değer
Yetenek adı StopService-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata sırasında bir Windows hizmetini veya Linux sistemli hizmetini durdurur. Sürenin sonunda veya deneme iptal edilirse yeniden başlatır.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:stopService/1.0
Parametreler (anahtar, değer)
Hizmetadı Durdurmak istediğiniz Windows hizmetinin veya Linux sistemli hizmetinin adı.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

  • Windows: Hizmetlerin görünen adları desteklenmez. Hizmet adlarını keşfetmek için komut isteminde kullanın sc.exe query .
  • Linux: Sysvinit gibi systemd dışındaki diğer hizmet türleri desteklenmez.

Sonlandırma İşlemi

Özellik Değer
Yetenek adı KillProcess-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata parametrelerinde gönderilen işlem adıyla eşleşen bir işlemin çalışan tüm örneklerini öldürür. Hata eylemi için ayarlanan süre içinde, bir işlem belirtilen sonlandırma aralığının değerine göre tekrar tekrar sonlandırılır. Bu hata, sistem yöneticisinin kendi kendine düzeltme yapılandırılmışsa işlemi el ile kurtarması gerekeceği yıkıcı bir hatadır.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:killProcess/1.0
Parametreler (anahtar, değer)
processName Sürekli olarak sonlandırılma işleminin adı (.exe olmadan). Hata yürütülmeye başladığında işlemin çalışması gerekmez.
killIntervalInMilliseconds Hatanın milisaniye cinsinden art arda yapılan sonlandırma girişimleri arasında beklediği süre.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

İşlemi Duraklatma

Özellik Değer
Yetenek adı PauseProcess-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows.
Açıklama Belirtilen işlemleri belirtilen süre boyunca duraklatır (askıya alır). Aynı ada sahip birden çok işlem varsa, bu hata bu işlemlerin tümünü askıya alır. Hatanın süresi içinde işlemler belirtilen aralıkta tekrar tekrar duraklatılır. Sürenin sonunda veya deneme iptal edilirse işlemler devam eder.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:pauseProcess/1.0
Parametreler (anahtar, değer)
processNames Duraklatılacak işlemleri tanımlayan işlem adlarının sınırlandırılmış JSON dizisi. En fazla 4. İşlem adı isteğe bağlı olarak ".exe" uzantısını içerebilir.
pauseIntervalInMilliseconds Hatanın ardışık duraklatma girişimleri arasında beklediği süre (milisaniye cinsinden).
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Sınırlamalar

Şu anda processNames parametresinde en fazla 4 işlem adı listelenebilir.

Zaman Değişikliği

Özellik Değer
Yetenek adı TimeChange-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Windows
Açıklama Sanal makinenin sistem saatini değiştirir ve denemenin sonundaki veya deneme iptal edilirse saati sıfırlar.
Önkoşullar Yok.
Urn urn:csci:microsoft:agent:timeChange/1.0
Parametreler (anahtar, değer)
tarih saat ISO8601 biçimde bir DateTime dizesi. Değerler eksikse YYYY-MM-DD , deneme çalıştırıldığında varsayılan olarak geçerli gün olarak ayarlanır. Ss:dd:ss değerleri eksikse varsayılan değer 12:00:00'dir. 2 basamaklı yıl sağlanırsa (YY ), geçerli yüzyıla göre 4 basamaklı yıla (YYYY) dönüştürülür. Saat dilimi <Z> eksikse, varsayılan uzaklık yerel saat dilimidir. <Z> her zaman bir işaret simgesi (negatif veya pozitif) içermelidir.
virtualMachineScaleSetInstances Bu hatayı bir sanal makine ölçek kümesine uyguladığınızda örnek kimlikleri dizisi. Tekdüzen düzenleme modunda sanal makine ölçek kümeleri için gereklidir. Örnek kimlikleri hakkında daha fazla bilgi edinin.

Örnek JSON

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

Rastgele Stress-ng Stressor

Özellik Değer
Yetenek adı StressNg-1.0
Hedef türü Microsoft-Agent
Desteklenen işletim sistemi türleri Linux
Açıklama Bağımsız değişkenleri doğrudan stress-ng'ye geçirerek herhangi bir stress-ng komutunu çalıştırır. Stress-ng için önceden tanımlanmış hatalardan biri gereksinimlerinizi karşılamadığında kullanışlıdır.
Önkoşullar Linux: Stress-ng yardımcı programının yüklenmesi gerekir. Yükleme, Debian tabanlı (Ubuntu gibi), Red Hat Enterprise Linux ve OpenSUSE gibi çeşitli işletim sistemlerinde varsayılan paket yöneticisi kullanılarak aracı yüklemesinin bir parçası olarak otomatik olarak gerçekleşir. Azure Linux dahil olmak üzere diğer dağıtımlar için stress-ng'yi el ile yüklemeniz gerekir. Daha fazla bilgi için yukarı akış proje deposuna bakın.
Urn urn:csci:microsoft:agent:stressNg/1.0
Parametreler (anahtar, değer)
stressNgArguments Stress-ng işlemine geçirmek için bir veya daha fazla bağımsız değişken. Olası stress-ng bağımsız değişkenleri hakkında bilgi için stress-ng makalesine bakın. NOT: Hataya neden olacağı için "-t " bağımsız değişkenini EKLEMEYİnİZ. Deneme uzunluğu, stressNgArguments içinde DEĞİl, doğrudan Azure kaos denemesi kullanıcı arabiriminde tanımlanır.

Örnek JSON

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

Ayrıntılar: Hizmet doğrudan hataları

App Service'i Durdur

Özellik Değer
Yetenek adı Durdurma-1.0
Hedef türü Microsoft-AppService
Açıklama Hedeflenen App Service uygulamalarını durdurur ve hata süresinin sonunda yeniden başlatır. Bu eylem App Service, API Apps, Mobile Apps ve Azure İşlevleri gibi "Microsoft.Web/sites" türündeki kaynaklar için geçerlidir.
Önkoşullar Yok.
Urn urn:csci:microsoft:appService:stop/1.0
Hata türü Sürekli.
Parametreler (anahtar, değer) Yok.

Örnek JSON

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

Otomatik Ölçeklendirmeyi Devre Dışı Bırak

Özellik Değer
Yetenek adı DisaleAutoscale
Hedef türü Microsoft Otomatik Ölçeklendirme Ayarlar
Açıklama Otomatik ölçeklendirme hizmetini devre dışı bırakır. Otomatik ölçeklendirme devre dışı bırakıldığında, sanal makine ölçek kümeleri, web uygulamaları, service bus ve daha fazlası gibi kaynaklar, uygulamanın yüküne göre otomatik olarak eklenmez veya kaldırılmaz.
Önkoşullar Kaynakta etkinleştirilen otomatik Ölçeklendirme kaynağı Chaos Studio'ya eklenmelidir.
Urn urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0
Hata türü Sürekli.
Parametreler (anahtar, değer)
enableOnComplete Boole. Eylem tamamlandıktan sonra otomatik ölçeklendirmenin yeniden kullanılabilir olup olmayacağını yapılandırılır. Varsayılan true değeridir.

Örnek JSON

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

AKS Chaos Mesh Network Chaos

Özellik Değer
Yetenek adı AğChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir ağ hatasının Azure Kubernetes Service (AKS) kümenizde çalışmasına neden olur. Ağ kesintileri, gecikmeler, yinelemeler, kayıp ve bozulmadan kaynaklanan AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1
Parametreler (anahtar, değer)
jsonSpec NetworkChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh Pod Chaos

Özellik Değer
Yetenek adı PodChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir pod hatasının AKS kümenizde çalışmasına neden olur. Pod hatalarının veya kapsayıcı sorunlarının bir sonucu olan AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1
Parametreler (anahtar, değer)
jsonSpec PodChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh Stress Chaos

Özellik Değer
Yetenek adı StressChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir stres hatasının AKS kümenizde çalışmasına neden olur. Örneğin yüksek CPU veya bellek tüketimi nedeniyle bir pod koleksiyonu üzerindeki stres nedeniyle AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1
Parametreler (anahtar, değer)
jsonSpec StressChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh IO Chaos

Özellik Değer
Yetenek adı GÇChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir GÇ hatasının AKS kümenizde çalışmasına neden olur. , readve writegibi openGÇ sistem çağrılarını kullandığınızda GÇ gecikmeleri ve okuma/yazma hataları nedeniyle AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1
Parametreler (anahtar, değer)
jsonSpec IOChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh Zaman Kaos

Özellik Değer
Yetenek adı TimeChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh kullanarak AKS kümenizdeki sistem saatinde bir değişikliğe neden olur. Dağıtılmış sistemlerin eşitlenmemiş olması, eksik/yanlış artık yıl/artık saniye mantığı ve daha fazlası sonucunda oluşan AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1
Parametreler (anahtar, değer)
jsonSpec TimeChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh Çekirdek Kaosu

Özellik Değer
Yetenek adı KernelChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir çekirdek hatasının AKS kümenizde çalışmasına neden olur. Bağlamanın başarısız olması veya belleğin ayrılmaması gibi Linux çekirdek düzeyi hataları nedeniyle AKS olaylarını yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1
Parametreler (anahtar, değer)
jsonSpec KernelChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh HTTP Chaos

Özellik Değer
Yetenek adı HTTPChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir HTTP hatasının AKS kümenizde çalışmasına neden olur. HTTP isteği ve gecikmeli veya yanlış yanıtlar gibi yanıt işleme hataları nedeniyle olayları yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmalıdır.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1
Parametreler (anahtar, değer)
jsonSpec HTTPChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

AKS Chaos Mesh DNS Chaos

Özellik Değer
Yetenek adı DNSChaos-2.1
Hedef türü Microsoft-AzureKubernetesServiceChaosMesh
Desteklenen düğüm havuzu işletim sistemi türleri Linux
Açıklama Chaos Mesh aracılığıyla kullanılabilen bir DNS hatasının AKS kümenizde çalışmasına neden olur. DNS hataları nedeniyle olayları yeniden oluşturmak için kullanışlıdır.
Önkoşullar AKS kümesinde Chaos Mesh dağıtılmış olmalı ve DNS hizmeti yüklenmelidir.
Urn urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1
Parametreler (anahtar, değer)
jsonSpec DNSChaos türünü kullanan JSON biçimli Chaos Mesh belirtimi. Chaos Mesh YAML'yi JSON'a dönüştürmek ve küçültmek için YAML'yi JSON'a Dönüştür gibi bir YAML-JSON dönüştürücüsü kullanabilirsiniz. JSON içinde tek tırnak kullanın veya tırnak işaretinden ters eğik çizgi karakteriyle kaçış. YaML'yi yalnızca özelliğinin jsonSpec altına ekleyin. Meta veriler ve tür gibi bilgileri eklemeyin. içinde jsonSpec süre belirtmek gerekli değildir, ancak varsa kullanılır.

Örnek JSON

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

Cloud Services (Klasik) Kapatma

Özellik Değer
Yetenek adı Kapatma-1.0
Hedef türü Microsoft-DomainName
Açıklama Hata sırasında dağıtımı durdurur. Hata süresinin sonunda veya deneme iptal edilirse dağıtımı yeniden başlatır.
Önkoşullar Yok.
Urn urn:csci:microsoft:domainName:shutdown/1.0
Hata türü Sürekli.
Parametreler Hiçbiri.

Örnek JSON

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

Redis için Azure Cache (Yeniden Başlatma)

Özellik Değer
Yetenek adı Yeniden Başlatma-1.0
Hedef türü Microsoft-AzureClusteredCacheForRedis
Açıklama Kısa bir kesintinin benzetimini yapmak için hedefte zorlamalı yeniden başlatma işleminin gerçekleşmesine neden olur.
Önkoşullar Yok
Urn urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
rebootType Düğüm, yeniden başlatma eyleminin gerçekleştirileceği yeri oluşturur ve bunlar PrimaryNode, SecondaryNode veya AllNodes olarak belirtilebilir.
shardId Yeniden başlatılacak parçanın kimliği. Yalnızca Premium katman önbellekleri için geçerlidir.

Örnek JSON

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

Sınırlamalar

  • Yeniden başlatma hatası, zorlamalı yeniden başlatmanın kesinti olayının simülasyonunu daha iyi gerçekleştirmesine neden olur ve bu da veri kaybı olasılığı olduğu anlamına gelir.
  • Yeniden başlatma hatası ayrık bir hata türüdür. Sürekli hatalardan farklı olarak, tek seferlik bir eylemdir ve süresi yoktur.

Cosmos DB Yük Devretme

Özellik Değer
Yetenek adı Yük Devretme-1.0
Hedef türü Microsoft-CosmosDB
Açıklama Yazma bölgesi kesintisinin benzetimini yapmak için tek bir yazma bölgesine sahip bir Azure Cosmos DB hesabının belirtilen bir okuma bölgesine yük devretmesine neden olur.
Önkoşullar Yok.
Urn urn:csci:microsoft:cosmosDB:failover/1.0
Parametreler (anahtar, değer)
readRegion Yük devretme sırasında yazma bölgesine yükseltilmesi gereken okuma bölgesi, örneğin, East US 2.

Örnek JSON

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

Olay Hub'ı Durumunu Değiştir

Özellik Değer
Yetenek adı ChangeEventHubState-1.0
Hedef türü Microsoft-EventHub
Açıklama Tek tek olay hub'larını bir Azure Event Hubs ad alanı içinde istenen duruma ayarlar. Belirli olay hub'ı adlarını etkileyebilir veya ad alanındaki tüm adları etkilemek için "*" kullanabilirsiniz. Bu eylem, bakım veya hata senaryoları için mesajlaşma altyapınızı test etmenize yardımcı olabilir. Bu ayrık bir hata olduğundan varlık otomatik olarak başlangıç durumuna döndürülmeyecek.
Önkoşullar En az bir olay hub'ı varlığı olan bir Azure Event Hubs ad alanı.
Urn urn:csci:microsoft:eventHub:changeEventHubState/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
desiredState Hedeflenen olay hub'ları için istenen durum. Olası durumlar Etkin, Devre Dışı ve SendDisabled'dır.
eventHubs Hedeflenen ad alanındaki olay hub'ı adlarının virgülle ayrılmış listesi. Ad alanı içindeki tüm varlıkları etkilemek için "*" kullanın.

Örnek JSON

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

Key Vault: Erişimi Reddet

Özellik Değer
Yetenek adı DenyAccess-1.0
Hedef türü Microsoft-KeyVault
Açıklama Anahtar kasası ağ kurallarını geçici olarak değiştirerek anahtar kasasına tüm ağ erişimini engeller. Bu eylem, anahtar kasasına bağımlı bir uygulamanın gizli dizilere, anahtarlara ve/veya sertifikalara erişmesini engeller. Anahtar kasası tüm ağlara erişime izin veriyorsa, bu ayar yalnızca seçili ağlardan erişime izin verecek şekilde değiştirilir. Hatanın başlangıcında izin verilenler listesinde sanal ağ yok. Hata süresinin sonunda tüm ağlara erişim izni verilir. Anahtar kasası yalnızca seçili ağlardan erişime izin verecek şekilde ayarlandıysa, izin verilenler listesindeki tüm sanal ağlar hatanın başlangıcında kaldırılır. Hata süresinin sonunda geri yüklenirler.
Önkoşullar Hedef anahtar kasası herhangi bir güvenlik duvarı kuralına sahip olamaz ve Azure hizmetlerinin güvenlik duvarını atlamasına izin verecek şekilde ayarlanmamalıdır. Hedef anahtar kasası yalnızca seçili ağlardan erişime izin verecek şekilde ayarlandıysa, en az bir sanal ağ kuralı olmalıdır. Anahtar kasası kurtarma modunda olamaz.
Urn urn:csci:microsoft:keyVault:denyAccess/1.0
Hata türü Sürekli.
Parametreler (anahtar, değer) Yok.

Örnek JSON

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

Key Vault: Sertifikayı Devre Dışı Bırak

Özellik Değer
Yetenek adı DisableCertificate-1.0
Hedef türü Microsoft-KeyVault
Açıklama Hata, sertifika özelliklerini kullanarak sertifikayı belirli bir süre boyunca devre dışı bırakır (kullanıcı tarafından sağlanır). Bu hata süresinden sonra sertifikayı etkinleştirir.
Önkoşullar Yok.
Urn urn:csci:microsoft:keyvault:disableCertificate/1.0
Hata türü Sürekli.
Parametreler (anahtar, değer)
certificateName Hatanın yürütüldiği Azure Key Vault sertifikasının adı.
sürüm Devre dışı bırakılması gereken sertifika sürümü. Belirtilmezse en son sürüm devre dışı bırakılır.

Örnek JSON

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

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

Key Vault: Sertifika Sürümünü Artırma

Özellik Değer
Yetenek adı IncrementCertificateVersion-1.0
Hedef türü Microsoft-KeyVault
Açıklama Key Vault Sertifikası istemci kitaplığını kullanarak yeni bir sertifika sürümü ve parmak izi oluşturur. Geçerli çalışma sertifikası bu sürüme yükseltildi. Sertifika sürümü hata süresinden sonra geri döndürülmedi.
Önkoşullar Yok.
Urn urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
certificateName Hatanın yürütüldiği Azure Key Vault sertifikasının adı.

Örnek JSON

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

Key Vault: Sertifika İlkesini Güncelleştirme

Özellik Değer
Yetenek adı UpdateCertificatePolicy-1.0
Hedef türü Microsoft-KeyVault
Açıklama Sertifika ilkeleri (örneğin, sertifika geçerlilik süresi, sertifika türü, anahtar boyutu veya anahtar türü) kullanıcı girişlerine göre güncelleştirilir ve hata süresinden sonra geri döndürülür.
Önkoşullar Yok.
Urn urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0
Hata türü Sürekli.
Parametreler (anahtar, değer)
certificateName Hatanın yürütüldiği Azure Key Vault sertifikasının adı.
sürüm Güncelleştirilmesi gereken sertifika sürümü. Belirtilmezse en son sürüm güncelleştirilir.
enabled Boole. Yeni sertifika sürümünün etkinleştirilip etkinleştirilmediğini gösteren değer.
validityInMonths Sertifikanın ay cinsinden geçerlilik süresi.
certificateTransparency Sertifikanın oluşturulduğunda sertifika saydamlık listesinde yayımlanıp yayımlanmayacağını gösterir.
certificateType Sertifika türü.
Contenttype Sertifikanın içerik türü. Örneğin, sertifika ham PFX baytları içerdiğinde Pkcs12 veya ASCII PEM ile kodlanmış baytlar içerdiğinde Pem olur. Pkcs12 varsayılan değerdir.
keySize RSA anahtarının boyutu: 2048, 3072 veya 4096.
dışarı aktarılabilir Boole. Sertifika anahtarının kasadan veya güvenli sertifika deposundan dışarı aktarılabilir olup olmadığını gösteren değer.
reuseKey Boole. Sertifika döndürüldüğünde sertifika anahtarının yeniden kullanılması gerekip gerekmediğini gösteren değer.
Keytype RSA veya EC gibi yeni sertifikalar verilirken oluşturulan yedekleme anahtarının türü.

Örnek JSON

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

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

NSG Güvenlik Kuralı

Özellik Değer
Yetenek adı SecurityRule-1.0
Hedef türü Microsoft-NetworkSecurityGroup
Açıklama Kural tanımının güvenlik grupları arasında geçerli olduğu varsayılarak mevcut bir Azure ağ güvenlik grubunda (NSG) veya Azure NSG kümesinde işleme veya kural oluşturmayı etkinleştirir. Şunlar için kullanışlıdır:
  • Aşağı akış veya bölgeler arası bağımlılık/bağımlılıksızlık kesintisi simülasyonu.
  • Hizmet yük devretmesini zorlamak için bir mantık tetiklemesi beklenen bir olayın simülasyonu.
  • İzleme veya durum yönetimi hizmetinden bir eylem tetikledikten sonra tetiklenmesi beklenen bir olayın simülasyonu.
  • Chaos Agent'ın dağıtılabildiği ağ trafiğini engellemeye veya trafiğe izin vermek için alternatif olarak kullanma.
Önkoşullar Yok.
Urn urn:csci:microsoft:networkSecurityGroup:securityRule/1.0
Parametreler (anahtar, değer)
Adı Oluşturulan güvenlik kuralı için benzersiz bir ad. NSG'de aynı ada sahip başka bir kural zaten varsa hata başarısız olur. Harf veya sayı ile başlamalıdır. Bir harf, sayı veya alt çizgi ile bitmelidir. Yalnızca harf, sayı, alt çizgi, nokta veya kısa çizgi içerebilir.
Protokolü Güvenlik kuralı protokolü. Any, TCP, UDP veya ICMP olmalıdır.
sourceAddresses CIDR biçimli IP adreslerinin JSON ile ayrılmış dizisini temsil eden bir dize. Gelen kuralın hizmet etiketi adı da olabilir; örneğin, AppService. Yıldız işareti, tüm kaynak IP'leri eşleştirmek * için de kullanılabilir.
destinationAddresses CIDR biçimli IP adreslerinin JSON ile ayrılmış dizisini temsil eden bir dize. Giden kuralı için bir hizmet etiketi adı da olabilir; örneğin, AppService. Yıldız işareti tüm hedef IP'leri eşleştirmek * için de kullanılabilir.
eylem Güvenlik grubu erişim türü. İzin Ver veya Reddet olmalıdır.
destinationPortRanges 80 veya 1024-65535 gibi tek bağlantı noktalarının ve/veya bağlantı noktası aralıklarının JSON ile ayrılmış dizisini temsil eden dize.
sourcePortRanges 80 veya 1024-65535 gibi tek bağlantı noktalarının ve/veya bağlantı noktası aralıklarının JSON ile ayrılmış dizisini temsil eden dize.
Öncelik NSG içindeki tüm güvenlik kuralları için benzersiz olan 100 ile 4096 arasında bir değer. NSG'de aynı önceliğe sahip başka bir kural zaten varsa hata başarısız olur.
yön Güvenlik kuralından etkilenen trafiğin yönü. Gelen veya Giden olmalıdır.

Örnek JSON

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

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

Sınırlamalar

  • Hata yalnızca mevcut bir NSG'ye uygulanabilir.
  • Trafiği reddetmeyi amaçlayan bir NSG kuralı uygulandığında, mevcut bağlantılar 4 dakika boşta kalana kadar kesilmeyecektir. Bir geçici çözüm, aynı adımda NSG hatası uygulandığında var olan bağlantıların bozulmasına neden olacak bir hata kullanan başka bir dal eklemektir. Örneğin, işlemin sonlandırılması, hizmetin geçici olarak durdurulması veya VM'nin yeniden başlatılması bağlantıların sıfırlanmasına neden olabilir.
  • Kurallar eylemin başlangıcında uygulanır. Eylem süresince kuralda yapılan tüm dış değişiklikler denemenin başarısız olmasına neden olur.
  • Uygulama Güvenlik Grubu kurallarının oluşturulması veya değiştirilmesi desteklenmez.
  • Öncelik değerleri hedeflenen her NSG'de benzersiz olmalıdır. Başka bir kuralla aynı öncelik değerine sahip yeni bir kural oluşturmaya çalışmak, denemenin başarısız olmasına neden olur.
  • NSG Güvenlik Kuralı sürüm 1.1 hatası ek flushConnection bir parametreyi destekler. Bu işlevselliğin bilinen etkin bir sorunu vardır: etkinleştirilirse flushConnection hata "FlushingNetworkSecurityGroup Bağlan ionIsNotEnabled" hatasına neden olabilir. Bu hatayı geçici olarak önlemek için parametresini flushConnection devre dışı bırakın veya NSG Güvenlik Kuralı sürüm 1.0 hatasını kullanın.

Service Bus: Kuyruk Durumunu Değiştir

Özellik Değer
Yetenek adı ChangeQueueState-1.0
Hedef türü Microsoft-ServiceBus
Açıklama Service Bus ad alanı içindeki Kuyruk varlıklarını istenen duruma ayarlar. Belirli varlık adlarını etkileyebilir veya tümünü etkilemek için "*" kullanabilirsiniz. Bu eylem, bakım veya hata senaryoları için mesajlaşma altyapınızı test etmenize yardımcı olabilir. Bu ayrık bir hata olduğundan varlık otomatik olarak başlangıç durumuna döndürülmeyecek.
Önkoşullar En az bir Kuyruk varlığına sahip bir Service Bus ad alanı.
Urn urn:csci:microsoft:serviceBus:changeQueueState/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
desiredState Hedeflenen kuyruklar için istenen durum. Olası durumlar Etkin, Devre Dışı, SendDisabled ve ReceiveDisabled'dır.
kuyruklar Hedeflenen ad alanı içindeki kuyruk adlarının virgülle ayrılmış listesi. Ad alanı içindeki tüm kuyrukları etkilemek için "*" kullanın.

Örnek JSON

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

Sınırlamalar

  • Bu hataya en fazla 1000 kuyruk varlığı geçirilebilir.

Service Bus: Abonelik Durumunu Değiştir

Özellik Değer
Yetenek adı ChangeSubscriptionState-1.0
Hedef türü Microsoft-ServiceBus
Açıklama Service Bus ad alanı ve Konu içindeki Abonelik varlıklarını istenen duruma ayarlar. Belirli varlık adlarını etkileyebilir veya tümünü etkilemek için "*" kullanabilirsiniz. Bu eylem, bakım veya hata senaryoları için mesajlaşma altyapınızı test etmenize yardımcı olabilir. Bu ayrık bir hata olduğundan varlık otomatik olarak başlangıç durumuna döndürülmeyecek.
Önkoşullar En az bir Abonelik varlığına sahip bir Service Bus ad alanı.
Urn urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
desiredState Hedeflenen abonelikler için istenen durum. Olası durumlar Etkin ve Devre Dışı'dır.
topic Etkilenmesi gereken bir veya daha fazla abonelik içeren üst konu.
abonelikler Hedeflenen ad alanı içindeki abonelik adlarının virgülle ayrılmış listesi. Ad alanı içindeki tüm abonelikleri etkilemek için "*" kullanın.

Örnek JSON

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

Sınırlamalar

  • Bu hataya en fazla 1000 abonelik varlığı geçirilebilir.

Service Bus: Konu Durumunu Değiştir

Özellik Değer
Yetenek adı ChangeTopicState-1.0
Hedef türü Microsoft-ServiceBus
Açıklama Service Bus ad alanı içinde belirtilen Konu varlıklarını istenen duruma ayarlar. Belirli varlık adlarını etkileyebilir veya tümünü etkilemek için "*" kullanabilirsiniz. Bu eylem, bakım veya hata senaryoları için mesajlaşma altyapınızı test etmenize yardımcı olabilir. Bu ayrık bir hata olduğundan varlık otomatik olarak başlangıç durumuna döndürülmeyecek.
Önkoşullar En az bir Konu varlığı olan bir Service Bus ad alanı.
Urn urn:csci:microsoft:serviceBus:changeTopicState/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
desiredState Hedeflenen konular için istenen durum. Olası durumlar Etkin ve Devre Dışı'dır.
konuları Hedeflenen ad alanı içindeki konu adlarının virgülle ayrılmış listesi. Ad alanı içindeki tüm konuları etkilemek için "*" kullanın.

Örnek JSON

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

Sınırlamalar

  • Bu hataya en fazla 1000 konu varlığı geçirilebilir.

VM Yeniden Dağıtma

Özellik Değer
Yetenek adı Yeniden Dağıt-1.0
Hedef türü Microsoft-VirtualMachine
Açıklama Vm'yi kapatıp Azure altyapısında yeni bir düğüme taşıyarak ve yeniden açarak yeniden dağıtır. Bu, iş yükünüzün bakım olaylarına dayanıklılığını doğrulamaya yardımcı olur.
Önkoşullar Yok.
Urn urn:csci:microsoft:virtualMachine:redeploy/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer) Yok.

Örnek JSON

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

Sınırlamalar

  • Sanal Makine Yeniden Dağıtma işlemi 10 saatlik bir zaman aralığı içinde kısıtlanır. Denemeniz "Çok fazla yeniden dağıtım isteği" hatasıyla başarısız olursa, denemeyi yeniden denemek için 10 saat bekleyin.

VM Kapatma

Özellik Değer
Yetenek adı Kapatma-1.0
Hedef türü Microsoft-VirtualMachine
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata süresi boyunca vm'yi kapatır. Denemenin sonunda veya deneme iptal edilirse yeniden başlatır. Yalnızca Azure Resource Manager VM'leri desteklenir.
Önkoşullar Yok.
Urn urn:csci:microsoft:virtualMachine:shutdown/1.0
Parametreler (anahtar, değer)
abruptShutdown (İsteğe bağlı) VM'nin düzgün bir şekilde mi yoksa aniden mı (yıkıcı) kapatılması gerektiğini gösteren Boole değeri.

Örnek JSON

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

VMSS Kapatma

Bu hatanın kullanabileceğiniz iki sürümü vardır: Sürüm 1.0 ve Sürüm 2.0. Temel fark, Sürüm 2.0'ın kullanılabilirlik alanlarına göre filtrelemenize olanak sağlaması ve yalnızca belirli bir bölge veya bölge içindeki örnekleri kapatmanızdır.

VMSS Kapatma Sürümü 1.0

Özellik Değer
Yetenek adı Sürüm 1.0
Hedef türü Microsoft-VirtualMachineScaleSet
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata sırasında bir sanal makine ölçek kümesi örneğini kapatır veya öldürür ve hata süresinin sonunda veya deneme iptal edilirse VM'yi yeniden başlatır.
Önkoşullar Yok.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0
Parametreler (anahtar, değer)
abruptShutdown (İsteğe bağlı) Sanal makine ölçek kümesi örneğinin düzgün bir şekilde mi yoksa aniden mı (yıkıcı) kapatılması gerektiğini gösteren Boole değeri.
örnekler Hatanın uygulandığı sanal makine ölçek kümesi örnek kimliklerinden oluşan sınırlandırılmış bir dizi olan dize.
Sürüm 1.0 örnek JSON
{
  "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 Kapatma Sürümü 2.0

Özellik Değer
Yetenek adı Kapatma-2.0
Hedef türü Microsoft-VirtualMachineScaleSet
Desteklenen işletim sistemi türleri Windows, Linux.
Açıklama Hata sırasında sanal makine ölçek kümesi örneğini kapatır veya öldürür. Hata süresinin sonunda veya deneme iptal edilirse VM'yi yeniden başlatır. Dinamik hedeflemeyi destekler.
Önkoşullar Yok.
Urn urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0
filter (İsteğe bağlı) Sürüm 2.0'dan itibaren kullanılabilir. Bir seçicideki hedeflerin listesini filtrelemek için kullanılır. Şu anda bölge listesinde filtrelemeyi desteklemektedir. Filtre yalnızca bir bölge içindeki sanal makine ölçek kümesi kaynaklarına uygulanır:
  • Filtre belirtilmezse, bu hata sanal makine ölçek kümesindeki tüm örnekleri kapatır.
  • Deneme, belirtilen bölgelerdeki tüm sanal makine ölçek kümesi örneklerini hedefler.
  • Bir filtre hedefle sonuçlanırsa deneme başarısız olur.
Parametreler (anahtar, değer)
abruptShutdown (İsteğe bağlı) Sanal makine ölçek kümesi örneğinin düzgün bir şekilde mi yoksa aniden mı (yıkıcı) kapatılması gerektiğini gösteren Boole değeri.
Sürüm 2.0 örnek JSON parçacıkları

Aşağıdaki kod parçacıklarında hem dinamik filtrelemenin hem de kapatma 2.0 hatasının nasıl yapılandırılması gerektiği gösterilmektedir.

Dinamik hedefleme için bir filtre yapılandırın:

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

Kapatma hatasını yapılandırın:

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

Sınırlamalar

Şu anda yalnızca Tekdüzen düzenleme moduyla yapılandırılmış sanal makine ölçek kümeleri desteklenmektedir. Sanal makine ölçek kümeniz Esnek düzenleme kullanıyorsa, seçilen örnekleri kapatmak için Azure Resource Manager sanal makine kapatma hatasını kullanabilirsiniz.

Ayrıntılar: Düzenleme eylemleri

Delay (Gecikme Süresi)

Özellik Değer
Hata sağlayıcısı Yok
Desteklenen işletim sistemi türleri Yok
Açıklama Diğer deneme eylemlerinin öncesinde, arasında veya sonrasında bir gecikme süresi ekler. Bu eylem bir hata değildir ve deneme içindeki eylemleri eşitlemek için kullanılır. Hizmette hatanın etkisinin görünmesini beklemek veya deneme dışındaki bir etkinliğin tamamlanmasını beklemek için bu eylemi kullanın. Örneğin, denemeniz başka bir hata eklemeden önce otomatik sağlık durumunun gerçekleşmesini bekleyebilir.
Önkoşullar Yok
Urn urn:csci:microsoft:chaosStudio:timedDelay/1.0
Süre ISO 8601 biçimindeki gecikme süresi (örneğin PT10M).

Örnek JSON

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

Yük Testi Başlatma (Azure Yük Testi)

Özellik Değer
Yetenek adı Başlangıç-1.0
Hedef türü Microsoft-AzureLoadTest
Açıklama Sağlanan yük testi kimliğine göre bir yük testi (Azure Yük Testi'nden) başlatır.
Önkoşullar Azure Yük Testi hizmetinde geçerli bir yük testi kimliğine sahip bir yük testi oluşturulmalıdır.
Urn urn:csci:microsoft:azureLoadTest:start/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
Testıd Azure Yük Testi hizmetinde oluşturulan belirli bir yük testinin kimliği.

Örnek JSON

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

Yük Testlerini Durdur (Azure Yük Testi)

Özellik Değer
Yetenek adı Durdurma-1.0
Hedef türü Microsoft-AzureLoadTest
Açıklama Sağlanan yük testi kimliğine göre yük testini (Azure Yük Testi'nden) durdurur.
Önkoşullar Azure Yük Testi hizmetinde geçerli bir yük testi kimliğine sahip bir yük testi oluşturulmalıdır.
Urn urn:csci:microsoft:azureLoadTest:stop/1.0
Hata türü Ayrık.
Parametreler (anahtar, değer)
Testıd Azure Yük Testi hizmetinde oluşturulan belirli bir yük testinin kimliği.

Örnek JSON

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