Skip to main content

AWS 운영 자동화 CLI 도구

Project description

AA (AWS Automation)

PyPI CI Python License Platform

AWS 운영 자동화를 위한 CLI 도구입니다.

미사용 리소스 탐지, 보안 점검, IAM 감사, ALB 로그 분석 등 AWS 운영에 필요한 도구들을 하나로 통합했습니다. 멀티 계정·멀티 리전 환경을 지원하며, 대화형 메뉴에서 키워드 검색으로 필요한 도구를 빠르게 찾을 수 있습니다. 분석 결과는 Excel 보고서로 저장됩니다. 현재 19개 AWS 서비스를 지원하며, 지속적으로 새로운 도구를 추가할 예정입니다.

주요 기능

  • 멀티 계정 & 리전: 여러 AWS 계정과 리전을 동시에 분석
  • 다중 인증 지원: SSO Session, SSO Profile, Access Key 자동 감지
  • Excel 보고서: 분석 결과를 Excel 파일로 자동 저장
  • 키워드 검색: 대화형 메뉴에서 도구를 빠르게 검색
  • 플러그인 구조: 새로운 도구를 쉽게 추가 가능

설치

PyPI (권장)

pip install aws-automation

소스에서 설치

git clone https://github.com/expeor/aws-automation.git
cd aws-automation
pip install -e .

사용법

aa                # 대화형 메인 메뉴
aa ec2            # EC2 도구 바로 실행
aa vpc            # VPC 도구 바로 실행

메인 메뉴

설명
a 전체 도구
s AWS 서비스별 (EC2, RDS…)
c AWS 분류별 (Compute…)
t 점검 유형 (보안, 비용…)
f 즐겨찾기
p 프로필
g 프로필 그룹
q 종료

검색

> rds              # 서비스명
> 미사용           # 한글 키워드 (비용)
> 보안             # 한글 키워드 (보안)
> snapshot         # 영문 키워드

CLI 명령어

기본 사용법

aa                  # 대화형 메뉴
aa ec2              # EC2 도구 실행
aa --help           # 도움말
aa --version        # 버전 표시

Headless 모드 (CI/CD용)

대화형 프롬프트 없이 도구를 실행합니다. SSO Profile 또는 Access Key 프로파일만 지원합니다. 도구 경로는 aa list-tools로 확인하세요.

# 도구 경로 확인
aa list-tools

# 기본 실행
aa run ec2/ebs_audit -p my-profile -r ap-northeast-2

# 다중 리전
aa run ec2/ebs_audit -p my-profile -r ap-northeast-2 -r us-east-1

# 전체 리전
aa run ec2/ebs_audit -p my-profile -r all

# 프로파일 그룹으로 실행
aa run ec2/ebs_audit -g "개발 환경" -r ap-northeast-2

# JSON 출력
aa run ec2/ebs_audit -p my-profile -f json -o result.json

옵션:

옵션 설명
-p, --profile SSO Profile 또는 Access Key 프로파일
-g, --profile-group 저장된 프로파일 그룹 이름
-r, --region 리전 (다중 가능, all 또는 패턴)
-f, --format 출력 형식 (console, json, csv)
-o, --output 출력 파일 경로
-q, --quiet 최소 출력 모드

도구 목록 조회

aa list-tools              # 전체 도구 목록
aa list-tools -c ec2       # EC2 카테고리만
aa list-tools --json       # JSON 출력

프로파일 그룹 관리

여러 프로파일을 그룹으로 묶어 한 번에 실행할 수 있습니다.

aa group list              # 그룹 목록
aa group show "개발 환경"   # 그룹 상세
aa group create            # 그룹 생성 (인터랙티브)
aa group delete "개발 환경" # 그룹 삭제

지원 서비스

서비스 주요 도구
EC2 EBS/EIP/Snapshot/AMI 미사용 분석
VPC 보안 그룹, NAT Gateway, 엔드포인트
S3 빈 버킷 탐지, 수명 주기 분석
IAM 사용자/역할 감사, 정책 분석
RDS 스냅샷 감사, 인스턴스 분석
ELB ALB/NLB 감사, 로그 분석
CloudWatch 로그 그룹 감사
Route53 빈 호스팅 영역 탐지
ECR 미사용 저장소 탐지
KMS 키 사용 감사
Secrets Manager 미사용 시크릿 탐지
SSO SSO 구성 감사
ACM 미사용/만료 임박 인증서 탐지
EFS 미사용 파일시스템 탐지
SNS 미사용 토픽 탐지
SQS 미사용 큐 탐지
ElastiCache 미사용 클러스터 탐지
API Gateway 미사용 API 탐지
EventBridge 미사용 규칙 탐지

요구 사항

  • Python 3.10 ~ 3.13
  • AWS CLI 프로필 설정 (~/.aws/config)

업데이트

# PyPI 설치 시
pip install --upgrade aws-automation

# 소스 설치 시
git pull && pip install -e .

라이선스

MIT License - LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws_automation-0.1.1.tar.gz (446.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_automation-0.1.1-py3-none-any.whl (607.3 kB view details)

Uploaded Python 3

File details

Details for the file aws_automation-0.1.1.tar.gz.

File metadata

  • Download URL: aws_automation-0.1.1.tar.gz
  • Upload date:
  • Size: 446.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aws_automation-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2597b53f6cb820d43772797158831ade2948a309b857a3450b763da1c7d17ebd
MD5 5a3f0590715afe458cd980fd7d120543
BLAKE2b-256 49cb0e4596f071e7cc45123b074c97c1ed7b8772cca352298e7026afe248d63f

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_automation-0.1.1.tar.gz:

Publisher: publish.yml on expeor/aws-automation

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aws_automation-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: aws_automation-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 607.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aws_automation-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 16049f15351ecef1c12a88ea09c831ae4bebd0a0317f95ae79d599b949594f7d
MD5 956aa6b658ad311d9643401dff3f924d
BLAKE2b-256 09ccec400ae6b5a2837c7176b978e8ffa2dedefa1b6883720ec5b73dd22d4a81

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_automation-0.1.1-py3-none-any.whl:

Publisher: publish.yml on expeor/aws-automation

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page