

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
<a name="metadata-management"></a>

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.

**Topics**
+ [ZooKeeper modo](#msk-get-connection-string)
+ [Modo KRaft](#kraft-intro)
+ [Migre del modo kRafT ZooKeeper al modo KrAFT](zk-to-kraft-migration.md)

## ZooKeeper modo
<a name="msk-get-connection-string"></a>

[Apache ZooKeeper ](https://zookeeper.apache.org/) es «un servicio centralizado para mantener la información de configuración, asignar nombres, proporcionar sincronización distribuida y prestar servicios grupales. Las aplicaciones distribuidas utilizan todos estos tipos de servicios de una forma u otra”, como Apache Kafka.

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
<a name="get-connection-string-console"></a>

1. Abra la consola de Amazon MSK en [https://console.aws.amazon.com/msk/](https://console.aws.amazon.com/msk/).

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

1. 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
<a name="get-connection-string-cli"></a>

1. 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](msk-list-clusters.md).

1. Para obtener la cadena de ZooKeeper conexión de Apache, junto con otra información sobre su clúster, ejecute el siguiente comando y {{ClusterArn}} reemplácelo por el ARN de su clúster. 

   ```
   aws kafka describe-cluster --cluster-arn {{ClusterArn}}
   ```

   El resultado de este comando `describe-cluster` tendrá 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 `ZookeeperConnectString` en la salida del comando `describe-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 `ACTIVE` ese estado para poder obtener la cadena de ZooKeeper conexión de Apache. Cuando un clúster todavía está en el estado `CREATING`, la salida del comando `describe-cluster` no incluye `ZookeeperConnectString`. Si este es el caso, espere unos minutos y vuelva a ejecutar `describe-cluster` después de que el clúster alcance el estado `ACTIVE`.

### Obtener la cadena de ZooKeeper conexión de Apache mediante la API
<a name="get-connection-string-api"></a>

Para obtener la cadena de ZooKeeper conexión de Apache mediante la API, consulte [ DescribeCluster](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn.html#DescribeCluster).

## Modo KRaft
<a name="kraft-intro"></a>

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 ](#msk-get-connection-string) 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 ](https://cwiki.apache.org/confluence/display/KAFKA/KIP-500%3A+Replace+ZooKeeper+with+a+Self-Managed+Metadata+Quorum) para obtener más información sobre KRraft.

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 `UpdateClusterKafkaVersion` API. Para obtener más información, consulte [Migre del modo kRafT ZooKeeper al modo KrAFT](zk-to-kraft-migration.md).
+ 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 [`CreateCluster`](https://docs.aws.amazon.com/msk/1.0/apireference/clusters.html#CreateCluster) de MSK u operaciones [`CreateClusterV2`](https://docs.aws.amazon.com/MSK/2.0/APIReference/v2-clusters.html#CreateClusterV2), debe usar `3.7.x.kraft` como versión. `3.7.x`Utilícela como versión para crear un clúster en modo. ZooKeeper 
+ El 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](https://docs.aws.amazon.com/msk/latest/developerguide/limits.html).
+ 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 `--zookeeper` en la actualidad, debe actualizar a sus clientes para que usen la cadena de conexión `--bootstrap-server` para conectarse a su clúster. El indicador `--zookeeper` está 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-server` para 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](supported-kafka-versions.md) 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](cruise-control.md) 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 ](https://github.com/linkedin/cruise-control/wiki/Run-without-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 ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-nodes.html#ListNodes) API. Consulte los pasos actualizados [Supervisión de un clúster de MSK aprovisionado con Prometheus](open-monitoring.md) para configurar la supervisión abierta de los clústeres. KRaft-based 
+ No es necesario supervisar ninguna [ CloudWatch métrica adicional para los ](https://docs.aws.amazon.com/msk/latest/developerguide/metrics-details.html) 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 `--zookeeper` para administrar las ACL. Consulte [ACL de Apache Kafka](msk-acls.md).
+ 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 ](https://docs.aws.amazon.com/msk/latest/developerguide/zookeeper-security.html)