Uso de espacios de nombres de AWS Cloud Map compartidos con Amazon ECS Service Connect
La configuración de los AWS Cloud Map espacios de nombres compartidos para Service Connect implica los siguientes pasos: el propietario del espacio de nombres crea el espacio de nombres, el propietario lo comparte mediante AWS Resource Access Manager (AWS RAM), el consumidor acepta el recurso compartido y el consumidor configura Service Connect para usar el espacio de nombres compartido.
Paso 1: Creación del espacio de nombres de AWS Cloud Map
El propietario del espacio de nombres crea un espacio de nombres de AWS Cloud Map que se compartirá con otras cuentas.
Creación de un espacio de nombres para compartirlo mediante Consola de administración de AWS
-
Abra la consola de AWS Cloud Map en https://console.aws.amazon.com/cloudmap/
. -
Elija Crear espacio de nombres.
-
Introduzca un nombre en Nombre del espacio de nombres. Los servicios de todas las cuentas participantes utilizarán este nombre.
-
En Tipo de espacio de nombres, elija el tipo adecuado para su caso de uso:
-
Llamadas a la API: espacios de nombres HTTP para la detección de servicios sin funcionalidad de DNS.
-
Llamadas a la API y consultas de DNS en las VPC: espacios de nombres de DNS privados para la detección de servicios con consultas de DNS privadas en una VPC.
-
Llamadas a la API y consultas de DNS públicas: espacios de nombres de DNS públicos para la detección de servicios con consultas de DNS públicas.
-
-
Elija Crear espacio de nombres.
Paso 2: Uso compartido del espacio de nombres con AWS RAM
El propietario del espacio de nombres utiliza AWS RAM para compartir el espacio de nombres con otras Cuentas de AWS.
Uso compartido de un espacio de nombres mediante la consola de AWS RAM
-
Abra la consola de AWS RAM en https://console.aws.amazon.com/ram/
. -
Elija Crear recurso compartido.
-
En Nombre, introduzca un nombre descriptivo para el recurso compartido.
-
En la sección Recursos:
-
En Tipo de recurso, seleccione Espacios de nombres de Cloud Map.
-
Seleccione el espacio de nombres que creó en el paso anterior.
-
-
En la sección Permisos administrados, especifique AWSRAMPermissionCloudMapECSFullPermission.
importante
Debe usar el permiso administrado
AWSRAMPermissionCloudMapECSFullPermissionpara compartir el espacio de nombres para que Service Connect funcione correctamente con el espacio de nombres. -
En la sección Entidades principales, especifique las Cuentas de AWS con las que desea compartir el espacio de nombres. Puede introducir ID de cuenta o ID de unidad organizativa.
-
Elija Crear recurso compartido.
Paso 3: Aceptación del recurso compartido
Las cuentas de consumidor del espacio de nombres deben aceptar la invitación del recurso compartido para usar el espacio de nombres compartido.
Aceptación de la invitación del recurso compartido mediante la consola de AWS RAM
-
En la cuenta de consumidor, abra la consola de AWS RAM en https://console.aws.amazon.com/ram/
. -
En el panel de navegación, elija Compartidos conmigo y, a continuación, seleccione Recursos compartidos.
-
Seleccione la invitación del recurso compartido y elija Aceptar el recurso compartido.
-
Tras aceptar, anote el ARN del espacio de nombres compartido que se indica en los detalles del recurso. Utilizará este ARN al configurar los servicios de Service Connect.
Paso 4: Configuración de un servicio de Amazon ECS con el espacio de nombres compartido
Tras aceptar el espacio de nombres compartido, el consumidor del espacio de nombres puede configurar los servicios de Amazon ECS para que usen el espacio de nombres compartido. La configuración es similar a usar un espacio de nombres normal, pero debe especificar el ARN del espacio de nombres en lugar del nombre. Para ver un procedimiento detallado de creación de servicios, consulte Creación de una implementación de actualización continua de Amazon ECS.
Creación de un servicio con un espacio de nombres compartido mediante la Consola de administración de AWS
Abra la consola en https://console.aws.amazon.com/ecs/v2
. -
En la página Clústeres, seleccione el clúster en el que desea crear el servicio.
-
En Servicios, seleccione Crear.
-
Tras rellenar otros detalles en función de la carga de trabajo, en la sección Service Connect, seleccione Usar Service Connect.
-
En Espacio de nombres, introduzca el ARN completo del espacio de nombres compartido.
El formato del ARN es:
arn:aws:servicediscovery:region:account-id:namespace/namespace-id -
Configure el resto de los ajustes de Service Connect según sea necesario para su tipo de servicio (cliente o cliente-servidor).
-
Complete el proceso de creación del servicio.
También puede configurar los servicios mediante la AWS CLI o los SDK de AWSespecificando el ARN del espacio de nombres compartido en el parámetro namespace de serviceConnectConfiguration.
aws ecs create-service \ --cluster my-cluster \ --service-name my-service \ --task-definition my-task-def \ --service-connect-configuration '{ "enabled": true, "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcdef1234567890", "services": [{ "portName": "web", "discoveryName": "my-service", "clientAliases": [{ "port": 80, "dnsName": "my-service" }] }] }'