AWS CLI 모둠
EC2
-
EC2 본인 Public IP 가져오기 (IMDS v2)
etc
- Mac에서 AWS CLI output이 자동으로 닫히지 않을 때
-> 원인: Pager 설정 때문에 자동으로 닫히지 않음, 아래 커맨드를 사용하여 pager 비활성화
EKS
- 연습용 EKS Cluster 생성 후 kubectl로 제어할 수 있도록 설정
- EC2가 존재하는 동일 AWS 계정의 ECR에 로그인
export ACCOUNT_ID=$(aws sts get-caller-identity --output text --query Account) TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` export AWS_REGION=$(curl -H "X-aws-ec2-metadata-token: $TOKEN" -s http://169.254.169.254/latest/dynamic/instance-identity/document | jq -r '.region') aws ecr get-login-password --region ${AWS_REGION} | docker login --username AWS --password-stdin ${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com
Instances
Running상태인 인스턴스들의 인스턴스 ID만 찾기- 인스턴스 Name에 'db'가 들어가는 인스턴스의 Volume Size 찾기
aws ec2 describe-instances \ --filters Name=tag:Name,Values="*db*" \ --query "Reservations[*].Instances[*].BlockDeviceMappings[*].Ebs.VolumeId" --output json \ | jq '.[][][]' \ | xargs -I{} aws ec2 --region ap-southeast-1 describe-volumes --filters Name=volume-id,Values={} --query "Volumes[*].Size" \ | jq '.[]' - EC2 Name tag에 db가 포함되는 인스턴스 ID 가져오기
Image and snapshots
- 2022-01-01 ~ 2022-12-31 기간에 생성된 EBS Volume snapshot 찾기
- 타 계정에 공유된 EBS Snapshot중 볼륨 생성 권한도 공유된 Snapshot 찾기
- 타 계정에 공유된 AMI Image중 타 계정에서 인스턴스 실행 권한을 가지고 있는 Image만 찾기
- 현재 attached된(in-use상태인) EBS Volume들의 Size 보기
- AMI Image이름 중 'DLM'이 존재하는 Image ID와 SnapshotID 찾기
- . EC2 Name tag에 db가 포함되는 모든 인스턴스의 AMI 생성하기
S3
~/test/디렉터리의 txt파일만 전부 s3://my-bucket/test/ 에 업로드 하기