你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Chaos Studio 支持的资源类型和角色分配
下表列出了针对错误支持的资源类型、目标类型以及在向该类型的资源授予试验权限时建议使用的角色。
有关角色分配的详细信息,请参阅 Azure 内置角色页。
资源类型 | 目标名称/类型 | 建议的角色分配 |
---|---|---|
Microsoft.Cache/Redis(服务直接) | Microsoft-AzureCacheForRedis | Redis 缓存参与者 |
Microsoft.ClassicCompute/domainNames (service-direct) | Microsoft-DomainNames | 经典虚拟机参与者 |
Microsoft.Compute/virtualMachines(基于代理) | Microsoft-Agent | 读者 |
Microsoft.Compute/virtualMachineScaleSets(基于代理) | Microsoft-Agent | 读者 |
Microsoft.Compute/virtualMachines(服务直接) | Microsoft-VirtualMachine | 虚拟机参与者 |
Microsoft.Compute/virtualMachineScaleSets(服务直接) | Microsoft-VirtualMachineScaleSet | 虚拟机参与者 |
Microsoft.ContainerService/managedClusters(服务直接) | Microsoft-AzureKubernetesServiceChaosMesh(推荐) | Azure Kubernetes 服务 RBAC 管理员角色和 Azure Kubernetes 服务群集用户角色 |
Microsoft.ContainerService/managedClusters(服务直接) | Microsoft-AzureKubernetesServiceChaosMesh(仅限 Kubernetes 本地帐户的故障版本 2.1) | Azure Kubernetes 服务群集管理员角色 |
Microsoft.DocumentDb/databaseAccounts(Cosmos DB、服务直接) | Microsoft-Cosmos DB | Cosmos DB 操作员 |
Microsoft.Insights/autoscalesettings(服务直接) | Microsoft-AutoScaleSettings | Web 计划参与者 |
Microsoft.KeyVault/vaults (service-direct) | Microsoft-KeyVault | Azure Key Vault 参与者 |
Microsoft.Network/networkSecurityGroups(服务直接) | Microsoft-NetworkSecurityGroup | 网络参与者 |
Microsoft.Web/sites(服务直接) | Microsoft-AppService | 网站参与者 |
Microsoft.ServiceBus/namespaces(服务直接) | Microsoft-ServiceBus | Azure 服务总线数据所有者 |
Microsoft.EventHub/namespaces(服务直接) | Microsoft-EventHub | Azure 事件中心数据所有者 |
Microsoft.LoadTestService/loadtests (service-direct) | Microsoft-AzureLoadTest | 负载测试参与者 |
自定义角色操作
如果不想使用列出的内置角色,可以创建自定义角色并分配每个错误所需的确切操作。 可通过两种方式来执行此操作。
在 Azure 门户中创建试验时,可以在“权限”选项卡中选择“启用自定义角色创建和分配” ,以允许 Chaos Studio 部署具有必要操作的自定义角色。
或者,如果不使用 Azure 门户或希望单独管理操作,则可以找到每个故障所需的操作,并手动将其分配给自定义角色。 若要查看 Chaos Studio 故障所需的角色,请运行以下 Azure CLI REST 命令:
az rest --method get --uri https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.Chaos/locations/eastus/targetTypes/$TARGET_TYPE/capabilityTypes/$CAPABILITY_NAME?api-version=2024-01-01
例如,请参阅 Cosmos DB 故障转移错误的 properties.azureRbacActions
和 properties.azureRbacDataActions
。
> az rest --method get --url "https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.Chaos/locations/eastus/targetTypes/Microsoft-CosmosDB/capabilityTypes/Failover-1.0?api-version=2024-01-01"
{
"id": "/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.Chaos/locations/eastus/targetTypes/CosmosDB/capabilityTypes/Failover-1.0",
"location": "eastus",
"name": "Failover-1.0",
"properties": {
"azureRbacActions": [
"Microsoft.DocumentDB/databaseAccounts/read",
"Microsoft.DocumentDB/databaseAccounts/failoverPriorityChange/action"
],
"azureRbacDataActions": null,
"description": "",
"displayName": "",
"kind": "Fault",
"parametersSchema": "https://schema-tc.eastus.chaos-prod.azure.com/targetTypes/Microsoft-CosmosDB/capabilityTypes/Failover-1.0/parametersSchema.json",
"publisher": "Microsoft",
"runtimeProperties": {
"kind": "Continuous"
},
"targetType": "CosmosDB",
"urn": "urn:csci:microsoft:cosmosDB:failover/1.0"
},
"systemData": {
"createdAt": "2024-10-10T17:28:41.7377834+00:00",
"createdByType": "Application",
"lastModifiedAt": "2024-10-10T17:28:41.7377834+00:00"
},
"type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes"
}