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.
Administración de metadatos
Amazon MSK admite los modos de administración de metadatos de Apache ZooKeeper o KRaft.
A partir de la versión 3.7.x de Apache Kafka en Amazon MSK, puede crear clústeres que utilicen el modo KRaft en lugar del modo. ZooKeeper KRaft-based los clústeres dependen de los controladores de Kafka para administrar los metadatos.
ZooKeeper modo
Apache ZooKeeper
Si su clúster usa el ZooKeeper modo, puede seguir los pasos que se indican a continuación para obtener la cadena de ZooKeeper conexión de Apache. Sin embargo, le recomendamos que utilice BootstrapServerString para conectarse a su clúster y realizar operaciones de administración, ya que el indicador --zookeeper ha quedado obsoleto en Kafka 2.5 y se ha eliminado de Kafka 3.0.
Obtener la cadena de ZooKeeper conexión de Apache mediante el Consola de administración de AWS
Abra la consola de Amazon MSK en https://console.aws.amazon.com/msk/
. -
La tabla muestra todos los clústeres de la región actual en esta cuenta. Elija el nombre de un clúster para ver su descripción.
-
En la página Resumen del clúster, elija Ver información del cliente. Aquí se muestran los agentes de arranque, así como la cadena de ZooKeeper conexión de Apache.
Obtener la cadena de ZooKeeper conexión de Apache mediante el AWS CLI
Si no conocee el nombre de recurso de Amazon (ARN) de su clúster, puede encontrarlo enumerando todos los clústeres de su cuenta. Para obtener más información, consulte Enumeración de clústeres de Amazon MSK.
-
Para obtener la cadena de ZooKeeper conexión de Apache, junto con otra información sobre su clúster, ejecute el siguiente comando y
ClusterArnreemplácelo por el ARN de su clúster.aws kafka describe-cluster --cluster-arnClusterArnEl resultado de este comando
describe-clustertendrá un aspecto similar al siguiente.{ "ClusterInfo": { "BrokerNodeGroupInfo": { "BrokerAZDistribution": "DEFAULT", "ClientSubnets": [ "subnet-0123456789abcdef0", "subnet-2468013579abcdef1", "subnet-1357902468abcdef2" ], "InstanceType": "kafka.m5.large", "StorageInfo": { "EbsStorageInfo": { "VolumeSize": 1000 } } }, "ClusterArn": "arn:aws:kafka:us-east-1:111122223333:cluster/testcluster/12345678-abcd-4567-2345-abcdef123456-2", "ClusterName": "testcluster", "CreationTime": "2018-12-02T17:38:36.75Z", "CurrentBrokerSoftwareInfo": { "KafkaVersion": "2.2.1" }, "CurrentVersion": "K13V1IB3VIYZZH", "EncryptionInfo": { "EncryptionAtRest": { "DataVolumeKMSKeyId": "arn:aws:kms:us-east-1:555555555555:key/12345678-abcd-2345-ef01-abcdef123456" } }, "EnhancedMonitoring": "DEFAULT", "NumberOfBrokerNodes": 3, "State": "ACTIVE", "ZookeeperConnectString": "10.0.1.101:2018,10.0.2.101:2018,10.0.3.101:2018" } }El ejemplo de JSON anterior muestra la clave
ZookeeperConnectStringen la salida del comandodescribe-cluster. Copie el valor correspondiente a esta clave y guárdelo para cuando necesite crear un tema en el clúster.importante
Su clúster de Amazon MSK debe estar en
ACTIVEese estado para poder obtener la cadena de ZooKeeper conexión de Apache. Cuando un clúster todavía está en el estadoCREATING, la salida del comandodescribe-clusterno incluyeZookeeperConnectString. Si este es el caso, espere unos minutos y vuelva a ejecutardescribe-clusterdespués de que el clúster alcance el estadoACTIVE.
Obtener la cadena de ZooKeeper conexión de Apache mediante la API
Para obtener la cadena de ZooKeeper conexión de Apache mediante la API, consulte DescribeCluster.
Modo KRaft
Amazon MSK introdujo la compatibilidad con KRaft (Apache Kafka Raft) en la versión 3.7.x de Kafka. La comunidad Apache Kafka desarrolló KrAFT para reemplazar a Apache en la administración de metadatos en los ZooKeeper clústeres de Apache Kafka. En el modo kRaft, los metadatos del clúster se propagan dentro de un grupo de controladores de Kafka, que forman parte del clúster de Kafka, en lugar de entre los nodos. ZooKeeper Los controladores KRaft se incluyen sin costo adicional para usted y no requieren ninguna configuración o administración adicionales por su parte. Consulte KIP-500
Estos son algunos puntos a tener en cuenta sobre el modo KRaft en MSK:
-
Puede migrar los ZooKeeper-based clústeres existentes al modo kRafT mediante la
UpdateClusterKafkaVersionAPI. Para obtener más información, consulte Migre del modo kRafT ZooKeeper al modo KrAFT. En la consola de MSK, puede crear un Kraft-based clúster seleccionando la versión 3.7.x de Kafka y marcando la casilla de verificación KRraft en la ventana de creación del clúster.
Para crear un clúster en modo KRaft mediante la API
CreateClusterde MSK u operacionesCreateClusterV2, debe usar3.7.x.kraftcomo versión.3.7.xUtilícela como versión para crear un clúster en modo. ZooKeeperEl número de particiones por intermediario es el mismo en los clústeres basados en KRraft y en los clústeres ZooKeeper basados. Sin embargo, KRaft le permite alojar más particiones por clúster al aprovisionar más agentes en un clúster.
No es necesario realizar cambios en la API para utilizar el modo KRaft en Amazon MSK. Sin embargo, si sus clientes siguen utilizando la cadena de conexión
--zookeeperen la actualidad, debe actualizar a sus clientes para que usen la cadena de conexión--bootstrap-serverpara conectarse a su clúster. El indicador--zookeeperestá obsoleto en la versión 2.5 de Apache Kafka y se elimina a partir de la versión 3.0 de Kafka. Por lo tanto, le recomendamos que utilice las versiones recientes del cliente Apache Kafka y la cadena de conexión--bootstrap-serverpara todas las conexiones a su clúster.ZooKeeper el modo sigue estando disponible para todas las versiones publicadas en las que Apache Kafka también admite zookeeper. Consulte Versiones compatibles de Apache Kafka para obtener más información sobre la finalización de la compatibilidad con las versiones y futuras actualizaciones de Apache Kafka.
Debe comprobar que todas las herramientas que utilice sean capaces de utilizar las API de administración de Kafka sin necesidad de conectarse. ZooKeeper Consulte Utilice LinkedIn el control de crucero para Apache Kafka con Amazon MSK para conocer los pasos actualizados para conectar el clúster a Cruise Control. El Cruise Control también tiene instrucciones para ejecutar el Cruise Control sin ZooKeeper
él. -
No necesita acceder directamente a los controladores KRaft de su clúster para realizar alguna acción administrativa. Sin embargo, si utiliza la supervisión abierta para recopilar métricas, también necesitará los puntos de conexión de DNS de sus controladores para recopilar algunas métricas del clúster que no estén relacionadas con los controladores. Puedes obtener estos puntos finales de DNS desde la consola de MSK o mediante la operación de la ListNodes API. Consulte los pasos actualizados Supervisión de un clúster de MSK aprovisionado con Prometheus para configurar la supervisión abierta de los clústeres. KRaft-based
No es necesario supervisar ninguna CloudWatch métrica adicional para los clústeres en modo kRaft en comparación con los clústeres en ZooKeeper modo. MSK administra los controladores KRaft que se utilizan en sus clústeres.
-
Puede seguir administrando las ACL utilizando clústeres en modo KRaft mediante la cadena de conexión
--bootstrap-server. No debe utilizar la cadena de conexión--zookeeperpara administrar las ACL. Consulte ACL de Apache Kafka. En el modo kRaft, los metadatos del clúster se almacenan en los controladores de Kafka de Kafka y no en nodos externos. ZooKeeper Por lo tanto, no es necesario controlar el acceso a los nodos de la controladora por separado, como ocurre con los nodos. ZooKeeper