Una guida di riferimento rapido per le consuete operazioni di amministrazione cloud tramite la CLI ufficiale di AWS (aws).
Installazione e configurazione
# macOS (Homebrew)
brew install awscli
# Inizializzare credenziali e regione predefinita
aws configure
# Configurare profili denominati
aws configure --profile staging
aws configure --profile production
Credenziali e configurazione sono archiviate in ~/.aws/credentials e ~/.aws/config.
Amazon S3 (Simple Storage Service)
# Elencare i bucket o il contenuto di un bucket
aws s3 ls
aws s3 ls s3://my-bucket-name/prefix/
# Copiare un file locale su S3
aws s3 cp document.pdf s3://my-bucket-name/docs/
# Sincronizzare una directory locale con un bucket S3 (con esclusioni)
aws s3 sync ./build s3://my-bucket-name/web --delete --exclude "*.tmp"
# Rimuovere ricorsivamente una directory o un prefisso
aws s3 rm s3://my-bucket-name/temporary-files --recursive
Amazon EC2 (Elastic Compute Cloud)
# Descrivere le istanze in esecuzione
aws ec2 describe-instances \
--filters "Name=instance-state-name,Values=running" \
--query "Reservations[*].Instances[*].[InstanceId,PublicIpAddress,Tags[?Key=='Name'].Value|[0]]" \
--output table
# Avviare o arrestare le istanze
aws ec2 start-instances --instance-ids i-0123456789abcdef0
aws ec2 stop-instances --instance-ids i-0123456789abcdef0
# Terminare un'istanza
aws ec2 terminate-instances --instance-ids i-0123456789abcdef0
Amazon ECS (Elastic Container Service)
# Elencare i cluster
aws ecs list-clusters
# Creare un cluster
aws ecs create-cluster --cluster-name production-cluster
# Elencare i task in esecuzione nel cluster
aws ecs list-tasks --cluster production-cluster
CLI di AWS Elastic Beanstalk (eb)
# Inizializzare un'applicazione Elastic Beanstalk
eb init
# Creare l'ambiente e distribuire l'applicazione
eb create production-env
eb deploy
# Aprire l'applicazione nel browser
eb open
# Visualizzare i log in tempo reale dell'applicazione
eb logs
Opzioni e query utili
--profile <name>: Eseguire il comando con un profilo IAM specifico.--region <region>: Sostituire la regione AWS configurata di default.--output [json|text|table]: Specificare il formato di output della CLI (json, text, table).--query '<JMESPath>': Filtrare ed estrarre attributi strutturati usando espressioni JMESPath.