Amazon Managed Streaming for Apache Kafka (MSK) e Application Auto Scaling - Application Auto Scaling

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á.

Amazon Managed Streaming for Apache Kafka (MSK) e Application Auto Scaling

Você pode aumentar a escala do armazenamento de cluster do Amazon MSK na horizontal usando políticas de escalabilidade com monitoramento do objetivo. A redução da escala na horizontal pela política de monitoramento do objetivo está desabilitada.

Use as informações a seguir para ajudar a integrar o Amazon MSK com o Application Auto Scaling.

Criação de uma função vinculada ao serviço para Amazon MSK

A seguinte função vinculada ao serviço é criada automaticamente em você Conta da AWS ao registrar recursos do Amazon MSK como alvos escaláveis com o Application Auto Scaling. Essa função permite que o Application Auto Scaling realize as operações suportadas em sua conta. Para ter mais informações, consulte Funções vinculadas ao serviço necessárias para o Application Auto Scaling.

  • AWSServiceRoleForApplicationAutoScaling_KafkaCluster

Principal de serviço primário usado pela função vinculada ao serviço

A função vinculada ao serviço na seção anterior pode ser assumida apenas pelo principal de serviço primário autorizado pelas relações de confiança definidas para a função. A função vinculada ao serviço usada pelo Application Auto Scaling concede acesso aos seguintes principais de serviço primários:

  • kafka.application-autoscaling.amazonaws.com

Registrar o armazenamento de cluster do Amazon MSK como destinos escaláveis com o Application Auto Scaling

O Application Auto Scaling requer um destino escalável antes de criar uma política de escalabilidade para o tamanho do volume de armazenamento por agente de um cluster do Amazon MSK. Um destino escalável é um recurso que pode ser escalado com o Application Auto Scaling. Os destinos escaláveis são identificados exclusivamente pela combinação de ID de recurso, dimensão escalável e namespace.

Se você configurar a escalabilidade automática usando o console do Amazon MSK, o Amazon MSK registrará automaticamente um destino escalável para você.

Se quiser configurar o escalonamento automático usando a AWS CLI ou um dos SDKs, você pode usar AWS as seguintes opções:

  • AWS CLI:

    Chame o comando register-scalable-target para um cluster do Amazon MSK. O exemplo a seguir registra o tamanho do volume de armazenamento por agente de um cluster do Amazon MSK, com capacidade mínima de 100 GiB e capacidade máxima de 800 GiB.

    aws application-autoscaling register-scalable-target \ --service-namespace kafka \ --scalable-dimension kafka:broker-storage:VolumeSize \ --resource-id arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5 \ --min-capacity 100 \ --max-capacity 800

    Se obtiver êxito, esse comando retornará o ARN do destino escalável.

    { "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123" }
  • AWS SDK:

    Chame a operação RegisterScalableTarget e forneça ResourceId, ScalableDimension, ServiceNamespace, MinCapacity e MaxCapacity como parâmetros.

nota

Quando um cluster do Amazon MSK é o destino escalável, a redução é desabilitada e não pode ser ativada.

Se você está apenas começando a usar o Application Auto Scaling, você pode encontrar mais informações úteis sobre a escalabilidade de seus recursos do Amazon MSK na seguinte documentação:

Escalabilidade automática no Guia do desenvolvedor do Amazon Managed Streaming for Apache Kafka