Multilocação e o Azure Resource Manager

O Azure Resource Manager é o principal serviço de gerenciamento de recursos do Azure. Cada recurso no Azure é criado, gerenciado e, eventualmente, excluído por meio do Resource Manager. Geralmente, quando você cria uma solução multilocatário, trabalha com o Resource Manager para provisionar recursos dinamicamente para cada locatário. Nesta página, descrevemos alguns dos recursos do Resource Manager que são relevantes para soluções multilocatário. Também fornecemos links com diretrizes de planejamento para usar o Resource Manager.

Recursos do Resource Manager que dão suporte à multilocação

Infraestrutura como código

O Resource Manager oferece ferramentas que dão suporte à infraestrutura como código, às vezes chamada de IaC. Definir a infraestrutura como código é uma boa prática para todas as soluções na nuvem, mas é particularmente importante quando se trabalha com soluções multilocatário. Uma solução multilocatário geralmente exige que você escale as implantações e provisione novos recursos ao integrar novos locatários. A criação ou configuração manual dos recursos introduz mais risco e mais tempo no processo. Uma abordagem manual resulta em um processo geral de implantação menos confiável.

Ao implantar sua infraestrutura como código por meio de um pipeline de implantação, recomendamos usar Bicep, que é uma linguagem projetada especificamente para implantar e gerenciar recursos do Azure de maneira declarativa. Também é possível usar modelos JSON do ARM (Azure Resource Manager), o Terraform ou outros produtos de terceiros que acessam as APIs subjacentes do Resource Manager.

As pilhas de implantação fornecem a capacidade de gerenciar um conjunto de recursos como uma única unidade, mesmo que os recursos estejam espalhados por assinaturas ou grupos. As pilhas de implantação podem ser úteis se você provisionar recursos específicos multilocatário em locais diferentes e, em seguida, precisar gerenciar seu ciclo de vida como uma unidade lógica.

As especificações do modelo podem ser úteis ao provisionar novos recursos, carimbos de data/hora de implantação ou ambientes por meio de um modelo único e bem parametrizado. Ao usar especificações de modelo, é possível criar um repositório central dos modelos que pode ser usado para a implantação da infraestrutura específica do locatário. Os modelos são armazenados e gerenciados no próprio Azure e também é possível reutilizar as especificações de modelo sempre que for preciso realizar uma implantação com base neles.

Em algumas soluções, é possível optar por escrever códigos personalizados para provisionar ou configurar recursos dinamicamente ou iniciar uma implantação de modelo. Os SDKs do Azure podem ser usados em seu próprio código para gerenciar seu ambiente do Azure. Siga boas práticas de gerenciamento da autenticação do seu aplicativo no Resource Manager e use identidades gerenciadas, a fim de evitar o armazenamento e gerenciamento de credenciais.

Controle de acesso baseado em função

O RBAC (controle de acesso baseado em função) do Azure fornece uma abordagem refinada para gerenciar o acesso aos recursos do Azure. Em uma solução multilocatário, considere se você tem recursos que devem ter políticas específicas de RBAC do Azure aplicadas. Por exemplo, é possível que alguns locatários tenham dados particularmente confidenciais e seja necessário aplicar o RBAC para conceder acesso a certos indivíduos, sem incluir outras pessoas em sua organização. Da mesma forma, os locatários podem pedir para acessar seus recursos do Azure diretamente, por exemplo, durante uma auditoria. Se você concordar com isso, as permissões do RBAC com escopo detalhadamente definido podem permitir a concessão do acesso aos dados de um locatário, sem fornecer acesso aos dados de outros locatários.

Marcações

As marcas permitem adicionar metadados personalizados aos recursos, grupos de recursos e assinaturas do Azure. Considere marcar os recursos específicos do locatário com o identificador do locatário para que seja possível rastrear e alocar os custos do Azure com facilidade e simplificar o gerenciamento de recursos.

Cotas de recursos do Azure

O Resource Manager é um dos pontos no Azure que impõe limites e cotas. Essas cotas devem ser consideradas em todo o processo de design. Todos os recursos do Azure têm limites que precisam ser respeitados e que incluem o número de solicitações que podem ser feitas ao Resource Manager em um determinado período de tempo. Se você exceder esse limite, o Resource Manager limitará as solicitações.

Ao criar uma solução multilocatário que executa implantações automatizadas, é possível atingir esses limites mais rápido do que outros clientes. Da mesma forma, soluções multilocatário que fornecem grandes quantidades de infraestrutura podem disparar os limites.

Cada serviço do Azure é gerenciado por um provedor de recursos, que também pode definir os próprios limites. Por exemplo, o Provedor de Recursos de Computação do Azure gerencia o provisionamento de máquinas virtuais e define limites ao número de solicitações que podem ser feitas em um curto período. Alguns outros limites do provedor de recursos estão documentados em Limites do provedor de recursos.

Se você corre o risco de exceder os limites definidos pelo Resource Manager ou por um provedor de recursos, considere as seguintes mitigações:

  • Fragmente sua carga de trabalho em várias assinaturas do Azure.
  • Use vários grupos de recursos nas assinaturas.
  • Envie solicitações de diferentes entidades do Microsoft Entra.
  • Solicite alocações de cota adicionais. Em geral, as solicitações de alocação de cotas são enviadas abrindo um caso de suporte, embora alguns serviços forneçam APIs para elas, como instâncias reservadas de máquinas virtuais.

As mitigações selecionadas precisam ser apropriadas para o limite específico.

Modelos de isolamento

Em algumas soluções multilocatário, é possível decidir implantar recursos separados ou dedicados para cada locatário. O Resource Manager fornece diversos modelos que podem ser usados para isolar recursos, dependendo de seus requisitos e do motivo pelo qual você escolheu isolar esses recursos. Confira Organização de recursos do Azure em soluções multilocatário para obter as diretrizes de isolamento dos recursos do Azure.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Outro colaborador:

  • Arsen Vladimirskiy | Engenheiro principal de atendimento ao cliente, FastTrack for Azure

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas

Examine as abordagens de implantação e configuração para multilocação.