Script de administración de AWS EC2 por línea de comandos que usa directamente tu configuración activa de aws-cli (perfil/región)
- Shell 100%
| ec2-admin.sh | ||
| LICENSE | ||
| README.md | ||
aws-cli-admin
Script de administración básica para AWS EC2 usando aws-cli.
Este proyecto provee un comando imperativo (ec2-admin.sh) para operar sobre EC2 en la región/perfil activos del entorno de aws-cli, sin pasar credenciales ni región por parámetro.
Requisitos
bashaws-cliinstalado y configurado- Credenciales válidas en tu entorno (
AWS_PROFILE,AWS_REGION,~/.aws/config, etc.)
Comandos
./ec2-admin.sh list
./ec2-admin.sh list-running
./ec2-admin.sh list-stopped
./ec2-admin.sh start <instance-id> [instance-id ...]
./ec2-admin.sh stop <instance-id> [instance-id ...]
./ec2-admin.sh terminate <instance-id> [instance-id ...]
./ec2-admin.sh cost
./ec2-admin.sh terminate-everything
Qué hace cada comando
list: Lista todas las instancias EC2.list-running: Lista solo instancias en estadorunning.list-stopped: Lista solo instancias en estadostopped.start: Inicia una o más instancias por ID.stop: Detiene una o más instancias por ID.terminate: Termina una o más instancias por ID.cost: Muestra únicamente recursos EC2 activos que potencialmente generan costo en la región activa.terminate-everything: Muestra recursos con costo que serán eliminados, pide confirmaciónyes/noy luego ejecuta la limpieza.
Detalle del comando cost
cost muestra secciones solo cuando hay datos:
- Instancias en ejecución.
- Volúmenes EBS excluyendo los que están adjuntos a instancias
running. - AMIs propias.
- Snapshots EBS asociados a AMIs propias.
- Snapshots EBS propios no asociados a AMIs.
- Elastic IPs.
- NAT Gateways (
availableopending). - Elastic Load Balancers:
- Classic ELB.
- ELBv2 (ALB/NLB/Gateway Load Balancer).
Si no hay recursos para mostrar, no imprime secciones.
Limpieza total (terminate-everything)
Este comando es destructivo y elimina recursos EC2 en la región activa:
- Termina instancias (
pending/running/stopping/stopped). - Borra NAT Gateways.
- Borra Elastic Load Balancers (Classic y ELBv2).
- Deregistra AMIs propias.
- Libera Elastic IPs (desasocia primero si aplica).
- Borra snapshots EBS asociados a esas AMIs.
- Borra snapshots EBS propios no asociados a AMIs.
- Borra volúmenes EBS en estado
available.
Antes de ejecutar, muestra el detalle y solicita confirmación explícita:
Confirmas la limpieza total de estos recursos? (yes/no):
Ejemplos
./ec2-admin.sh list
./ec2-admin.sh stop i-0123456789abcdef0
./ec2-admin.sh start i-0123456789abcdef0 i-0fedcba9876543210
./ec2-admin.sh cost
./ec2-admin.sh terminate-everything
License
Licensed under the WTFPL v2.
