

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.

# Introducción a la conectividad privada con varias VPC
<a name="mvpc-getting-started"></a>

**Topics**
+ [Paso 1: en el clúster de MSK de la cuenta A, active la conectividad con varias VPC para el esquema de autenticación de IAM en el clúster](mvpc-cluster-owner-action-turn-on.md)
+ [Paso 2: asociación de una política de clúster al clúster de MSK](mvpc-cluster-owner-action-policy.md)
+ [Paso 3: acciones del usuario entre cuentas para configurar las conexiones de VPC administradas por el cliente](mvpc-cross-account-user-action.md)

En este tutorial, se utiliza un caso de uso común como ejemplo de cómo se puede utilizar la conectividad de varias VPC para conectar de forma privada un cliente de Apache Kafka a un clúster de MSK desde dentro, AWS pero desde fuera de la VPC del clúster. Este proceso requiere que el usuario entre cuentas cree una conexión y una configuración de VPC administrada por MSK para cada cliente, incluidos los permisos de cliente necesarios. El proceso también requiere que el propietario del clúster de MSK habilite la PrivateLink conectividad en el clúster de MSK y seleccione esquemas de autenticación para controlar el acceso al clúster.

En diferentes partes de este tutorial, seleccionamos las opciones que se aplican a este ejemplo. Esto no significa que sean las únicas opciones que funcionan para configurar un clúster de MSK o instancias de cliente.

La configuración de red para este caso de uso es la siguiente:
+ Un usuario entre cuentas (cliente de Kafka) y un clúster de MSK están en la misma red o región de AWS , pero en cuentas diferentes:
  + Clúster de MSK en la cuenta A
  + Cliente de Kafka en la cuenta B
+ El usuario entre cuentas se conectará de forma privada al clúster de MSK mediante el esquema de autenticación de IAM.

En este tutorial se presupone que hay un clúster de MSK aprovisionado creado con la versión 2.7.1 o superior de Apache Kafka. El clúster de MSK debe estar en estado ACTIVO antes de comenzar el proceso de configuración. Para evitar posibles pérdidas de datos o tiempos de inactividad, los clientes que usen una conexión privada con varias VPC para conectarse al clúster deben usar versiones de Apache Kafka que sean compatibles con el clúster.

El siguiente diagrama ilustra la arquitectura de la conectividad multiVPC de Amazon MSK conectada a un cliente de una cuenta diferente. AWS 

