¿Hay alguna manera de enumerar todos los recursos en AWS? Para todas las regiones, todos los recursos... Por ejemplo, enumerar todas las instancias de EC2, todas las VPC, todas las API en API Gateway, etc. Me gustaría enumerar todos los recursos de mi cuenta, ya que me resulta difícil encontrar los recursos que puedo renunciar ahora.
Hay una plataforma de administración en la nube que hace esto. Permite a los usuarios administrar varias cuentas de AWS desde un solo panel, además de proporcionar administración de inventario de AWS. Es gratis: https://cloudplexo.com .
Aquí hay un buen artículo que enumera las herramientas para enumerar los recursos en la nube de AWS. https://link.medium.com/tZbs8eLyohb
Entre ellos, CloudYali https://www.cloudyali.io es el servicio recién lanzado. Muestra todos los recursos de la nube de diferentes cuentas, regiones, tanto del presente como del pasado, disponibles en un lugar central.
Si. Utilice el Editor de etiquetas.
Establezca "Regiones" en "Todas las regiones", "Tipos de recursos" en "Todos los tipos de recursos admitidos" y luego haga clic en "Buscar recursos".
Prueba esto
Solo para ec2:
from skew import scan arn = scan('arn:aws:ec2:us-west-2:123456789012:instance/i-12345678') for resource in arn: print(resource.data)Para todos los recursos:
arn = scan('arn:aws:*:*:<<youraccountId>>:instance*') for resource in arn: print(resource.data)Referencia: https://github.com/scopely-devops/skew
La consola de administración de facturación de AWS le brindará un resumen del gasto por servicio del mes hasta la fecha.
Utilice PacBot (Policy as Code Bot) , un proyecto de código abierto que es una plataforma para la supervisión continua del cumplimiento, la generación de informes de cumplimiento y la automatización de la seguridad para la nube. Todos los recursos en todas las cuentas y todas las regiones son descubiertos por PacBot y luego evaluados contra estas políticas para medir el cumplimiento de las mismas.
Las funciones de Omni Search también están disponibles y brindan la capacidad de buscar todos los recursos descubiertos. Incluso puede cancelar/eliminar recursos a través de PacBot.
Búsqueda omnidireccional

Página de resultados de búsqueda con filtrado de resultados

Activo 360 / Página de detalles del activo

