AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
¿Cómo termino o reconstruyo mi entorno de Elastic Beanstalk cuando AWSEBSecurityGroup no logra eliminarlo?
Cuando termino o reconstruyo mi entorno de AWS Elastic Beanstalk, recibo el siguiente error: «Stack deletion failed: The following resource(s) failed to delete: [AWSEBSecurityGroup]».
Descripción corta
AWSEBSecurityGroup es un grupo de seguridad de Amazon Elastic Compute Cloud (Amazon EC2) que la pila subyacente de AWS CloudFormation crea a través de Elastic Beanstalk. Cuando una interfaz de red elástica o un grupo de seguridad que se crea fuera del entorno de Elastic Beanstalk usa AWSEBSecurityGroup, el entorno falla cuando lo terminas o lo reconstruyes.
Nota: Para administrar los recursos que crea Elastic Beanstalk, se recomienda utilizar una de las siguientes opciones: la consola de Elastic Beanstalk, la interfaz de la línea de comandos de Elastic Beanstalk (EBCLI) o la interfaz de la línea de comandos de AWS (AWS CLI). Si se muestran errores al ejecutar comandos de la AWS CLI, consulta Solución problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Resolución
Para resolver este problema, realiza una de las siguientes tareas:
- Utiliza la consola de AWS CloudFormation o la AWS CLI para eliminar la pila de CloudFormation que creó el entorno de Elastic Beanstalk. A continuación, termina o reconstruye el entorno de Elastic Beanstalk.
- Elimina los objetos dependientes de tu grupo de seguridad de Elastic Beanstalk. A continuación, termina o reconstruye el entorno de Elastic Beanstalk.
Nota: En los siguientes comandos de la AWS CLI, introduce los valores del nombre de la pila, el nombre del entorno, la región de AWS y otras variables específicas del entorno.
Eliminación de la pila de la consola de CloudFormation
Importante: Si tu entorno de Elastic Beanstalk tiene una base de datos integrada de Amazon Relational Database Service (Amazon RDS), primero desacopla la instancia de base de datos de Amazon RDS.
Puedes usar la consola de CloudFormation o la AWS CLI para eliminar la pila.
Consola de CloudFormation
- Abre la consola de CloudFormation.
- En la página Pilas, elige la pila que no se pudo eliminar.
Nota: La columna Estado de la pila muestra DELETE_FAILED. - Selecciona Eliminar.
- En la ventana emergente Eliminar pila, selecciona AWSEBSecurityGroup y, a continuación, elige Eliminar.
Importante: Asegúrate de eliminar el grupo de seguridad. AWSEBSecurityGroup no se elimina automáticamente al eliminar la pila. Si la terminación del entorno falla debido a otro recurso dependiente, primero elige el recurso apropiado en el estado DELETE_FAILED en la ventana emergente Eliminar pila. A continuación, selecciona Eliminar. - Termina o reconstruye el entorno de Elastic Beanstalk.
AWS CLI
-
Para eliminar la pila de CloudFormation, ejecuta el comando describe-network-interface-attribute:
aws cloudformation delete-stack --stack-name awseb-e-ztrauxujck-stack --retain-resources "AWSEBSecurityGroup" --region us-east-1 -
Para terminar el entorno de Elastic Beanstalk, ejecuta el comando terminate-environment:
aws elasticbeanstalk terminate-environment --environment-name my-env --region us-east-1 -
Para reconstruir el entorno de Elastic Beanstalk, ejecuta el comando rebuild-environment:
aws elasticbeanstalk rebuild-environment --environment-name my-env --region us-east-1
Búsqueda y eliminación de los objetos dependientes del grupo de seguridad de Elastic Beanstalk
Para buscar la interfaz de red dependiente o un grupo de seguridad dependiente que no te permita eliminar AWSEBSecurityGroup, sigue estos pasos. Puedes usar la consola de Amazon EC2 o la AWS CLI.
Consola de Amazon EC2
- Obtén el ID del grupo de seguridad de AWSEBSecurityGroup a partir del mensaje de error de la secuencia de eventos de Elastic Beanstalk.
- Abre la consola de Amazon EC2.
- En el panel de navegación, selecciona Grupos de seguridad. A continuación, elige el ID de AWSEBSecurityGroup.
- Elige Acciones y, a continuación, elige Eliminar grupo de seguridad para buscar las dependencias en AWSEBSecurityGroup.
- En la ventana emergente Eliminar grupos de seguridad, sigue estos pasos:
Selecciona Ver la instancia asociada.
Elige Acciones y, a continuación, Redes.
Elige Cambiar grupo de seguridad.
Desactiva las casillas de verificación ID de AWSEBSecurityGroup y Asignar grupos de seguridad. - En la ventana emergente Eliminar grupos de seguridad, elige Ver los grupos de seguridad de referencia.
- Para eliminar la asociación del ID de AWSEBSecurityGroup, selecciona Acciones y, a continuación, elige Editar reglas de entrada o Editar reglas de salida.
- Termina o reconstruye el entorno de Elastic Beanstalk.
AWS CLI
-
Obtén el ID del grupo de seguridad de AWSEBSecurityGroup a partir del mensaje de error de la secuencia de eventos de Elastic Beanstalk.
-
En la carpeta .ebextensions, crea un archivo de configuración basado en el siguiente ejemplo:
#!/bin/bash SecurityGroupID=$1 Region=$2 DependentENI=$(aws ec2 describe-network-interfaces --filters Name=group-id,Values=[$SecurityGroupID] --region $Region | jq '.NetworkInterfaces[].NetworkInterfaceId') DependentSGingress=$(aws ec2 describe-security-groups --filters Name=ip-permission.group-id,Values=[$SecurityGroupID] --region $Region | jq '.SecurityGroups[] .GroupId') DependentSGegress=$(aws ec2 describe-security-groups --filters Name=egress.ip-permission.group-id,Values=[$SecurityGroupID] --region $Region | jq '.SecurityGroups[] .GroupId') echo "The dependent ENI is $DependentENI" echo "The security group id with a dependency in ingress rule : $DependentSGingress" echo "The security group id with a dependency in egress rule : $DependentSGegress" -
Guarda el script bash como sg_dependency.sh.
-
Instala la utilidad jq desde el sitio web de jq.
-
Para obtener el ID de la interfaz de red y el ID del grupo de seguridad, ejecuta el siguiente comando:
./sg_dependency.sh sg-111aaa22 us-east-1Nota: Sustituye sg-111aaa22 por el ID de AWSEBSecurityGroup. Sustituye us-east-1 por tu región de AWS.
-
Para buscar los grupos de seguridad que están adjuntos al ID de la interfaz de red, ejecuta el comando describe-network-interface-attribute:
aws ec2 describe-network-interface-attribute --network-interface-id eni-1099d901 --attribute groupSet -
Para desasociar el ID de AWSEBSecurityGroup, ejecuta el comando modify-network-interface-attribute:
aws ec2 modify-network-interface-attribute --network-interface-id eni-1099d901 --groups sg-030644d6c95b6470a sg-d34a33a8 sg-059c081ab30c3e38e sg-0e4eabc747368e6c9Importante: En el comando anterior, no incluyas el ID de AWSEBSecurityGroup. Incluye otros ID de grupos de seguridad para que permanezcan adjuntos a la interfaz de red. Si incluyes el ID de AWSEBSecurityGroup en el servicio de AWS que creó la interfaz de red, el resultado del comando muestra el siguiente error: «An error occurred (AuthFailure) when calling the ModifyNetworkInterfaceAttribute operation: You don't have permission to access the specified resource».
-
Ejecuta el comando describe-security-groups para enumerar todas las reglas de entrada y salida del grupo de seguridad dependiente.
-
Ejecuta el comando revoke-security-group-ingress o revoke-security-group-egress según el resultado del paso 7.
Ejemplo: Si el ID de AWSEBSecurityGroup es sg-111aaa22 y el resultado del paso 8 tiene ese ID de grupo de seguridad en las reglas de entrada, ejecuta el siguiente comando:aws ec2 revoke-security-group-ingress --group-id sg-0018a2fbdcd5797ea --ip-permissions '\[{"PrefixListIds":\[\],"FromPort":0,"IpRanges":\[\],"ToPort":65535,"IpProtocol":"tcp","UserIdGroupPairs":\[{"UserId":"123456789102","GroupId":"sg-111aaa22"}\],"Ipv6Ranges":\[\]}\]'Nota: UserId es el ID de la cuenta de AWS.
-
Para terminar el entorno de Elastic Beanstalk, ejecuta el comando terminate-environment:
aws elasticbeanstalk terminate-environment --environment-name my-env --region us-east-1
- Para reconstruir el entorno de Elastic Beanstalk, ejecuta el comando rebuild-environment:
aws elasticbeanstalk rebuild-environment --environment-name my-env --region us-east-1
Información relacionada
- Temas
- Compute
- Etiquetas
- AWS Elastic Beanstalk
- Idioma
- Español

Contenido relevante
- Respuesta aceptadapreguntada hace 10 meses
- preguntada hace un año
- preguntada hace 2 meses
- preguntada hace 2 meses
OFICIAL DE AWSActualizada hace 3 meses
OFICIAL DE AWSActualizada hace 6 meses