你当前正在访问 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.azureRbacActionsproperties.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"
}