Estas son las capacidades clave de PacBot:
Si.
Tuve el mismo problema, tratando de averiguar qué está pasando exactamente en mi cuenta de AWS.
Eventualmente, terminé escribiendo AWSRetriver , una herramienta de escritorio para enumerar los recursos de AWS en todas las regiones.
Es una herramienta simple y directa que enumera todo... (con suerte) 
Puede utilizar el Tag Editor .
Resource GroupsTag Editor 
Aquí podemos seleccionar una región en particular en la que queremos buscar o seleccionar todas las regiones del menú desplegable. Luego podemos seleccionar los recursos reales que queremos buscar o también podemos hacer clic en recursos individuales.
Es muy tarde, pero deberías mirar esto. No CLI, lo sé, pero aún así vale la pena eliminar un pequeño script de shell para hacer lo que necesita:
https://pypi.org/project/aws-list-all/
Es una biblioteca de python que en sus propias palabras:
"Descripción del proyecto Enumera todos los recursos en una cuenta de AWS, todas las regiones, todos los servicios (*). Escribe archivos JSON para su posterior procesamiento.
(*) No hay garantías de integridad. Use alertas de facturación si le preocupan los costos".
También estoy buscando una característica similar "enumerar todos los recursos" en AWS, pero no pude encontrar nada lo suficientemente bueno.
"Grupos de recursos" no ayuda porque solo enumera los recursos que se han etiquetado y el usuario debe especificar la etiqueta. Si no etiqueta un recurso, no aparecerá en "Grupos de recursos" .
Interfaz de usuario de "Crear un grupo de recursos"
Una función más adecuada es "Grupos de recursos" -> "Editor de etiquetas" , como ya se mencionó en la publicación anterior. Seleccione regiones y tipos de recursos para ver una lista de recursos en el editor de etiquetas. Esto sirve para el propósito, pero no es muy fácil de usar porque tengo que ingresar la región y el tipo de recurso cada vez que quiero usarlo. Todavía estoy buscando una interfaz de usuario fácil de usar.
Interfaz de usuario de "Buscar recurso" en "Editor de etiquetas"
Iría con el "editor de etiquetas" en "grupos de recursos" para esto, como sugirió Ashwini.
Puede enumerar fácilmente todos los recursos en todas las regiones sin ninguna configuración, etc.
Y aunque esto incluye todas las VPC predeterminadas + grupos de seguridad, etc. (por lo que obtendrá ~ 140 elementos incluso si su cuenta está vacía), aún puede filtrar esto con bastante facilidad, ya sea dentro del editor de etiquetas o exportar a csv y filtrar en Excel, por ejemplo.
EDITAR: Esta respuesta está en desuso. Revisa las otras respuestas.
No,
No hay forma de obtener todos los recursos dentro de su cuenta de una sola vez. Cada región es independiente y para algunos servicios como IAM, el concepto de región no existe en absoluto. Aunque hay llamadas API disponibles para enumerar recursos y servicios.
Por ejemplo:
output, err := client.DescribeRegions(&ec2.DescribeRegionsInput{}) client.GetAccountAuthorizationDetails(&iam.GetAccountAuthorizationDetailsInput{})
Puede encontrar más detalles sobre las llamadas API y su uso en: https://docs.aws.amazon.com/sdk-for-go/api/service/iam/
El enlace anterior es solo para IAM. Del mismo modo, puede encontrar API para todos los demás recursos y servicios.
Si. Utilice elEditor de etiquetas .
Establezca "Regiones" en "Todas las regiones", "Tipos de recursos" en "Todos los tipos de recursos admitidos" y luego haga clic en "Buscar recursos".
Las herramientas proporcionadas por AWS no son útiles porque no son completas.
En mi propia búsqueda para mitigar este problema y obtener una lista de todos mis recursos de AWS, encontré esto: https://github.com/JohannesEbke/aws_list_all
Todavía no lo he probado, pero parece legítimo.
Editar: esta respuesta está en desuso y es incorrecta . Hay varias formas de enumerar los recursos de AWS (el editor de etiquetas de AWS, etc.). Verifique las otras respuestas para más detalles.
No.
Cada servicio de AWS (p. ej., Amazon EC2, Amazon S3) tiene su propio conjunto de llamadas a la API. Además, cada Región es independiente.
Para obtener una lista de todos los recursos, debe realizar llamadas API a todos los servicios de cada región.
Es posible que desee activar AWS Config :
AWS Config proporciona una vista detallada de la configuración de los recursos de AWS en su cuenta de AWS. Esto incluye cómo se relacionan los recursos entre sí y cómo se configuraron en el pasado para que pueda ver cómo cambian las configuraciones y las relaciones con el tiempo.
Sin embargo, AWS Config solo recopila información sobre recursos relacionados con EC2/VPC, no todo en su cuenta de AWS.
¡Creo que esto puede ayudar! Aquí, debe ingresar el nombre de la región y debeconfigurar AWS CLI antes de intentar esto.
aws resourcegroupstaggingapi get-resources --region region_nameEnumerará todos los recursos en la región con el siguiente formato.
- ResourceARN: arn:aws:cloudformation:eu-west-1:5524534535:stack/auction-services-dev/******************************* Tags: - Key: STAGE Value: dev - ResourceARN: arn:aws:cloudformation:eu-west-1:******************** Tags: -- More --Otra herramienta de código abierto para esto es Cloud Query https://docs.cloudquery.io/
Puede ejecutar consultas avanzadas a través de AWS Config (y desde la CLI para Config), que enumerarán todos los recursos. Si define un agregador que cubra todos los motivos (y quizás varias cuentas), puede obtener una vista muy completa. . . Tan simple como "SELECCIONAR *"
Amazon intenta continuamente mejorar la experiencia del usuario. Sin embargo, existen otras formas múltiples de verificar los recursos que está utilizando en AWS. Creo que este nuevo tablero EC2 es bastante bueno. Al hacer clic en el enlace, lo llevará directamente al panel de control de recursos en particular.
Sé que es una pregunta antigua, pero también me gustaría ayudar.
De hecho, tenemos AWS Config , que nos ayudan a buscar todos los recursos en nuestra nube. También puede realizar consultas SQL.
Realmente los animo a todos a conocer este increíble servicio.
Puede utilizar una consulta en la consola de AWS Config aquí. (La región puede cambiar para usted) https://console.aws.amazon.com/config/home?region=us-east-1#/resources/query
la consulta se verá como.
SELECT resourceId, resourceName, resourceType, relationships WHERE relationships.resourceId = 'vpc-#######'Otra opción es usar este script que ejecuta "aws configservice list-discovered-resources --resource-type" para cada recurso
for i in AWS::EC2::CustomerGateway AWS::EC2::EIP AWS::EC2::Host AWS::EC2::Instance AWS::EC2::InternetGateway AWS::EC2::NetworkAcl AWS::EC2::NetworkInterface AWS::EC2::RouteTable AWS::EC2::SecurityGroup AWS::EC2::Subnet AWS::CloudTrail::Trail AWS::EC2::Volume AWS::EC2::VPC AWS::EC2::VPNConnection AWS::EC2::VPNGateway AWS::IAM::Group AWS::IAM::Policy AWS::IAM::Role AWS::IAM::User AWS::ACM::Certificate AWS::RDS::DBInstance AWS::RDS::DBSubnetGroup AWS::RDS::DBSecurityGroup AWS::RDS::DBSnapshot AWS::RDS::EventSubscription AWS::ElasticLoadBalancingV2::LoadBalancer AWS::S3::Bucket AWS::SSM::ManagedInstanceInventory AWS::Redshift::Cluster AWS::Redshift::ClusterSnapshot AWS::Redshift::ClusterParameterGroup AWS::Redshift::ClusterSecurityGroup AWS::Redshift::ClusterSubnetGroup AWS::Redshift::EventSubscription AWS::CloudWatch::Alarm AWS::CloudFormation::Stack AWS::DynamoDB::Table AWS::AutoScaling::AutoScalingGroup AWS::AutoScaling::LaunchConfiguration AWS::AutoScaling::ScalingPolicy AWS::AutoScaling::ScheduledAction AWS::CodeBuild::Project AWS::WAF::RateBasedRule AWS::WAF::Rule AWS::WAF::WebACL AWS::WAFRegional::RateBasedRule AWS::WAFRegional::Rule AWS::WAFRegional::WebACL AWS::CloudFront::Distribution AWS::CloudFront::StreamingDistribution AWS::WAF::RuleGroup AWS::WAFRegional::RuleGroup AWS::Lambda::Function AWS::ElasticBeanstalk::Application AWS::ElasticBeanstalk::ApplicationVersion AWS::ElasticBeanstalk::Environment AWS::ElasticLoadBalancing::LoadBalancer AWS::XRay::EncryptionConfig AWS::SSM::AssociationCompliance AWS::SSM::PatchCompliance AWS::Shield::Protection AWS::ShieldRegional::Protection AWS::Config::ResourceCompliance AWS::CodePipeline::Pipeline; do aws configservice list-discovered-resources --resource-type $i; done