Tipos de recursos e atribuições de função suportados para o Chaos Studio
A tabela a seguir lista os tipos de recursos suportados para falhas, os tipos de destino e as funções sugeridas a serem usadas quando você concede permissão de experimento a um recurso desse tipo.
Mais informações sobre atribuições de função podem ser encontradas na página de funções internas do Azure.
Tipo de recurso | Nome/tipo de destino | Atribuição de função sugerida |
---|---|---|
Microsoft.Cache/Redis (serviço direto) | Microsoft-AzureCacheForRedis | Colaborador do Cache Redis |
Microsoft.ClassicCompute/domainNames (direto para o serviço) | Microsoft-DomainNames | Contribuidor de máquina virtual clássica |
Microsoft.Compute/virtualMachines (baseado em agente) | Agente da Microsoft | Leitor |
Microsoft.Compute/virtualMachineScaleSets (baseado em agente) | Agente da Microsoft | Leitor |
Microsoft.Compute/virtualMachines (direto de serviço) | Microsoft-VirtualMachine | Contribuidor de Máquina Virtual |
Microsoft.Compute/virtualMachineScaleSets (serviço direto) | Microsoft-VirtualMachineScaleSet | Contribuidor de Máquina Virtual |
Microsoft.ContainerService/managedClusters (direto ao serviço) | Microsoft-AzureKubernetesServiceChaosMesh (recomendado) | Função de Administrador RBAC do Serviço Kubernetes do Azure e Função de Usuário do Cluster de Serviço do Kubernetes do Azure |
Microsoft.ContainerService/managedClusters (direto ao serviço) | Microsoft-AzureKubernetesServiceChaosMesh (falha versão 2.1 apenas com contas locais do Kubernetes) | Função de Administrador do Cluster de Serviço do Kubernetes do Azure |
Microsoft.DocumentDb/databaseAccounts (Cosmos DB, service-direct) | Microsoft-Cosmos DB | Operador do Cosmos DB |
Microsoft.Insights/autoscalesettings (direto-serviço) | Microsoft-AutoScaleSettings | Colaborador do Plano Web |
Microsoft.KeyVault/vaults (serviço direto) | Microsoft-KeyVault | Azure Key Vault Contributor |
Microsoft.Network/networkSecurityGroups (direto ao serviço) | Microsoft-NetworkSecurityGroup | Contribuidor de Rede |
Microsoft.Web/sites (serviço direto) | Microsoft-AppService | Colaborador do site |
Microsoft.ServiceBus/namespaces (direto do serviço) | Barramento Microsoft-ServiceBus | Proprietário de Dados do Barramento de Serviço do Azure |
Microsoft.EventHub/namespaces (direto de serviço) | Microsoft-EventHub | Proprietário de Dados dos Hubs de Eventos do Azure |
Microsoft.LoadTestService/loadtests (direto do serviço) | Microsoft-AzureLoadTest | Contribuidor de teste de carga |
Operações de função personalizadas
Se preferir não usar as funções internas listadas, você pode criar funções personalizadas e atribuir as operações exatas necessárias para cada falha. Pode fazê-lo de duas formas.
Ao criar um experimento no portal do Azure, você pode selecionar "Habilitar criação e atribuição de função personalizada" na guia Permissões para permitir que o Chaos Studio implante uma função personalizada com as operações necessárias.
Como alternativa, se você não estiver usando o portal do Azure ou preferir gerenciar operações individualmente, poderá encontrar as operações necessárias para cada falha e atribuí-las manualmente a uma função personalizada. Para ver quais funções são necessárias para uma falha do Chaos Studio, execute o seguinte comando REST da CLI do Azure:
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
Como exemplo, consulte properties.azureRbacActions
e properties.azureRbacDataActions
para a falha de failover do Cosmos DB.
> 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"
}