![\[Diagrama de red con varias VPC en una sola región\]](http://docs.aws.amazon.com/es_es/msk/latest/developerguide/images/mvpc-network.png)


# Paso 1: en el clúster de MSK de la cuenta A, active la conectividad con varias VPC para el esquema de autenticación de IAM en el clúster
<a name="mvpc-cluster-owner-action-turn-on"></a>

El propietario del clúster de MSK debe realizar los ajustes de configuración en el clúster de MSK una vez creado el clúster y ponerlo en estado ACTIVO.

El propietario del clúster activa la conectividad privada con varias VPC en el clúster ACTIVO para cualquier esquema de autenticación que esté activo en el clúster. Esto se puede hacer mediante la [UpdateSecurity API o la consola MSK](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-security.html). Los esquemas de autenticación IAM, SASL/SCRAM y TLS admiten la conectividad privada con varias VPC. La conectividad privada con varias VPC no se puede habilitar para los clústeres no autenticados.

En este caso de uso, configurará el clúster para que utilice el esquema de autenticación de IAM.

**nota**  
Si va a configurar el clúster de MSK para que utilice un esquema de SASL/SCRAM autenticación, la ACLs propiedad "" `allow.everyone.if.no.acl.found=false` de Apache Kafka es obligatoria. [Consulte Apache Kafka. ACLs](https://docs.aws.amazon.com/msk/latest/developerguide/msk-acls.html)

Al actualizar la configuración de conectividad privada con varias VPC, Amazon MSK inicia un reinicio continuo de los nodos del agente para actualizar las configuraciones del agente. Esta acción puede tardar hasta 30 minutos o más en completarse. No puede realizar otras actualizaciones en el clúster mientras se actualiza la conectividad.

**Active la opción con varias VPC para los esquemas de autenticación seleccionados en el clúster de la cuenta A mediante la consola**

1. Abra la consola de Amazon MSK en [https://console.aws.amazon.com/msk/](https://docs.aws.amazon.com/msk/latest/developerguide/msk-acls.html)la cuenta en la que se encuentra el clúster.

1. En el panel de navegación, en **Clústeres de MSK**, seleccione **Clústeres** para ver la lista de clústeres de la cuenta.

1. Seleccione el clúster que desee configurar para la conectividad privada con varias VPC. El clúster debe estar en estado ACTIVO.

1. Seleccione la pestaña **Propiedades** del clúster y, a continuación, vaya a **Configuración de redes**.

1. Seleccione el menú desplegable **Editar** y elija **Activar la conectividad con varias VPC**.

1. Seleccione uno o más tipos de autenticación que desee activar para este clúster. Para este caso de uso, seleccione la **autenticación basada en roles de IAM**.

1. Seleccione **Guardar cambios**.

**Example - UpdateConnectivity API que activa los esquemas de autenticación de conectividad privada de varias VPC en un clúster**  
Como alternativa a la consola de MSK, puede usar la [UpdateConnectivity API](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-connectivity.html) para activar la conectividad privada de varias VPC y configurar esquemas de autenticación en un clúster ACTIVO. En el siguiente ejemplo, se muestra el esquema de autenticación de IAM para el clúster.  

```
{
  "currentVersion": "K3T4TT2Z381HKD",
  "connectivityInfo": {
    "vpcConnectivity": {
      "clientAuthentication": {
        "sasl": {
          "iam": {
            "enabled": TRUE
            }
        }
      }
    }
  }
}
```

Amazon MSK crea la infraestructura de red necesaria para la conectividad privada. Amazon MSK también crea un nuevo conjunto de puntos de conexión de agente de arranque para cada tipo de autenticación que requiera conectividad privada. Tenga en cuenta que el esquema de autenticación de texto sin formato no admite la conectividad privada con varias VPC.

# Paso 2: asociación de una política de clúster al clúster de MSK
<a name="mvpc-cluster-owner-action-policy"></a>

El propietario del clúster puede asociar una política de clúster (también conocida como [política basada en recursos](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html#security_iam_service-with-iam-resource-based-policies)) al clúster de MSK, donde activará la conectividad privada con varias VPC. La política de clúster otorga a los clientes permiso para acceder al clúster desde otra cuenta. Para poder editar la política de clúster, necesitará los ID de las cuentas que deben tener permiso para acceder al clúster de MSK. Consulte [How Amazon MSK works with IAM](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html).

El propietario del clúster debe asociar una política de clúster al clúster de MSK que autorice al usuario con varias cuentas de la cuenta B a contratar agentes de arranque para el clúster y a autorizar las siguientes acciones en el clúster de MSK de la cuenta A:
+ CreateVpcConnection
+ GetBootstrapBrokers
+ DescribeCluster
+ DescribeClusterV2

**Example**  
Como referencia, a continuación se muestra un ejemplo del JSON para una política de clúster básica, similar a la política predeterminada que se muestra en el editor de políticas de IAM de la consola de MSK. La siguiente política concede permisos de acceso al clúster, a los temas y a los grupos.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": [
        "kafka:CreateVpcConnection",
        "kafka:GetBootstrapBrokers",
        "kafka:DescribeCluster",
        "kafka:DescribeClusterV2",
        "kafka-cluster:*"
      ],
      "Resource": "arn:aws:kafka:us-east-1:111122223333:cluster/testing/de8982fa-8222-4e87-8b20-9bf3cdfa1521-2"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": "kafka-cluster:*",
      "Resource": "arn:aws:kafka:us-east-1:111122223333:topic/testing/*"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": "kafka-cluster:*",
      "Resource": "arn:aws:kafka:us-east-1:111122223333:group/testing/*"
    }
  ]
}
```

**Asociación de una política de clúster al clúster de MSK**

1. En la consola de Amazon MSK, en **Clústeres de MSK**, elija **Clústeres**.

1. Desplázate hacia abajo hasta llegar a **Configuración de seguridad** y seleccione **Editar política del clúster**.

1. En la consola, en la pantalla **Editar política de clúster**, seleccione **Política básica para la conectividad con varias VPC**.

1. En el campo **ID de cuenta**, ingrese el ID de cuenta de cada cuenta que deba tener permiso para acceder a este clúster. A medida que escriba el ID, este se copia automáticamente en la sintaxis JSON de la política que se muestra. En nuestro ejemplo de política de clúster, el ID de cuenta es *111122223333*.

1. Seleccione **Guardar cambios**.

Para obtener información sobre la política de clústeres APIs, consulte Políticas [basadas en recursos de Amazon MSK](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html#security_iam_service-with-iam-resource-based-policies).

# Paso 3: acciones del usuario entre cuentas para configurar las conexiones de VPC administradas por el cliente
<a name="mvpc-cross-account-user-action"></a>

Para configurar la conectividad privada con varias VPC entre un cliente de una cuenta diferente del clúster de MSK, el usuario entre cuentas crea una conexión de VPC administrada para el cliente. Se pueden conectar varios clientes al clúster de MSK repitiendo este procedimiento. Para los fines de este caso de uso, tendrá que configurar un solo cliente.

Los clientes pueden usar los esquemas de autenticación compatibles: IAM, SASL/SCRAM o TLS. Cada conexión de VPC administrada solo puede tener asociado un esquema de autenticación. El esquema de autenticación del cliente debe configurarse en el clúster de MSK al que se conectará el cliente.

 Para este caso de uso, configure el esquema de autenticación del cliente de modo que el cliente de la cuenta B utilice el esquema de autenticación de IAM.

**Requisitos previos**

Este proceso requiere los siguientes elementos:
+ La política de clústeres creada anteriormente que concede al cliente de la cuenta B permiso para realizar acciones en el clúster de MSK de la cuenta A.
+ Una política de identidad asociada al cliente en la cuenta B que otorga permisos para `kafka:CreateVpcConnection`, `ec2:CreateTags`, `ec2:CreateVPCEndpoint` y la acción `ec2:DescribeVpcAttribute`.

**Example**  
Como referencia, a continuación se muestra un ejemplo de JSON para una política de identidad de cliente básica.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kafka:CreateVpcConnection",
        "ec2:CreateTags",
        "ec2:CreateVPCEndpoint",
        "ec2:DescribeVpcAttribute"
      ],
      "Resource": "*"
    }
  ]
}
```

**Creación de una conexión de VPC administrada para un cliente de la cuenta B**

1. Del administrador del clúster, obtenga el **ARN del clúster** de MSK de la cuenta A al que desea que se conecte el cliente de la cuenta B. Anote el ARN del clúster para usarlo más adelante.

1. En la consola de MSK de la cuenta de cliente B, seleccione **Conexiones de VPC administradas** y, a continuación, seleccione **Crear conexión**.

1. En el panel **Configuración de conexión**, pegue el ARN del clúster en el campo de texto ARN del clúster y, a continuación, seleccione **Verificar**.

1. Seleccione el **Tipo de autenticación** para el cliente en la cuenta B. Para este caso de uso, elija IAM al crear la conexión de VPC del cliente.

1. Elija la **VPC** para el cliente.

1. Elija al menos dos **zonas** de disponibilidad y **subredes** asociadas. Puede obtener la zona IDs de disponibilidad desde los detalles del clúster de AWS Management Console o mediante la [DescribeCluster](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn.html#DescribeCluster)API o el comando AWS CLI [describe-cluster](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kafka/describe-cluster.html). La zona IDs que especifique para la subred del cliente debe coincidir con las de la subred del clúster. Si faltan los valores de una subred, primero cree una subred con el mismo ID de zona que su clúster de MSK.

1. Elija un **Grupo de seguridad** para esta conexión de VPC. Puede aceptar el grupo de seguridad predeterminado. Para obtener más información sobre la configuración de grupos de seguridad, consulte [Control del tráfico hacia los recursos mediante grupos de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html).

1. Seleccione **Crear conexión**.

1. Para obtener la lista de nuevas cadenas de agente de arranque desde la consola de MSK del usuario entre cuentas (**Detalles del clúster** > **Conexiones de VPC administradas**), consulte las cadenas de agente de arranque que se muestran en **Cadena de conexión del clúster**. Desde la cuenta B del cliente, se puede ver la lista de agentes de arranque llamando a la [GetBootstrapBrokers](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-bootstrap-brokers.html#GetBootstrapBrokers)API o consultando la lista de agentes de arranque en los detalles del clúster de la consola.

1. Actualice los grupos de seguridad asociados a las conexiones de VPC de la siguiente manera:

   1. Establezca **reglas de entrada** para la PrivateLink VPC a fin de permitir todo el tráfico del rango de IP desde la red de la cuenta B.

   1. [Opcional] Establezca conectividad mediante **Reglas de salida** con el clúster de MSK. Elija el **Grupo de seguridad** en la consola de la VPC, **Editar reglas de salida** y agregue una regla para **Tráfico TCP personalizado** para los rangos de puertos del 14001 al 14100. El equilibrador de carga de red de varias VPC escucha en los rangos de puertos del 14001 al 14100. Consulte [Network Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html).

1. Configure el cliente de la cuenta B para que utilice los nuevos agentes de arranque para la conectividad privada con varias VPC a fin de conectarse al clúster de MSK de la cuenta A. Consulte [Produce and consume data](https://docs.aws.amazon.com/msk/latest/developerguide/produce-consume.html).

Una vez completada la autorización, Amazon MSK crea una conexión de VPC administrada para cada VPC y esquema de autenticación especificados. El grupo de seguridad elegido se asocia a cada conexión. Amazon MSK configura esta conexión de VPC administrada para conectarse de forma privada a los agentes. Puede utilizar el nuevo conjunto de agentes de arrange para conectarse de forma privada al clúster de Amazon MSK.