Azure Chaos Studio 錯誤和動作連結庫
本文列出您可以在 Chaos Studio 中使用的錯誤,並依適用的資源類型進行組織。 若要瞭解每個資源類型建議哪些角色指派,請參閱 Azure Chaos Studio 支援的資源類型和角色指派。
代理程式型錯誤
代理程式型錯誤會藉由安裝 Chaos Studio 代理程式,插入 Azure 虛擬機器 或虛擬機擴展集實例。 在虛擬機和虛擬機擴展集數據表中,尋找下列這些資源的服務導向錯誤選項。
適用的OS類型 | 錯誤名稱 | 適用的案例 |
---|---|---|
Windows、Linux | CPU 壓力 | 計算容量遺失,資源壓力 |
Windows、Linux | 終止程式 | 相依性中斷 |
Windows、Linux | 網路中斷連線 | 網路中斷 |
Windows、Linux | 網路等待時間 | 網路效能降低 |
Windows、Linux | 網路封包遺失 | 網路可靠性問題 |
Windows、Linux | 物理記憶體壓力 | 記憶體容量遺失,資源壓力 |
Windows、Linux | 停止服務 | 服務中斷/重新啟動 |
Windows、Linux | 時間變更 | 時間同步處理問題 |
Windows、Linux | 虛擬記憶體壓力 | 記憶體容量遺失,資源壓力 |
Linux | 任意壓力-ng 壓力器 | 一般系統壓力測試 |
Linux | Linux DiskIO 壓力 | 磁碟 I/O 效能降低 |
Windows | DiskIO 壓力 | 磁碟 I/O 效能降低 |
Windows | DNS 失敗 | DNS 解析問題 |
Windows | 網路中斷連線 (透過防火牆) | 網路中斷 |
應用程式服務
本節適用於 Microsoft.Web/sites
資源類型。 深入瞭解 App Service。
錯誤名稱 | 適用的案例 |
---|---|
停止 App Service | 服務中斷 |
自動調整設定
本節適用於 Microsoft.Insights/autoscaleSettings
資源類型。 深入瞭解自動調整 設定。
錯誤名稱 | 適用的案例 |
---|---|
停用自動調整 | 計算容量遺失(搭配 VMSS 關機使用時) |
Azure Kubernetes Service
本節適用於 Microsoft.ContainerService/managedClusters
資源類型。 深入瞭解 Azure Kubernetes Service。
錯誤名稱 | 適用的案例 |
---|---|
AKS 混亂網格 DNS 混亂 | DNS 解析問題 |
AKS 混亂網格 HTTP 混亂 | 網路中斷 |
AKS 混亂網格 IO 混亂 | 磁碟降低/壓力 |
AKS 混亂網格核心混亂 | 核心中斷 |
AKS 混亂網格網路混亂 | 網路中斷 |
AKS 混亂網格 Pod 混亂 | 容器中斷 |
AKS 混亂網格壓力混亂 | 系統壓力測試 |
AKS 混亂網格時間混亂 | 時間同步處理問題 |
雲端服務 (經典)
本節適用於 Microsoft.ClassicCompute/domainNames
資源類型。 深入瞭解 雲端服務(傳統版)。
錯誤名稱 | 適用的案例 |
---|---|
雲端服務關機 | 計算遺失 |
叢集 Redis 快取
本節適用於 Microsoft.Cache/redis
資源類型。 深入瞭解叢集快取 for Redis。
錯誤名稱 | 適用的案例 |
---|---|
Azure Cache for Redis (重新啟動) | 相依性中斷 (快取) |
Cosmos DB
本節適用於 Microsoft.DocumentDB/databaseAccounts
資源類型。 深入瞭解 Cosmos DB。
錯誤名稱 | 適用的案例 |
---|---|
Cosmos DB 故障轉移 | 資料庫容錯移轉 |
事件中樞
本節適用於 Microsoft.EventHub/namespaces
資源類型。 深入瞭解事件中樞。
錯誤名稱 | 適用的案例 |
---|---|
變更事件中樞狀態 | 傳訊基礎結構設定錯誤/中斷 |
金鑰保存庫
本節適用於 Microsoft.KeyVault/vaults
資源類型。 深入瞭解 金鑰保存庫。
錯誤名稱 | 適用的案例 |
---|---|
金鑰保存庫:拒絕存取 | 憑證拒絕 |
金鑰保存庫:停用憑證 | 憑證中斷 |
金鑰保存庫:遞增憑證版本 | 憑證版本遞增 |
金鑰保存庫:更新憑證原則 | 憑證原則變更/設定錯誤 |
網路安全性群組
本節適用於 Microsoft.Network/networkSecurityGroups
資源類型。 深入了解網路安全組。
錯誤名稱 | 適用的案例 |
---|---|
NSG 安全性規則 | 網路中斷(適用於許多 Azure 服務) |
服務匯流排
本節適用於 Microsoft.ServiceBus/namespaces
資源類型。 深入瞭解 服務匯流排。
錯誤名稱 | 適用的案例 |
---|---|
變更佇列狀態 | 傳訊基礎結構設定錯誤/中斷 |
變更訂閱狀態 | 傳訊基礎結構設定錯誤/中斷 |
變更主題狀態 | 傳訊基礎結構設定錯誤/中斷 |
虛擬機器 (服務直接)
本節適用於 Microsoft.Compute/virtualMachines
資源類型。 深入瞭解 虛擬機器。
錯誤名稱 | 適用的案例 |
---|---|
VM 重新部署 | 計算中斷、維護事件 |
VM 關機 | 計算遺失/中斷 |
虛擬機器擴展集
本節適用於 Microsoft.Compute/virtualMachineScaleSets
資源類型。 深入瞭解 虛擬機器擴展集。
錯誤名稱 | 適用的案例 |
---|---|
VMSS 關機 | 計算遺失/中斷 |
VMSS 關機 (2.0) | 計算遺失/中斷(依可用性區域) |
協調流程動作
這些動作是建構有效實驗的建置組塊。 將它們與其他錯誤搭配使用,例如在平行關閉區域中的計算實例時執行負載測試。
動作類別 | 錯誤名稱 |
---|---|
Load | 啟動負載測試 (Azure 負載測試) |
Load | 停止負載測試 (Azure 負載測試) |
時間延遲 | Delay |
詳細數據:代理程式型錯誤
網路中斷連線
屬性 | 值 |
---|---|
功能名稱 | NetworkDisconnect-1.1 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux。 |
描述 | 封鎖指定埠範圍和網路區塊的輸出網路流量。 至少必須提供一個 destinationFilter 或 inboundDestinationFilter 陣列。 |
必要條件 | Windows: 代理程式必須以系統管理員身分執行,如果安裝為 VM 擴充功能,則預設會發生此情況。 |
Linux:tc [流量控制] 套件用於網路錯誤。 如果尚未安裝,代理程式會自動嘗試從預設套件管理員安裝它。 |
|
甕 | urn:csci:microsoft:agent:networkDisconnect/1.1 |
參數(索引鍵、值) | |
destinationFilters | 封包篩選的分隔 JSON 陣列,定義要鎖定的輸出封包。 最大值為 16。 |
inboundDestinationFilters | 封包篩選的分隔 JSON 陣列,定義要鎖定的輸入封包。 最大值為 16。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
destinationFilters 和 inboundDestinationFilters 參數會使用下列封包篩選陣列。
屬性 | 值 |
---|---|
address | 指出IP範圍的開頭的IP位址。 |
subnetMask | IP 位址範圍的子網掩碼。 |
portLow | (選擇性)埠範圍的開頭埠號碼。 |
portHigh | (選擇性)埠範圍的結尾埠號碼。 |
範例 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"
}
]
}
限制
- 代理程式型網路錯誤目前僅支援 IPv4 位址。
- 網路中斷連線錯誤只會影響新的連線。 現有的作用中聯機會繼續保存。 您可以重新啟動服務或進程,強制連線中斷。
- 在 Windows 上執行時,網路中斷連線錯誤目前僅適用於 TCP 或 UDP 封包。
網路中斷連線 (透過防火牆)
屬性 | 值 |
---|---|
功能名稱 | NetworkDisconnectViaFirewall-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows |
描述 | 套用 Windows 防火牆規則,以封鎖指定埠範圍和網路區塊的輸出流量。 |
必要條件 | 代理程式必須以系統管理員身分執行。 如果代理程式安裝為 VM 擴充功能,則預設會以系統管理員身分執行。 |
甕 | urn:csci:microsoft:agent:networkDisconnectViaFirewall/1.0 |
參數(索引鍵、值) | |
destinationFilters | 封包篩選的分隔 JSON 陣列,定義要以錯誤插入為目標的輸出封包。 |
address | 指出IP範圍的開頭的IP位址。 |
subnetMask | IP 位址範圍的子網掩碼。 |
portLow | (選擇性)埠範圍的開頭埠號碼。 |
portHigh | (選擇性)埠範圍的結尾埠號碼。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
限制
- 代理程式型網路錯誤目前僅支援 IPv4 位址。
網路延遲
屬性 | 值 |
---|---|
功能名稱 | NetworkLatency-1.1 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux(僅限輸出流量) |
描述 | 增加指定埠範圍和網路區塊的網路等待時間。 至少必須提供一個 destinationFilter 或 inboundDestinationFilter 陣列。 |
必要條件 | Windows: 代理程式必須以系統管理員身分執行,如果安裝為 VM 擴充功能,則預設會發生此情況。 |
Linux:tc [流量控制] 套件用於網路錯誤。 如果尚未安裝,代理程式會自動嘗試從預設套件管理員安裝它。 |
|
甕 | urn:csci:microsoft:agent:networkLatency/1.1 |
參數(索引鍵、值) | |
latencyInMilliseconds | 要以毫秒為單位套用的延遲量。 |
destinationFilters | 封包篩選的分隔 JSON 陣列,定義要鎖定的輸出封包。 最大值為 16。 |
inboundDestinationFilters | 封包篩選的分隔 JSON 陣列,定義要鎖定的輸入封包。 最大值為 16。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
destinationFilters 和 inboundDestinationFilters 參數會使用下列封包篩選陣列。
屬性 | 值 |
---|---|
address | 指出IP範圍的開頭的IP位址。 |
subnetMask | IP 位址範圍的子網掩碼。 |
portLow | (選擇性)埠範圍的開頭埠號碼。 |
portHigh | (選擇性)埠範圍的結尾埠號碼。 |
範例 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"
}
]
}
限制
- 代理程式型網路錯誤目前僅支援 IPv4 位址。
- 在 Linux 上執行時,網路等待時間錯誤只會影響 輸出 流量,而不會影響連入流量。 錯誤可能會影響 Windows 環境的輸入和輸出 流量(透過
inboundDestinationFilters
和destinationFilters
參數)。 - 在 Windows 上執行時,網路等待時間錯誤目前僅適用於 TCP 或 UDP 封包。
網路封包遺失
屬性 | 值 |
---|---|
功能名稱 | NetworkPacketLoss-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux |
描述 | 以指定的速率導入輸出流量的封包遺失,介於0.0(未遺失封包)和1.0之間(所有封包遺失)。 此動作可協助模擬網路壅塞或網路硬體問題等案例。 |
必要條件 | Windows: 代理程式必須以系統管理員身分執行,如果安裝為 VM 擴充功能,則預設會發生此情況。 |
Linux:tc [流量控制] 套件用於網路錯誤。 如果尚未安裝,代理程式會自動嘗試從預設套件管理員安裝它。 |
|
甕 | urn:csci:microsoft:agent:networkPacketLoss/1.0 |
參數(索引鍵、值) | |
packetLossRate | 比對目的地篩選的封包將會遺失的速率,範圍從0.0到1.0不等。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
destinationFilters | 封包篩選條件的分隔 JSON 陣列(參數如下),定義要針對錯誤插入的目標輸出封包。 最多三個。 |
address | 指出IP範圍的開頭的IP位址。 |
subnetMask | IP 位址範圍的子網掩碼。 |
portLow | (選擇性)埠範圍的開頭埠號碼。 |
portHigh | (選擇性)埠範圍的結尾埠號碼。 |
範例 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"
}
]
}
限制
- 代理程式型網路錯誤目前僅支援 IPv4 位址。
- 在 Windows 上執行時,網路封包遺失錯誤目前僅適用於 TCP 或 UDP 封包。
DNS 失敗
屬性 | 值 |
---|---|
功能名稱 | DnsFailure-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows |
描述 | 以指定的錯誤碼取代 DNS 查閱要求回應。 替代的 DNS 查閱要求必須:
|
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:dnsFailure/1.0 |
參數(索引鍵、值) | |
主機 | 主機名的分隔 JSON 陣列,無法要求 DNS 查閱。 這個屬性接受通配符 ( * ),但僅適用於位址中的第一個子域,而且只適用於指定它們的子域。 例如:
|
dnsFailureReturnCode | 要傳回給用戶端的 DNS 錯誤碼以進行查閱失敗(FormErr、ServFail、NXDomain、NotImp、Refused、XDomain、YXRRSet、NXRRSet、NotAuth、NotZone)。 如需 DNS 傳回碼的詳細資訊,請參閱 IANA 網站。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
限制
- DNS 失敗錯誤需要 Windows 2019 RS5 或更新版本。
- DNS 快取會在錯誤中所定義的主機名發生錯誤期間忽略。
CPU 壓力
屬性 | 值 |
---|---|
功能名稱 | CPUPressure-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤動作期間插入此錯誤的 VM 上,將 CPU 壓力增加至指定的值。 人工 CPU 壓力會在持續時間結束時移除,或如果取消實驗,則會移除。 在 Windows 上 ,在錯誤開始時會使用 % Processor Utility 性能計數器來判斷目前的 CPU 百分比,這會從 pressureLevel 錯誤中定義的 減去,讓 % Processor Utility 達到錯誤參數中定義的大約 pressureLevel 。 |
必要條件 | Linux: 需要安裝 stress-ng 公用程式。 安裝會在代理程式安裝時自動進行,使用預設套件管理員,在數個操作系統上執行,包括 Debian 型 (例如 Ubuntu)、Red Hat Enterprise Linux 和 OpenSUSE。 針對其他散發套件,包括 Azure Linux,您必須手動安裝 stress-ng 。 如需詳細資訊,請參閱上游專案存放 庫。 |
Windows:無。 | |
甕 | urn:csci:microsoft:agent:cpuPressure/1.0 |
參數(索引鍵、值) | |
pressureLevel | 介於 1 到 99 之間的整數,指出 CPU 壓力的百分比 。 會根據 % CPU 使用量來套用至 VM |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
限制
Linux 上的已知問題:
- 如果
AzureChaosAgent
意外終止,壓力效果可能無法正確終止。
物理記憶體壓力
屬性 | 值 |
---|---|
功能名稱 | PhysicalMemoryPressure-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤動作期間插入此錯誤的 VM 上,將物理記憶體壓力新增至指定的值。 人工物理記憶體壓力會在持續時間結束時移除,或者如果取消實驗,則會移除。 |
必要條件 | Linux: 需要安裝 stress-ng 公用程式。 安裝會在代理程式安裝時自動進行,使用預設套件管理員,在數個操作系統上執行,包括 Debian 型 (例如 Ubuntu)、Red Hat Enterprise Linux 和 OpenSUSE。 針對其他散發套件,包括 Azure Linux,您必須手動安裝 stress-ng 。 如需詳細資訊,請參閱上游專案存放 庫。 |
Windows:無。 | |
甕 | urn:csci:microsoft:agent:physicalMemoryPressure/1.0 |
參數(索引鍵、值) | |
pressureLevel | 介於 1 到 99 之間的整數,指出 VM 套用多少物理記憶體壓力 。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
限制
目前,當其他應用程式增加記憶體使用量時,Windows 代理程式不會降低記憶體壓力。 如果整體記憶體使用量超過 100%,Windows 代理程式可能會當機。
虛擬記憶體壓力
屬性 | 值 |
---|---|
功能名稱 | VirtualMemoryPressure-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows |
描述 | 在錯誤動作期間插入此錯誤的 VM 上,將虛擬記憶體壓力新增至指定的值。 人工虛擬記憶體壓力會在持續時間結束時移除,或取消實驗時。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:virtualMemoryPressure/1.0 |
參數(索引鍵、值) | |
pressureLevel | 介於 1 到 99 之間的整數,指出 VM 套用多少物理記憶體壓力 。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
磁碟 IO 壓力
屬性 | 值 |
---|---|
功能名稱 | DiskIOPressure-1.1 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows |
描述 | 使用 diskspd 公用程式將磁碟壓力新增至虛擬機。 根據預設,壓力會新增至主要磁碟,或以 targetTempDirectory 參數指定的磁碟。 這個錯誤有五種不同的執行模式。 人工磁碟壓力會在持續時間結束時移除,或取消實驗時。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:diskIOPressure/1.1 |
參數(索引鍵、值) | |
pressureMode | 要新增至 VM 主要記憶體的磁碟壓力預設模式。 下表中必須有其中 PressureModes 一個。 |
targetTempDirectory | (選擇性)要用於套用磁碟壓力的目錄。 例如: D:/Temp 。 如果未包含 參數,壓力會新增至主要磁碟。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
壓力模式
PressureMode | 描述 |
---|---|
進階版儲存體 P10IOPS | numberOfThreads = 1 randomBlockSizeInKB = 64 randomSeed = 10 numberOfIOperThread = 25 sizeOfBlocksInKB = 8 sizeOfWriteBufferInKB = 64 fileSizeInGB = 2 percentOfWriteActions = 50 |
進階版儲存體 P10Throttling | numberOfThreads = 2 randomBlockSizeInKB = 64 randomSeed = 10 numberOfIOperThread = 25 sizeOfBlocksInKB = 64 sizeOfWriteBufferInKB = 64 fileSizeInGB = 1 percentOfWriteActions = 50 |
進階版儲存體 P50IOPS | numberOfThreads = 32 randomBlockSizeInKB = 64 randomSeed = 10 numberOfIOperThread = 32 sizeOfBlocksInKB = 8 sizeOfWriteBufferInKB = 64 fileSizeInGB = 1 percentOfWriteActions = 50 |
進階版儲存體 P50Throttling | numberOfThreads = 2 randomBlockSizeInKB = 1024 randomSeed = 10 numberOfIOperThread = 2 sizeOfBlocksInKB = 1024 sizeOfWriteBufferInKB = 1024 fileSizeInGB = 20 percentOfWriteActions = 50 |
預設 | numberOfThreads = 2 randomBlockSizeInKB = 64 randomSeed = 10 numberOfIOperThread = 2 sizeOfBlocksInKB = 64 sizeOfWriteBufferInKB = 64 fileSizeInGB = 1 percentOfWriteActions = 50 |
範例 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 磁碟 IO 壓力
屬性 | 值 |
---|---|
功能名稱 | LinuxDiskIOPressure-1.1 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Linux |
描述 | 使用 stress-ng 將壓力套用至磁碟。 會繁衍一或多個背景工作進程,以使用暫存盤執行 I/O 進程。 根據預設,壓力會新增至主要磁碟,或以 targetTempDirectory 參數指定的磁碟。 如需壓力套用方式的資訊,請參閱 壓力一 文。 |
必要條件 | Linux: 需要安裝 stress-ng 公用程式。 安裝會在代理程式安裝時自動進行,使用預設套件管理員,在數個操作系統上執行,包括 Debian 型 (例如 Ubuntu)、Red Hat Enterprise Linux 和 OpenSUSE。 針對其他散發套件,包括 Azure Linux,您必須手動安裝 stress-ng 。 如需詳細資訊,請參閱上游專案存放 庫。 |
甕 | urn:csci:microsoft:agent:linuxDiskIOPressure/1.1 |
參數(索引鍵、值) | |
workerCount | 要執行的背景工作進程數目。 將 設定 workerCount 為 0 會產生與處理器數目一樣多的背景工作進程。 |
fileSizePerWorker | 背景工作角色執行 I/O 作業的暫存盤大小。 整數加上位元組 (b)、KB (k)、MB (m)或 GB (g) 的單位(例如 4m ,4 MB 和 256g 256 GB)。 |
blockSize | 要用於磁碟 I/O 作業的區塊大小,大於 1 位元節且小於 4 MB(最大值為 4095k )。 整數加上以位元組、KB 或 MB 為單位的單位(例如, 512k 512 KB)。 |
targetTempDirectory | (選擇性)要用於套用磁碟壓力的目錄。 例如: /tmp/ 。 如果未包含 參數,壓力會新增至主要磁碟。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 JSON
這些範例值在具有 進階版 SSD LRS 的Standard_D2s_v3
虛擬機上測試時,會產生 ~100% 的磁碟壓力。 大型 fileSizePerWorker 和較小的 blockSize 有助於讓磁碟完全緊張。
{
"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"
}
]
}
停止服務
屬性 | 值 |
---|---|
功能名稱 | StopService-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤期間停止 Windows 服務或 Linux 系統服務。 在持續時間結束時重新啟動,或取消實驗時。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:stopService/1.0 |
參數(索引鍵、值) | |
serviceName | 您要停止的 Windows 服務或 Linux 系統服務名稱。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
限制
- Windows:不支援服務的顯示名稱。 在
sc.exe query
命令提示字元中使用 來探索服務名稱。 - Linux:不支援 systemd 以外的其他服務類型,例如 sysvinit。
終止程式
屬性 | 值 |
---|---|
功能名稱 | KillProcess-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows、Linux。 |
描述 | 終止符合錯誤參數中傳送之進程名稱的所有執行中實例。 在錯誤動作的持續時間內,程式會根據指定的終止間隔值重複終止。 如果已為其設定自我修復,則此錯誤是破壞性錯誤,系統管理員必須手動復原程式。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:killProcess/1.0 |
參數(索引鍵、值) | |
processName | 要持續終止的進程名稱(不含.exe)。 當錯誤開始執行時,不需要執行進程。 |
killIntervalInMilliseconds | 錯誤在連續終止嘗試之間以毫秒為單位等候的時間量。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
時間變更
屬性 | 值 |
---|---|
功能名稱 | TimeChange-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Windows |
描述 | 變更虛擬機的系統時間,並在實驗結束時重設時間,或取消實驗時。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:agent:timeChange/1.0 |
參數(索引鍵、值) | |
dateTime | ISO8601格式的 DateTime 字串。 如果 YYYY-MM-DD 遺漏值,則會在實驗執行時預設為目前一天。 如果遺漏 Thh:mm:ss 值,預設值為上午 12:00:00。 如果提供2位數年份(YY ),則會根據目前的世紀轉換成4位數年份。YYYY 如果缺少時區 <Z> ,則預設位移為當地時區。 <Z> 必須一律包含符號符號(負數或正數)。 |
virtualMachineScaleSetInstances | 當您將此錯誤套用至虛擬機擴展集時,實例標識碼的陣列。 統一協調流程模式中虛擬機擴展集的必要專案。 深入了解實例標識碼。 |
範例 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"
}
]
}
任意壓力-ng 壓力器
屬性 | 值 |
---|---|
功能名稱 | StressNg-1.0 |
目標類型 | Microsoft-Agent |
支援的OS類型 | Linux |
描述 | 將自變數直接傳遞至 stress-ng,以執行任何 stress-ng 命令。 當其中一個預先定義的壓力錯誤不符合您的需求時很有用。 |
必要條件 | Linux: 需要安裝 stress-ng 公用程式。 安裝會在代理程式安裝時自動進行,使用預設套件管理員,在數個操作系統上執行,包括 Debian 型 (例如 Ubuntu)、Red Hat Enterprise Linux 和 OpenSUSE。 針對其他散發套件,包括 Azure Linux,您必須手動安裝 stress-ng 。 如需詳細資訊,請參閱上游專案存放 庫。 |
甕 | urn:csci:microsoft:agent:stressNg/1.0 |
參數(索引鍵、值) | |
stressNgArguments | 要傳遞至壓力程式的一或多個自變數。 如需可能壓力自變數的資訊,請參閱 stress-ng 文章。 注意:請勿包含 “-t” 自變數,因為它會造成錯誤。 實驗長度會直接在 Azure 混亂實驗 UI 中定義,而不是在 stressNgArguments 中定義。 |
範例 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"
}
]
}
詳細數據:服務導向錯誤
停止 App Service
屬性 | 值 |
---|---|
功能名稱 | Stop-1.0 |
目標類型 | Microsoft-AppService |
描述 | 停止目標 App Service 應用程式,然後在錯誤持續時間結束時重新啟動。 此動作適用於「Microsoft.Web/sites」類型的資源,包括App Service、API Apps、Mobile Apps 和 Azure Functions。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:appService:stop/1.0 |
錯誤類型 | 連續。 |
參數(索引鍵、值) | 無。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "continuous",
"name": "urn:csci:microsoft:appService:stop/1.0",
"duration": "PT10M",
"parameters":[],
"selectorid": "myResources"
}
]
}
停用自動調整
屬性 | 值 |
---|---|
功能名稱 | DisaleAutoscale |
目標類型 | Microsoft-Autoscale 設定 |
描述 | 停用 自動調整服務。 停用自動調整時,虛擬機擴展集、Web 應用程式、服務總線等資源不會根據應用程式的負載自動新增或移除。 |
必要條件 | 在資源上啟用的 autoScalesetting 資源必須上線至 Chaos Studio。 |
甕 | urn:csci:microsoft:autoscalesettings:disableAutoscale/1.0 |
錯誤類型 | 連續。 |
參數(索引鍵、值) | |
enableOnComplete | 布林值。 設定是否在動作完成後重新啟用自動調整。 預設值為 true 。 |
範例 JSON
{
"name": "BranchOne",
"actions": [
{
"type": "continuous",
"name": "urn:csci:microsoft:autoscaleSetting:disableAutoscale/1.0",
"parameters": [
{
"key": "enableOnComplete",
"value": "true"
}
],
"duration": "PT2M",
"selectorId": "Selector1",
}
]
}
AKS 混亂網格網路混亂
屬性 | 值 |
---|---|
功能名稱 | NetworkChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 提供的網路錯誤,以針對您的 Azure Kubernetes Service (AKS) 叢集執行。 適用於重新建立因網路中斷、延遲、重複、遺失和損毀而產生的 AKS 事件。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:networkChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 NetworkChaos 種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格 Pod 混亂
屬性 | 值 |
---|---|
功能名稱 | PodChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 導致透過 Chaos Mesh 提供的 Pod 錯誤,對您的 AKS 叢集執行。 適用於重新建立因 Pod 失敗或容器問題而發生的 AKS 事件。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:podChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | JSON 格式的 Chaos Mesh 規格,其使用 PodChaos 種類。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格壓力混亂
屬性 | 值 |
---|---|
功能名稱 | StressChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 對 AKS 叢集執行的壓力錯誤。 因 Pod 集合的壓力而重新建立 AKS 事件很有用,例如,因為 CPU 或記憶體耗用量偏高。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:stressChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 StressChaos 種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格 IO 混亂
屬性 | 值 |
---|---|
功能名稱 | IOChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 提供的 IO 錯誤,對您的 AKS 叢集執行。 當您使用、 和 write 等 open read IO 系統呼叫時,因 IO 延遲和讀取/寫入失敗而重新建立 AKS 事件很有用。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:IOChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 IOChaos種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格時間混亂
屬性 | 值 |
---|---|
功能名稱 | TimeChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 使用 Chaos Mesh 在您的 AKS 叢集上造成系統時鐘變更。 對於重新建立 AKS 事件很有用,因為分散式系統不同步、遺漏/不正確的閏年/閏秒邏輯等等。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:timeChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 TimeChaos 種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格核心混亂
屬性 | 值 |
---|---|
功能名稱 | KernelChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 提供的核心錯誤,以針對您的 AKS 叢集執行。 因 Linux 核心層級錯誤而重新建立 AKS 事件很有用,例如未配置掛接失敗或記憶體。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:kernelChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | JSON 格式的 Chaos Mesh 規格,其使用 KernelChaos 種類。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格 HTTP 混亂
屬性 | 值 |
---|---|
功能名稱 | HTTPChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 提供的 HTTP 錯誤,對您的 AKS 叢集執行。 因 HTTP 要求和回應處理失敗而重新建立事件很有用,例如延遲或不正確的回應。 |
必要條件 | AKS 叢集必須 已部署 Chaos Mesh。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:httpChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 HTTPChaos 種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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 混亂網格 DNS 混亂
屬性 | 值 |
---|---|
功能名稱 | DNSChaos-2.1 |
目標類型 | Microsoft-AzureKubernetesServiceChaosMesh |
支援的節點集區 OS 類型 | Linux |
描述 | 造成透過 Chaos Mesh 提供的 DNS 錯誤,對您的 AKS 叢集執行。 因為 DNS 失敗而重新建立事件很有用。 |
必要條件 | AKS 叢集必須 已 部署 Chaos Mesh,且 必須安裝 DNS 服務。 |
甕 | urn:csci:microsoft:azureKubernetesServiceChaosMesh:dnsChaos/2.1 |
參數(索引鍵、值) | |
jsonSpec | 使用 DNSChaos 種類之 JSON 格式的 Chaos Mesh 規格。 您可以使用 YAML 對 JSON 轉換程式,例如 將 YAML 轉換為 JSON ,將 Chaos Mesh YAML 轉換為 JSON,並將其縮減。 在 JSON 中使用單引號,或使用反斜杠字元逸出引號。 只包含 屬性下的 jsonSpec YAML。 請勿包含元數據和種類等資訊。 在內 jsonSpec 指定持續時間並非必要,但如果可用,則會使用它。 |
範例 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"
}
]
}
雲端服務 (傳統) 關機
屬性 | 值 |
---|---|
功能名稱 | Shutdown-1.0 |
目標類型 | Microsoft-DomainName |
描述 | 在錯誤期間停止部署。 在錯誤持續時間結束時重新啟動部署,或如果取消實驗,則重新啟動。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:domainName:shutdown/1.0 |
錯誤類型 | 連續。 |
參數 | 無。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "continuous",
"name": "urn:csci:microsoft:domainName:shutdown/1.0",
"parameters": [],
"duration": "PT10M",
"selectorid": "myResources"
}
]
}
Azure Cache for Redis (重新啟動)
屬性 | 值 |
---|---|
功能名稱 | Reboot-1.0 |
目標類型 | Microsoft-AzureClusteredCacheForRedis |
描述 | 導致目標上發生強制重新啟動作業,以模擬短暫的中斷。 |
必要條件 | N/A |
甕 | urn:csci:microsoft:azureClusteredCacheForRedis:reboot/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
rebootType | 要執行重新啟動動作的節點類型,可指定為 PrimaryNode、SecondaryNode 或 AllNodes。 |
shardId | 要重新啟動之分區的標識碼。 僅適用於 進階版 層快取。 |
範例 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"
}
]
}
限制
- 重新啟動錯誤會導致強制重新啟動更能模擬中斷事件,這表示可能會遺失數據。
- 重新啟動錯誤是離散的錯誤類型。 不同於連續錯誤,它是一次性動作,而且沒有持續時間。
Cosmos DB 故障轉移
屬性 | 值 |
---|---|
功能名稱 | Failover-1.0 |
目標類型 | Microsoft-CosmosDB |
描述 | 讓具有單一寫入區域的 Azure Cosmos DB 帳戶故障轉移至指定的讀取區域,以模擬 寫入區域中斷。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:cosmosDB:failover/1.0 |
參數(索引鍵、值) | |
readRegion | 應該在故障轉移期間升階為寫入區域的讀取區域, East US 2 例如 。 |
範例 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"
}
]
}
變更事件中樞狀態
屬性 | 值 |
---|---|
功能名稱 | ChangeEventHubState-1.0 |
目標類型 | Microsoft-EventHub |
描述 | 將個別事件中樞設定為 Azure 事件中樞 命名空間內所需的狀態。 您可以影響特定的事件中樞名稱,或使用 「*」 影響命名空間內的所有名稱。 此動作可協助測試傳訊基礎結構的維護或失敗案例。 這是離散的錯誤,因此不會自動將實體傳回開始狀態。 |
必要條件 | 具有至少一個事件中樞實體的 Azure 事件中樞 命名空間。 |
甕 | urn:csci:microsoft:eventHub:changeEventHubState/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
desiredState | 目標事件中樞的預期狀態。 可能的狀態為 Active、Disabled 和 SendDisabled。 |
eventHubs | 目標命名空間內事件中樞名稱的逗號分隔清單。 使用 「*」 影響命名空間內的所有實體。 |
範例 JSON
{
"name": "Branch1",
"actions": [
{
"selectorId": "Selector1",
"type": "discrete",
"parameters": [
{
"key": "eventhubs",
"value": "[\"*\"]"
},
{
"key": "desiredState",
"value": "Disabled"
}
],
"name": "urn:csci:microsoft:eventHub:changeEventHubState/1.0"
}
]
}
金鑰保存庫:拒絕存取
屬性 | 值 |
---|---|
功能名稱 | DenyAccess-1.0 |
目標類型 | Microsoft-KeyVault |
描述 | 藉由暫時修改金鑰保存庫網路規則,封鎖金鑰保存庫的所有網路存取。 此動作可防止相依於金鑰保存庫的應用程式存取秘密、金鑰和/或憑證。 如果金鑰保存庫允許存取所有網路,此設定會變更為只允許從選取的網路存取。 錯誤開始時,沒有虛擬網路位於允許的清單中。 在錯誤持續時間結束時,所有網路都允許存取。 如果金鑰保存庫設定為只允許從選取的網路存取,則會在錯誤開始時移除允許清單中的任何虛擬網路。 它們會在錯誤持續時間結束時還原。 |
必要條件 | 目標密鑰保存庫不能有任何防火牆規則,且不得設定為允許 Azure 服務略過防火牆。 如果目標金鑰保存庫設定為只允許從選取的網路進行存取,則必須至少有一個虛擬網路規則。 金鑰保存庫無法處於復原模式。 |
甕 | urn:csci:microsoft:keyVault:denyAccess/1.0 |
錯誤類型 | 連續。 |
參數(索引鍵、值) | 無。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "continuous",
"name": "urn:csci:microsoft:keyvault:denyAccess/1.0",
"parameters": [],
"duration": "PT10M",
"selectorid": "myResources"
}
]
}
金鑰保存庫:停用憑證
屬性 | 值 |
---|---|
功能名稱 | DisableCertificate-1.0 |
目標類型 | Microsoft-KeyVault |
描述 | 錯誤會使用憑證屬性來停用特定持續時間的憑證(由使用者提供)。 它會在此錯誤持續時間之後啟用憑證。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:keyvault:disableCertificate/1.0 |
錯誤類型 | 連續。 |
參數(索引鍵、值) | |
certificateName | 執行錯誤的 Azure 金鑰保存庫 憑證名稱。 |
version | 應停用的憑證版本。 如果未指定,則會停用最新版本。 |
範例 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"
}
]
}
金鑰保存庫:遞增憑證版本
屬性 | 值 |
---|---|
功能名稱 | IncrementCertificateVersion-1.0 |
目標類型 | Microsoft-KeyVault |
描述 | 使用 金鑰保存庫 憑證用戶端連結庫產生新的憑證版本和指紋。 目前的工作憑證已升級至此版本。 憑證版本不會在錯誤持續時間之後還原。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:keyvault:incrementCertificateVersion/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
certificateName | 執行錯誤的 Azure 金鑰保存庫 憑證名稱。 |
範例 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"
}
]
}
金鑰保存庫:更新憑證原則
屬性 | 值 |
---|---|
功能名稱 | UpdateCertificatePolicy-1.0 |
目標類型 | Microsoft-KeyVault |
描述 | 憑證原則(例如憑證有效期間、憑證類型、金鑰大小或密鑰類型)會根據使用者輸入進行更新,並在錯誤持續時間后還原。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:keyvault:updateCertificatePolicy/1.0 |
錯誤類型 | 連續。 |
參數(索引鍵、值) | |
certificateName | 執行錯誤的 Azure 金鑰保存庫 憑證名稱。 |
version | 應該更新的憑證版本。 如果未指定,則會更新最新版本。 |
已啟用 | 布林值。 值,指出是否已啟用新的憑證版本。 |
validityInMonths | 憑證的有效期間,以月份為單位。 |
certificateTransparency | 指出憑證是否應該在建立時發佈至憑證透明度清單。 |
certificateType | 憑證類型。 |
contentType | 憑證的內容類型。 例如,當憑證包含原始 PFX 位元組或 Pem 包含 ASCII PEM 編碼位元組時,它是 Pkcs12。 Pkcs12 是假設的預設值。 |
keySize | RSA 金鑰的大小:2048、3072 或 4096。 |
出口 | 布林值。 值,指出憑證金鑰是否可從保存庫或安全證書存儲匯出。 |
reuseKey | 布林值。 值,指出憑證輪替時是否應該重複使用憑證密鑰。 |
keyType | 發行新憑證時所產生的備份密鑰類型,例如 RSA 或 EC。 |
範例 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 安全性規則
屬性 | 值 |
---|---|
功能名稱 | SecurityRule-1.0 |
目標類型 | Microsoft-NetworkSecurityGroup |
描述 | 假設規則定義適用於安全組,即可在現有的 Azure 網路安全組 (NSG) 或一組 Azure NSG 中啟用操作或規則建立。 適用於:
|
必要條件 | 無。 |
甕 | urn:csci:microsoft:networkSecurityGroup:securityRule/1.0 |
參數(索引鍵、值) | |
NAME | 建立之安全性規則的唯一名稱。 如果 NSG 上已有相同名稱的另一個規則,則錯誤會失敗。 必須以字母或數字開頭。 結尾必須是字母、數位或底線。 只能包含字母、數位、底線、句號或連字元。 |
protocol | 安全性規則的通訊協定。 必須是 Any、TCP、UDP 或 ICMP。 |
sourceAddresses | 字串,表示以 JSON 分隔的 CIDR 格式 IP 位址陣列。 也可以輸入 規則的服務標籤名稱 ,例如 AppService 。 星號 * 也可以用來比對所有來源IP。 |
destinationAddresses | 字串,表示以 JSON 分隔的 CIDR 格式 IP 位址陣列。 也可以是 輸出規則的服務標籤名稱 ,例如 AppService 。 星號 * 也可以用來比對所有目的地IP。 |
action | 安全組存取類型。 必須是 [允許] 或 [拒絕]。 |
destinationPortRanges | 字串,表示單一埠和/或埠範圍的 JSON 分隔陣列,例如 80 或 1024-65535。 |
sourcePortRanges | 字串,表示單一埠和/或埠範圍的 JSON 分隔陣列,例如 80 或 1024-65535。 |
priority | 介於 100 到 4096 之間的值,對於 NSG 內的所有安全性規則而言都是唯一的。 如果 NSG 上已有相同優先順序的另一個規則,則錯誤會失敗。 |
direction | 受安全性規則影響的流量方向。 必須是輸入或輸出。 |
範例 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"
}
]
}
限制
- 錯誤只能套用至現有的 NSG。
- 套用要拒絕流量的 NSG 規則時,除非現有 連線閑置 4 分鐘,否則不會中斷。 其中一個因應措施是在同一個步驟中新增另一個分支,該分支使用會導致套用NSG 錯誤時現有的連線中斷。 例如,終止進程、暫時停止服務,或重新啟動 VM 會導致連線重設。
- 規則會在動作開始時套用。 動作期間規則的任何外部變更都會導致實驗失敗。
- 不支援建立或修改應用程式安全組規則。
- 每個目標 NSG 的優先順序值都必須是唯一的。 嘗試建立具有與另一個相同優先順序值的新規則會導致實驗失敗。
服務匯流排:變更佇列狀態
屬性 | 值 |
---|---|
功能名稱 | ChangeQueueState-1.0 |
目標類型 | Microsoft-ServiceBus |
描述 | 將 服務匯流排 命名空間內的佇列實體設定為所需的狀態。 您可以影響特定的實體名稱,或使用 「*」 來影響所有人。 此動作可協助測試傳訊基礎結構的維護或失敗案例。 這是離散的錯誤,因此不會自動將實體傳回開始狀態。 |
必要條件 | 具有至少一個 Queue 實體的 服務匯流排 命名空間。 |
甕 | urn:csci:microsoft:serviceBus:changeQueueState/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
desiredState | 目標佇列的預期狀態。 可能的狀態為 Active、Disabled、SendDisabled 和 ReceiveDisabled。 |
佇列 | 目標命名空間內佇列名稱的逗號分隔清單。 使用 「*」 會影響命名空間內的所有佇列。 |
範例 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"
}
]
}
限制
- 最多可以傳遞 1000 個佇列實體至此錯誤。
服務匯流排:變更訂閱狀態
屬性 | 值 |
---|---|
功能名稱 | ChangeSubscriptionState-1.0 |
目標類型 | Microsoft-ServiceBus |
描述 | 將 服務匯流排 命名空間內的訂用帳戶實體和 Topic 設定為所需的狀態。 您可以影響特定的實體名稱,或使用 「*」 來影響所有人。 此動作可協助測試傳訊基礎結構的維護或失敗案例。 這是離散的錯誤,因此不會自動將實體傳回開始狀態。 |
必要條件 | 具有至少一個訂用帳戶實體的 服務匯流排 命名空間。 |
甕 | urn:csci:microsoft:serviceBus:changeSubscriptionState/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
desiredState | 目標訂用帳戶的預期狀態。 可能的狀態為 [作用中] 和 [已停用]。 |
主題 | 包含一或多個要影響之訂用帳戶的父主題。 |
訂用帳戶 | 目標命名空間內訂用帳戶名稱的逗號分隔清單。 使用 「*」 影響命名空間內的所有訂用帳戶。 |
範例 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"
}
]
}
限制
- 最多可以傳遞 1000 個訂用帳戶實體至此錯誤。
服務匯流排:變更主題狀態
屬性 | 值 |
---|---|
功能名稱 | ChangeTopicState-1.0 |
目標類型 | Microsoft-ServiceBus |
描述 | 將 服務匯流排 命名空間內的指定 Topic 實體設定為所需的狀態。 您可以影響特定的實體名稱,或使用 「*」 來影響所有人。 此動作可協助測試傳訊基礎結構的維護或失敗案例。 這是離散的錯誤,因此不會自動將實體傳回開始狀態。 |
必要條件 | 具有至少一個 Topic 實體的 服務匯流排 命名空間。 |
甕 | urn:csci:microsoft:serviceBus:changeTopicState/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
desiredState | 目標主題的預期狀態。 可能的狀態為 [作用中] 和 [已停用]。 |
主題 | 目標命名空間中主題名稱的逗號分隔清單。 使用 「*」 影響命名空間內的所有主題。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "discrete",
"name": "urn:csci:microsoft:serviceBus:changeTopicState/1.0",
"parameters":[
{
"key": "desiredState",
"value": "Disabled"
},
{
"key": "topics",
"value": "*"
}
],
"selectorid": "myServiceBusSelector"
}
]
}
限制
- 最多可以傳遞 1000 個主題實體至此錯誤。
VM 重新部署
屬性 | 值 |
---|---|
功能名稱 | Redeploy-1.0 |
目標類型 | Microsoft-VirtualMachine |
描述 | 將 VM 關機、將其移至 Azure 基礎結構中的新節點,以及重新開啟電源,以重新部署 VM。 這有助於驗證工作負載對維護事件的復原能力。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:virtualMachine:redeploy/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | 無。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "discrete",
"name": "urn:csci:microsoft:virtualMachine:redeploy/1.0",
"parameters":[],
"selectorid": "myResources"
}
]
}
限制
- 虛擬機重新部署作業會在 10 小時內進行節流。 如果您的實驗失敗,並出現「太多重新部署要求」錯誤,請等候 10 小時重試實驗。
VM 關機
屬性 | 值 |
---|---|
功能名稱 | Shutdown-1.0 |
目標類型 | Microsoft-VirtualMachine |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤期間關閉 VM。 在實驗結束時重新啟動,或如果取消實驗,則重新啟動它。 僅支援 Azure Resource Manager VM。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:virtualMachine:shutdown/1.0 |
參數(索引鍵、值) | |
突然的Shutdown | (選擇性)布爾值,指出 VM 是否應該正常關閉或突然關閉(破壞性)。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "continuous",
"name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
"parameters": [
{
"key": "abruptShutdown",
"value": "false"
}
],
"duration": "PT10M",
"selectorid": "myResources"
}
]
}
VMSS 關機
這個錯誤有兩個可用的版本,您可以使用 1.0 版和 2.0 版。 主要差異在於 2.0 版可讓您依可用性區域進行篩選,只關閉指定區域或區域內的實例。
VMSS 關機 1.0 版
屬性 | 值 |
---|---|
功能名稱 | 1.0 版 |
目標類型 | Microsoft-VirtualMachineScaleSet |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤期間關閉或終止虛擬機擴展集實例,並在錯誤持續時間結束時重新啟動 VM,或取消實驗時。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:virtualMachineScaleSet:shutdown/1.0 |
參數(索引鍵、值) | |
突然的Shutdown | (選擇性)布爾值,指出虛擬機擴展集實例是否應該正常或突然關閉(破壞性)。 |
執行個體 | 字串,這是套用錯誤之虛擬機擴展集實例識別碼的分隔陣列。 |
1.0 版範例 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 關機 2.0 版
屬性 | 值 |
---|---|
功能名稱 | Shutdown-2.0 |
目標類型 | Microsoft-VirtualMachineScaleSet |
支援的OS類型 | Windows、Linux。 |
描述 | 在錯誤期間關閉或終止虛擬機擴展集實例。 在錯誤持續時間結束時重新啟動 VM,如果實驗已取消,則重新啟動 VM。 支援 動態目標。 |
必要條件 | 無。 |
甕 | urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0 |
filter | (選擇性)從 2.0 版開始提供。 用來篩選選取器中的目標清單。 目前支援篩選區域清單。 篩選條件只會套用至區域內的虛擬機擴展集資源:
|
參數(索引鍵、值) | |
突然的Shutdown | (選擇性)布爾值,指出虛擬機擴展集實例是否應該正常或突然關閉(破壞性)。 |
2.0 版範例 JSON 代碼段
下列代碼段示範如何設定 動態篩選 和關機 2.0 錯誤。
設定動態目標的篩選條件:
{
"type": "List",
"id": "myResources",
"targets": [
{
"id": "<targetResourceId>",
"type": "ChaosTarget"
}
],
"filter": {
"type": "Simple",
"parameters": {
"zones": [
"1"
]
}
}
}
設定關機錯誤:
{
"name": "branchOne",
"actions": [
{
"name": "urn:csci:microsoft:virtualMachineScaleSet:shutdown/2.0",
"type": "continuous",
"selectorId": "myResources",
"duration": "PT10M",
"parameters": [
{
"key": "abruptShutdown",
"value": "false"
}
]
}
]
}
限制
目前僅支援使用統一協調流程模式設定的虛擬機擴展集。 如果您的虛擬機擴展集使用 彈性 協調流程,您可以使用 Azure Resource Manager 虛擬機關機錯誤來關閉選取的實例。
詳細數據:協調流程動作
延遲
屬性 | 值 |
---|---|
錯誤提供者 | N/A |
支援的OS類型 | N/A |
描述 | 新增其他實驗動作之前、之間或之後的時間延遲。 此動作不是錯誤,用來同步處理實驗內的動作。 使用此動作來等候錯誤的影響出現在服務中,或等候實驗以外的活動完成。 例如,您的實驗可能會在插入另一個錯誤之前等待自動排定發生。 |
必要條件 | N/A |
甕 | urn:csci:microsoft:chaosStudio:timedDelay/1.0 |
期間 | ISO 8601 格式的延遲持續時間(例如 PT10M)。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "delay",
"name": "urn:csci:microsoft:chaosStudio:timedDelay/1.0",
"duration": "PT10M"
}
]
}
啟動負載測試 (Azure 負載測試)
屬性 | 值 |
---|---|
功能名稱 | Start-1.0 |
目標類型 | Microsoft-AzureLoadTest |
描述 | 根據提供的負載測試標識碼啟動負載測試(從 Azure 負載測試)。 |
必要條件 | 您必須在 Azure 負載測試服務中建立具有有效負載測試標識碼的負載測試。 |
甕 | urn:csci:microsoft:azureLoadTest:start/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
testID | 在 Azure 負載測試服務中建立的特定負載測試標識碼。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "discrete",
"name": "urn:csci:microsoft:azureLoadTest:start/1.0",
"parameters": [
{
"key": "testID",
"value": "0"
}
],
"selectorid": "myResources"
}
]
}
停止負載測試 (Azure 負載測試)
屬性 | 值 |
---|---|
功能名稱 | Stop-1.0 |
目標類型 | Microsoft-AzureLoadTest |
描述 | 根據提供的負載測試標識碼,停止負載測試(來自 Azure 負載測試)。 |
必要條件 | 您必須在 Azure 負載測試服務中建立具有有效負載測試標識碼的負載測試。 |
甕 | urn:csci:microsoft:azureLoadTest:stop/1.0 |
錯誤類型 | 離散。 |
參數(索引鍵、值) | |
testID | 在 Azure 負載測試服務中建立的特定負載測試標識碼。 |
範例 JSON
{
"name": "branchOne",
"actions": [
{
"type": "discrete",
"name": "urn:csci:microsoft:azureLoadTest:stop/1.0",
"parameters": [
{
"key": "testID",
"value": "0"
}
],
"selectorid": "myResources"
}
]
}