Bloco de execução de escalabilidade de recursos do Amazon EKS - Amazon Application Recovery Controller (ARC)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Bloco de execução de escalabilidade de recursos do Amazon EKS

O bloco de execução de escalabilidade de recursos do EKS permite que você escale os recursos do EKS como parte do seu processo de recuperação multirregional. Ao configurar o bloco de execução, você define uma porcentagem da capacidade a ser escalada, em relação à capacidade na região que está sendo desativada.

Configuração das permissões de entrada de acesso ao EKS

Para que possa adicionar um bloco de execução para o escalabilidade de recursos do EKS, você deve fornecer à mudança de região as permissões necessárias para realizar ações com os recursos do Kubernetes em seus clusters do EKS. Para fornecer acesso à mudança de região, você deve criar uma entrada de acesso ao EKS para o perfil do IAM que a mudança de região usará durante a execução do plano, utilizando a seguinte política de acesso à mudança de região: arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Política de acesso ao EKS da mudança de região

As informações a seguir fornecem detalhes sobre a política de acesso ao EKS.

Nome: AmazonARCRegionSwitchScalingPolicy

ARN da política: arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Grupos de APIs Kubernetes Recursos Kubernetes Verbos (permissões) Kubernetes

*

*/scale

get, update

*

*/status

obter

ajuste de escala automático

horizontalpodautoscalers

get, patch

Criação de uma entrada de acesso ao EKS para a mudança de região

O exemplo a seguir descreve como criar a entrada de acesso e as associações de políticas de acesso necessárias para que a mudança de região possa realizar ações específicas para seus recursos do Kubernetes. Neste exemplo, as permissões se aplicam ao namespace my-namespace1 no cluster EKS my-cluster para a função do IAM. arn:aws:iam::555555555555:role/my-role

Ao configurar essas permissões, certifique-se de seguir estas etapas para os dois clusters do EKS em seu bloco de execução.

Pré-requisito

Antes de começar, altere o modo de autenticação do cluster para API_AND_CONFIG_MAP ou API. A alteração do modo de autorização adiciona a API para entradas de acesso. Para obter mais informações, consulte Alteração do modo de autenticação para usar entradas de acesso no Guia do usuário do Amazon EKS.

Criação da entrada de acesso

A primeira etapa é criar a entrada de acesso usando um AWS CLI comando semelhante ao seguinte:

aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::555555555555:user/my-user --type STANDARD

Para obter mais informações, consulte Criar de entradas de acesso no Guia do usuário do Amazon EKS.

Criação da associação de entrada de acesso

Em seguida, crie a associação à política de acesso ao switch de região usando um AWS CLI comando semelhante ao seguinte:

aws eks associate-access-policy --cluster-name my-cluster --principal-arn arn:aws:iam::555555555555:role/my-role \ --access-scope type=namespace,namespaces=my-namespace1 --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Para obter mais informações, consulte Associação de políticas de acesso às entradas de acesso no Guia do usuário do Amazon EKS.

Certifique-se de repetir essas etapas com o segundo cluster do EKS em seu bloco de execução, na outra região, para garantir que os dois clusters possam ser acessados pela mudança de região.

Configuração

Importante

Antes de adicionar um bloco de execução de escalabilidade de recursos do EKS, primeiro verifique se você tem as permissões corretas. Para obter mais informações, consulte Configuração das permissões de entrada de acesso ao EKS. Certifique-se também de ter a política do IAM correta. Para obter mais informações, consulte Exemplo de política de bloco de execução de escalabilidade de recursos do Amazon EKS.

Observe que o switch de região atualmente oferece suporte aos seguintes ReplicaSet recursos: apps/v1, Deployment, and apps/v 1.

Para a configuração do bloco de execução, insira os valores a seguir.

  1. Nome da etapa: insira um nome.

  2. Descrição da etapa (opcional): insira uma descrição para a etapa.

  3. Nome da aplicação: insira o nome da aplicação do EKS, por exemplo, myApplication.

  4. Tipo de recurso do Kubernetes: insira o tipo de recurso da aplicação, por exemplo, Deployment.

  5. Recurso para região: para cada região, insira as informações do cluster do EKS, incluindo o ARN do cluster do EKS, o namespace do recurso e assim por diante.

  6. Porcentagem correspondente à capacidade da região ativada: insira a porcentagem desejada de pods em execução na região de origem para corresponder à região ativada.

  7. Abordagem de monitoramento de capacidade: a única opção para monitoramento de capacidade já está selecionada, Capacidade máxima de execução amostrada em 24 horas.

    Essa abordagem de monitoramento de capacidade usa o valor ReplicaCount das solicitações de serviço do EKS. Para obter mais informações, consulte Saiba mais sobre a mudança de zona do ARC no Amazon EKS no Guia do usuário do Amazon Elastic Kubernetes.

  8. Tempo limite: insira um valor de tempo limite.

Em seguida, escolha Salvar etapa.

Como funciona

Durante a execução do plano, a mudança de região recupera o número máximo amostrado de réplicas nas últimas 24 horas para o recurso de destino na região que você está ativando. Em seguida, ela calcula a contagem de réplicas desejada para o recurso de destino usando a seguinte fórmula: ceil(percentToMatch * Source replica count)

Se a contagem de réplicas prontas para o destino for menor que o valor desejado, a mudança de região escalará o valor da réplica do recurso de destino até a capacidade desejada. Ela espera até que as réplicas estejam prontas, aproveitando o escalador automático do nó para aumentar a capacidade do nó, se necessário.

Se o hpaName campo opcional não estiver vazio, o interruptor de região corrige o HorizontalPodAutoscaler para evitar qualquer redução automática durante ou após a execução usando o seguinte patch: {"spec":{"behavior":{"scaleDown":{"selectPolicy":"Disabled"}}}}

Certifique-se de configurar qualquer ferramenta de correção de desvio, como GitOps ferramentas, para ignorar o campo de réplica dos recursos do patch, bem como do campo. HorizontalPodAutoscaler

O que é avaliado como parte da avaliação do plano

Quando a mudança de região avalia seu plano, ela executa várias verificações no bloco de execução e nas permissões configurados do EKS. A mudança de região verifica se o perfil do IAM do plano tem as permissões corretas para descrever os clusters do EKS e listar as políticas de entrada de acesso associadas. A mudança de região também valida se o perfil do IAM está associado à política de entrada de acesso correta, para que a mudança de região tenha as permissões necessárias para atuar nos recursos do Kubernetes. Por fim, a mudança de região confirma que os clusters do EKS e os recursos do Kubernetes configurados existem.

Além disso, a mudança de região verifica se coletou e armazenou com sucesso os dados de monitoramento necessários (contagem de réplicas do Kubernetes) e captura o número de pods em execução necessários para executar o plano de mudança de região.