DevOps - AWS CLI 도구 설치 및 사용

현시기얌·2021년 9월 3일
0

DevOps

목록 보기
4/16

AWS CLI

AWS 서비스 관리를 위한 CLI 명령형 도구
파이썬 기반으로 개발되어있으나 콘솔 상에서 AWS 서비스를 관리하거나, 자동화 스크립트 작성에 활용할 수 있다.

AWS CLI 자격증명 : AWS 액세스키 발급

AWS 계정 혹은 IAM 사용자의 액세스 키 발급 필요

  • Access Key ID : 자격증명 주체를 가리킴, 인증 요청한 사람이 누구인가?
  • Secret Access Key : 자격증명 주체 본인임을 인증, 인증 요청한 사람이 정말 A가 맞는가?

AWS CLI 자격증명 설정 :

AWS CLI 자격증명 우선순위

  1. CLI 명령어 옵션
  2. 환경변수
  3. CLI 자격증명 파일 - ~/.aws/credentials
  4. CLI 설정 파일 - ~/.aws/config
  5. 컨테이너 자격증명 (ECS의 경우)
  6. 인스턴스 프로파일 자격증명(EC2의경우)

AWS CLI 자격증명 설정 : CLI 설정 파일

~./aws/config

AWS CLI 설정파일은 ~./aws/config에 위치한다.
기본설정과 추가 사용자 프로파일을 설정 파일에서 관리할 수 있다.

AWS CLI 자격증명 설정 : 환경변수

환경 변수를 통해 AWS CLI의 자격증명을 설정하는 방법은 여러가지이다.
기본적으로 AccessKey를 설정하는 방법과 사용자 프로파일을 지정하는 방법을 알아두면 좋다.

AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_PROFILE
...
...

AWS CLI 자격증명 설정 : CLI 명령어 옵션

--profile

AWS CLI 명령어 옵션은 가장 높은 우선순위를 가지고 있지만
AccessKey를 지정하는 방법은 없으며, 사용자 프로파일 지정만 가능하다.

AWS CLI 자격증명 설정 : EC2 인스턴스 프로파일

IAM 역할(Role)을 EC2 머신에 부여하기 위한 목적
EC2 내에서 AWS 서비스에 대한 권한을 수행할 수 있게 된다.

AWS CLI 결과 출력 형식 설정

결과 출력 형식

AWS CLI 명령어 수행 후 나오는 결과 데이터의 출력 형식을 의미
지원하는 출력 형식 : json, text, table, yaml, yaml-stream

[default]
region=ap-northeast-2
output=json
aws_access_key_id=
aws_secret_access_key=

사용자 프로파일 설정

~/.aws/config 파일 상에 [profile name] 섹션을 추가하여 여러 사용자 프로파일 등록 가능

[default]
region = ap-northeast-2
output=json
aws_access_key_id=
aws_secret_access_key=

[profile eu-west-1]
region = eu-west1
aws_access_key_id=
aws_secret_access_key=

[profile ap-northeast-1]
region=ap-northeast-1
aws_access_key_id=
aws_secret_access_key=

AWS CLI 멀티 사용자 프로파일 예제

여러 AWS 계정 운영
동일 계정 내 여러 리전 운영
동일 계정 내 여러 IAM 역할 전환 수행
AWS SSO 조직 내 SSO 역할 수행

지역 확인하기

aws configure get region

특정 사용자 지역 확인하기

aws configure get region --profile eu-west-1

AWS CLI 사용법

aws <command> <subcommand> [options and parameters]

버전 확인

aws --version

메뉴얼 확인

aws help
aws <command> help
aws <command> <subcommand> help

디버그 모드 활성화

aws sts get-caller-identity --debug

현재 자격증명 정보 확인

aws sts get-caller-identity

정리

AWS CLI는 AWS 서비스를 관리할 수 있는 명령형 도구로, 자동화 목적에 활용 가능하다.
AWS CLI를 설치하고 자격증명 및 기본 리전, 결과 출력 형식을 설정할 수 있다.
AWS 액세스 키를 발급 받고 자격증명으로 사용할 수 있다.

profile
현시깁니다

0개의 댓글