Amazon Managed Streaming for Apache Kafka (MSK) y Auto Scaling de aplicaciones - Aplicación de escalado automático

Amazon Managed Streaming for Apache Kafka (MSK) y Auto Scaling de aplicaciones

Puede escalar horizontalmente el almacenamiento de clústeres de Amazon MSK mediante políticas de escalado de seguimiento de destino. La reducción horizontal por la política de seguimiento de destino está desactivada.

Utilice la siguiente información para ayudarle a integrar Amazon MSK con Auto Scaling de aplicaciones.

Se ha creado un rol vinculado al servicio para Amazon MSK

Los siguientes ejemplos de rol vinculado al servicio se crea automáticamente en su Cuenta de AWS al registrar recursos de Amazon MSK como destinos escalables con Auto Scaling de aplicaciones. Este rol permite que Auto Scaling de aplicaciones realice operaciones compatibles dentro de su cuenta. Para obtener más información, consulte Roles vinculados a servicios para Application Auto Scaling.

  • AWSServiceRoleForApplicationAutoScaling_KafkaCluster

Entidad de seguridad de servicio utilizada por el rol vinculado al servicio

El rol vinculado al servicio de la sección anterior solo puede ser asumido por la entidad de seguridad de servicio autorizada por las relaciones de confianza definidas para el rol. El rol vinculado al servicio utilizado por Auto Scaling de aplicaciones concede acceso a la siguiente entidad de seguridad de servicio:

  • kafka.application-autoscaling.amazonaws.com

Registro del almacenamiento en clúster de Amazon MSK como destinos escalables con Auto Scaling de aplicaciones

Auto Scaling de aplicaciones requiere un destino escalable antes de que pueda crear una política de escalado para el tamaño del volumen de almacenamiento por agente de un clúster de Amazon MSK. Un destino escalable es un recurso que Auto Scaling de aplicaciones puede escalar. Los destinos escalables se identifican de forma única mediante la combinación de ID de recurso, dimensión escalable y espacio de nombres.

Si configura el escalado automático mediante la consola de Amazon MSK, Amazon MSK registra automáticamente un destino escalable para usted.

Si desea configurar el escalado automático usando la CLI de AWS o uno de los SDK de AWS, puede utilizar las siguientes opciones:

  • AWS CLI:

    Llame a register-scalable-target para un clúster de Amazon MSK. En el ejemplo siguiente se registra el tamaño del volumen de almacenamiento por agente de un clúster de Amazon MSK, con una capacidad mínima de 100 GiB y una capacidad 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

    Si se ejecuta correctamente, este comando devolverá el ARN del destino escalable.

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

    Llame a la operación RegisterScalableTarget y proporcione ResourceId, ScalableDimension, ServiceNamespace, MinCapacity y MaxCapacity como parámetros.

nota

Cuando un clúster de Amazon MSK es el destino escalable, reducir horizontalmente se desactiva y no se puede habilitar.

Si acaba de comenzar a utilizar Application Auto Scaling, puede consultar información adicional útil sobre el escalado de recursos de Amazon MSK en la siguiente documentación:

Escalado automático en la Guía para desarrolladores de Amazon Managed Streaming para Apache Kafka