View a markdown version of this page

Permisos de sincronización compensados por grupos de consumidores - Transmisión administrada de Amazon para Apache Kafka

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Permisos de sincronización compensados por grupos de consumidores

Cuando synchroniseConsumerGroupOffsets está habilitada (opción predeterminada), el replicador traduce las compensaciones de los grupos de consumidores del clúster de origen y las escribe en el clúster de destino. Con esta función habilitada, los consumidores pueden reanudar desde la posición correcta tras la conmutación por error.

Hay dos modos de sincronización disponibles: LEGACY (el predeterminado) yENHANCED. En el modo LEGACY, el replicador sincroniza las compensaciones cuando los productores escriben en el clúster de origen. En el modo ENHANCED, el replicador sincroniza las compensaciones independientemente de dónde escriban los productores. El modo ENHANCED requiere una replicación bidireccional. Ambos modos utilizan los mismos permisos de IAM.

nota

Los temas internos de los que depende (mskr-offset-syncs.*y*.checkpoints.internal) el modo ENHANCED ya están cubiertos en el tema de los permisos de replicación en ambos clústeres.

Las siguientes instrucciones añaden permisos específicos para la sincronización de compensaciones de grupos de consumidores. Como la sincronización compensada depende de la replicación de los datos, algunos permisos coinciden con la política de replicación del tema.

Política de IAM de funciones de ejecución de servicios (clústeres de MSK)

Clúster de origen

La función de ejecución del servicio debe tener permiso para describir los grupos de consumidores y los temas que consumen en la fuente.

[ { "Sid": "SourceGroupPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeGroup" ], "Resource": [ "arn:aws:kafka:${region}:${account}:group/${SourceClusterName}/${SourceClusterUUID}/${consumerGroupPattern}" ] }, { "Sid": "SourceUserTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/${topicsConsumedByGroup}" ] } ]
Clúster de destino

La función de ejecución del servicio debe tener permiso para describir los temas replicados y modificar los grupos de consumidores del destino para poder asignar las compensaciones traducidas.

[ { "Sid": "TargetCheckpointTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/${replicatedTopicPattern}" ] }, { "Sid": "TargetCheckpointGroupPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:AlterGroup", "kafka-cluster:DescribeGroup" ], "Resource": [ "arn:aws:kafka:${region}:${account}:group/${TargetClusterName}/${TargetClusterUUID}/${consumerGroupPattern}" ] } ]

Sustituya los marcadores de posición de las declaraciones anteriores de la siguiente manera:

  • ${consumerGroupPattern}Sustitúyalos por el nombre del grupo de consumidores o el patrón configurado para la replicación (por ejemplo,my-app-group-*).

  • ${topicsConsumedByGroup}Sustitúyalo por el patrón de temas que los grupos de consumidores leen en la fuente.

  • ${replicatedTopicPattern}Sustitúyalo por el patrón temático replicado correspondiente en el destino (*.${topicPattern}para nombres con prefijo o ${topicPattern} nombres IDÉNTICOS).

ACL de Kafka (clústeres que no son de MSK)

Non-MSK como fuente

Cuando la fuente es un clúster que no es de MSK, la sincronización de compensaciones de grupos de consumidores requiere las siguientes ACL.

Recurso Tipo Tipo de patrón Operación Finalidad

${consumerGroupPattern}

Group

LITERAL O CON PREFIJO

Describir

Lee las compensaciones confirmadas () OffsetFetch

${topicsConsumedByGroup}

Topic

LITERAL O CON PREFIJO

Describir

Metadatos temáticos para traducción offset

Non-MSK como objetivo

Cuando el destino es un clúster que no es de MSK, la sincronización de compensaciones de grupos de consumidores requiere las siguientes ACL.

Recurso Tipo Tipo de patrón Operación Finalidad

${replicatedTopicPattern}

Topic

LITERAL O CON PREFIJO

Describir

Desplazamiento al final del registro () ListOffsets

${consumerGroupPattern}

Group

LITERAL O CON PREFIJO

Describir

FindCoordinator, DescribeGroup

${consumerGroupPattern}

Group

LITERAL O CON PREFIJO

Lectura

Confirma las compensaciones traducidas () OffsetCommit