Trabajo con mallas compartidas - AWS App Mesh

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.

Trabajo con mallas compartidas

Puedes compartir tus mallas de App Mesh entre AWS las cuentas que utilizan el AWS Resource Access Manager servicio. Una malla compartida permite que los recursos creados por diferentes AWS cuentas se comuniquen entre sí en la misma malla.

Una AWS cuenta puede ser el propietario de un recurso en malla, un consumidor en malla o ambas cosas. Los consumidores pueden crear recursos en una malla que se comparte con su cuenta. Los propietarios pueden crear recursos en cualquier malla que posea la cuenta. El propietario de una malla puede compartir una malla con los siguientes tipos de consumidores de malla.

  • AWS Cuentas específicas dentro o fuera de su organización en AWS Organizations

  • Una unidad organizativa dentro de su organización en AWS Organizations

  • Toda su organización en AWS Organizations

Para ver end-to-end un tutorial sobre cómo compartir una malla, consulta el tutorial sobre GitHub redes multicuentas.

Otorgar permisos para compartir mallas

Al compartir mallas entre cuentas, se requieren permisos para el director de IAM que comparte la malla y permisos a nivel de recursos necesarios para la propia malla.

Otorgar permiso para compartir una malla

Se requiere un conjunto mínimo de permisos para que un director de IAM comparta una malla. Recomendamos utilizar las políticas de IAM AWSResourceAccessManagerFullAccess gestionadas AWSAppMeshFullAccess y las políticas de IAM para garantizar que sus directores de IAM dispongan de los permisos necesarios para compartir y utilizar mallas compartidas.

Si utilizas una política de IAM personalizada, las acciones y las acciones son appmesh:PutMeshPolicy obligatoriasappmesh:GetMeshPolicy. appmesh:DeleteMeshPolicy Estas son acciones de IAM que solo requieren permisos. Si a un director de IAM no se le conceden estos permisos, se producirá un error al intentar compartir la malla mediante el servicio. AWS RAM

Para obtener más información sobre la forma en que el AWS Resource Access Manager servicio usa IAM, consulte Cómo se AWS RAM usa IAM en la Guía del AWS Resource Access Manager usuario.

Otorgar permisos para una malla

Una malla compartida tiene los siguientes permisos.

  • Los consumidores pueden enumerar y describir todos los recursos de una malla que se comparte con la cuenta.

  • Los propietarios pueden enumerar y describir todos los recursos de cualquier malla que posea la cuenta.

  • Los propietarios y los consumidores pueden modificar los recursos de una malla creada por la cuenta, pero no pueden modificar los recursos que haya creado otra cuenta.

  • Los consumidores pueden eliminar cualquier recurso de una malla que haya creado la cuenta.

  • Los propietarios pueden eliminar cualquier recurso de una malla que haya creado cualquier cuenta.

  • Los recursos del propietario solo pueden hacer referencia a otros recursos de la misma cuenta. Por ejemplo, un nodo virtual solo puede hacer referencia AWS Cloud Map a un AWS Certificate Manager certificado que esté en la misma cuenta que el propietario del nodo virtual.

  • Los propietarios y los consumidores pueden conectar un proxy de Envoy a App Mesh como un nodo virtual propiedad de la cuenta.

  • Los propietarios pueden crear puertas de enlace virtuales y rutas de puerta de enlace virtuales.

  • Los propietarios y los consumidores pueden enumerar etiquetas y etiquetar o desetiquetar recursos de una malla creada por la cuenta. No pueden enumerar etiquetas ni etiquetar o desetiquetar recursos de una malla que no haya sido creada por la cuenta.

Las mallas compartidas utilizan una autorización basada en políticas. Se comparte una malla con un conjunto fijo de permisos. Estos permisos se seleccionan para añadirlos a una política de recursos y también se puede seleccionar una política de IAM opcional en función del rol o usuario de IAM. La intersección de los permisos permitidos en estas políticas, menos los permisos explícitos denegados, determina el acceso de la entidad principal a la malla.

Al compartir una malla, el AWS Resource Access Manager servicio crea una política administrada denominada AWSRAMDefaultPermissionAppMesh y la asocia a tu App Mesh, que proporciona los siguientes permisos.

  • appmesh:CreateVirtualNode

  • appmesh:CreateVirtualRouter

  • appmesh:CreateRoute

  • appmesh:CreateVirtualService

  • appmesh:UpdateVirtualNode

  • appmesh:UpdateVirtualRouter

  • appmesh:UpdateRoute

  • appmesh:UpdateVirtualService

  • appmesh:ListVirtualNodes

  • appmesh:ListVirtualRouters

  • appmesh:ListRoutes

  • appmesh:ListVirtualServices

  • appmesh:DescribeMesh

  • appmesh:DescribeVirtualNode

  • appmesh:DescribeVirtualRouter

  • appmesh:DescribeRoute

  • appmesh:DescribeVirtualService

  • appmesh:DeleteVirtualNode

  • appmesh:DeleteVirtualRouter

  • appmesh:DeleteRoute

  • appmesh:DeleteVirtualService

  • appmesh:TagResource

  • appmesh:UntagResource

Requisitos previos para compartir mallas

Para utilizar una malla, debe cumplir los siguientes requisitos previos.

  • Debes ser el propietario de la malla de tu AWS cuenta. No puede compartir una malla que se haya compartido con usted.

  • Para compartir una malla con su organización o con una unidad organizativa de AWS Organizations, debe habilitar el uso compartido con AWS Organizations. Para obtener más información, consulte Habilitar el uso compartido con AWS Organizations en la Guía del usuario de AWS RAM .

  • Sus servicios se deben implementar en una VPC de Amazon que tenga conectividad compartida entre las cuentas que incluyen los recursos de malla que desea poner en comunicación entre sí. Una forma de compartir la conectividad de red consiste en implementar todos los servicios que desee utilizar en la malla en una subred compartida. Para obtener más información y conocer las limitaciones, consulte Uso compartido de una subred.

  • Los servicios deben poder detectarse a través del DNS o AWS Cloud Map. Para obtener más información sobre la detección de servicios, consulte Nodos virtuales.

El uso compartido de mallas se integra con AWS Resource Access Manager (AWS RAM). AWS RAM es un servicio que le permite compartir sus AWS recursos con cualquier AWS cuenta o a través de AWS Organizations. Con AWS RAM, compartes los recursos de tu propiedad mediante la creación de un recurso compartido. Un uso compartido de recursos especifica los recursos que compartir y los consumidores con quienes compartirlos. Los consumidores pueden ser AWS cuentas individuales, unidades organizativas o toda una organización AWS Organizations.

Para obtener más información al respecto AWS RAM, consulte la Guía AWS RAM del usuario.

Uso compartido de una malla

Compartir una malla permite que los recursos de malla creados por diferentes cuentas se comuniquen entre sí en la misma malla. Solo puede compartir una malla de su propiedad. Para compartir una malla, debe añadirla a un recurso compartido. Un recurso compartido es un AWS RAM recurso que te permite compartir tus recursos entre AWS cuentas. Un uso compartido de recursos especifica los recursos que se deben compartir y los consumidores con quienes se comparten. Cuando se comparte una malla mediante la consola de Amazon Linux, se añade a un uso compartido de recurso existente. Para añadir la malla a un nuevo uso compartido de recurso, debe crear el uso compartido de recurso mediante la consola de AWS RAM.

Si formas parte de una organización AWS Organizations y el uso compartido dentro de tu organización está activado, los consumidores de tu organización pueden acceder automáticamente a la malla compartida. De lo contrario, los consumidores reciben una invitación para unirse al recurso compartido y se les concede acceso a la malla compartida después de aceptar la invitación.

Puedes compartir una malla de tu propiedad mediante la AWS RAM consola o el AWS CLI.

Para compartir una malla de tu propiedad mediante la AWS RAM consola

Para obtener instrucciones, consulte Creación de un recurso compartido en la Guía del usuario de AWS RAM . Cuando seleccione un tipo de recurso, elija Mallas y, a continuación, la malla que desee compartir. Si no aparece ninguna malla, cree una primero. Para obtener más información, consulte Creación de una malla de servicios.

Para compartir una malla de tu propiedad mediante el AWS CLI

Utilice el comando create-resource-share. Para la opción --resource-arns, especifique el ARN de la malla que desea compartir.

Dejar de compartir una malla compartida

Cuando deja de compartir una malla, App Mesh desactiva el acceso a la malla para los antiguos consumidores de la malla. Sin embargo, App Mesh no elimina los recursos creados por los consumidores. Una vez que se deja de compartir la malla, solo el propietario de la malla puede obtener acceso a los recursos y eliminarlos. App Mesh impide que la cuenta que posee los recursos de la malla reciba información de configuración después de dejar de compartir la malla. App Mesh también impide que cualquier otra cuenta con recursos en la malla reciba información de configuración de una malla que se ha dejado de compartir. Solo el propietario de la malla puede dejar de compartirla.

Para dejar de compartir una malla compartida que posee, debe eliminarla del recurso compartido. Puede hacerlo mediante la AWS RAM consola o el AWS CLI.

Para dejar de compartir una malla compartida de tu propiedad mediante la consola AWS RAM

Para obtener instrucciones, consulte Actualización de un recurso compartido en la Guía del usuario de AWS RAM .

Para dejar de compartir una malla compartida de tu propiedad mediante el AWS CLI

Utilice el comando disassociate-resource-share.

Identificación de una malla compartida

Los propietarios y los consumidores pueden identificar las mallas y los recursos de malla compartidos mediante la consola Amazon Linux y AWS CLI

Para identificar una malla compartida mediante la consola de Amazon Linux
  1. Abra la consola de App Mesh en https://console.aws.amazon.com/appmesh/.

  2. En el panel de navegación izquierdo, seleccione Mallas. El ID de cuenta del propietario de cada malla aparece en la columna Propietario de la malla.

  3. En el panel de navegación izquierdo, seleccione Servicios virtuales, Enrutadores virtuales o Nodos virtuales. Verá el ID de cuenta del propietario de la malla y el propietario del recurso de cada uno de los recursos.

Para identificar una malla compartida mediante el AWS CLI

Use el comando aws appmesh list resource, por ejemplo, aws appmesh list-meshes. El comando devuelve las mallas que posee y las mallas que se comparten con usted. La meshOwner propiedad muestra el ID de AWS cuenta del meshOwner y la resourceOwner propiedad muestra el ID de AWS cuenta del propietario del recurso. Cualquier comando que se ejecute en cualquier recurso de malla devuelve estas propiedades.

Las etiquetas definidas por el usuario que se asocian a una malla compartida solo están disponibles para su Cuenta de AWS. No están disponibles para las demás cuentas con las que se comparte la malla. Se deniega el acceso al comando aws appmesh list-tags-for-resource de una malla en otra cuenta.

Facturación y medición

No se aplican cargos por compartir una malla.

Cuotas de instancias

Todas las cuotas de una malla también se aplican a las mallas compartidas, independientemente de quién haya creado los recursos de la malla. Solo el propietario de una malla puede solicitar aumentos de cuota. Para obtener más información, consulte Cuotas de servicio de App Mesh. El servicio de AWS Resource Access Manager también tiene cuotas. Para obtener más información, consulte Cuotas de servicio.