AWS CLI 도구 설치 및 사용법

    1. AWS CLI 설치

     

    1) homebrew 설치

     

    mac OS 경우 homebrew를 통해 쉽게 설치할 수 있습니다. homebrew 설치는 이전 포스팅을 참고해 주세요 :)

     

     

    homebrew 설치 및 기본 사용법 (Mac OS)

    1. home brew 접속 https://brew.sh Homebrew The Missing Package Manager for macOS (or Linux). brew.sh 2. install homebrew 아래 명령어를 복붙하여 터미널에 입력해준다. 3. 오류 터미널에 명령어를 입력한..

    minutemaid.tistory.com

     

    2) 명령어 입력

     

    해당 명령어를 통해 간단하게 AWS CLI를 설치할 수 있습니다.

    $brew install awscli

     

    2. AWS CLI 자격 증명 설정

     

    1) 보안 자격 증명 이동

     

    \

    본인 계정 이름을 누르게 되면, 다음과 같이 5개의 버튼이 뜨는데 '보안 자격 증명' 버튼을 눌러주면 됩니다.

     

    2 ) 새 액세스키 생성

     

     

     

    그 후 '액세스 키(액세스 키 ID 및 비밀 액세스 키)'에 들어가 새 액세스 키를 만들어 준 후 키 파일을 안전한 곳에 다운로드 받아 줍니다.

     

    3 ) AWS CLI 자격증명 설정 방법

     

    AWS CLI를 이용하기 위해서는 본인의 AWS 자격증명을 설정해야 하는데, 그 방법에는 여러가지 방법을 지원합니다. 각 설정 방법과 적용 우선순위를 알아두는 것이 중요합니다!

     

    더보기

    1. 환경 변수를 통해 AWS CLI 자격증명 설정

     

    1 ) AccessKey를 설정하는 방법

     

    2) 사용자 프로파일을 지정하는 방법

     

     

    2. CLI 명령어 옵션

    --profile

    CLI 명령어 옵션은 가장 높은 우선순위를 지니나 액세스 키를 지정하는 방법은 없으며 사용자 프로파일 지정만 가능합니다.

     

     

    3. EC2 인스턴스 프로파일 

     

    IAM 역학을 EC2 머신에 부여하기 위한 목적으로, EC2 내에서 AWS 서비스에 대한 권한을 수행할 수 있게 됩니다.

     

    4. CLI 명령어 옵션을 이용한 액세스 키 설정

     

    1) 디렉토리 이동

     

    저 같은 경우 바탕화면에 있는 Workspace라는 폴더에 아까전에 만들었던 액세스키를 저장해두었기 때문에 다음과 같은 명령어를 입력하여 해당 디렉토리로 이동해주었습니다.

     

    $cd Desktop //바탕화면으로 이동
    $cd Workspace //Workspace 폴더로 이동
    $ls

     

    다음과 ls 명령어를 통해 rootkey.csv라는 액세스 키가 있는 것을 확인할 수 있습니다.

     

     

    2) 액세스키 정보 복사

     

    $cat rootkey.csv

     

    cat 명령어를 사용하면 그 파일의 내용을 출력하게 되는데, 명령어를 입력하면

    AWSAccessKeyId = ~

    AWSSecretKey = ~ 

    의 형식으로 자신의 액세스 키 정보가 나오게 되는데 이것을 복사해주시면 됩니다.

     

     

    3) config 파일에 액세스키 정보 붙여넣기

     

    선호하는 에디터를 통해 config 파일을 열어주시면 됩니다.

    $vi ~/.aws/config

     

    해당 파일은 비어있을텐데, 방금 복사한 액세스 키 정보를 붙여 넣고 저장해주시면 됩니다.

    [default]
    aws_secret_access_key = xxxxxxxxxxxxxxxxx
    aws_access_key_id = xxxxxxxxxxxxx

     

    설정이 잘 완료되었다면 해당 명령어를 입력 시 아래 와 같이 설정된 aws 계정정보를 확인하실 수 있습니다.

    $aws sts get-caller-identity

     

     

     

    5. AWS CLI 기본 리전 설정

     

    사전에 기본 리전을 설정해주면 AWS CLI을 사용할 때마다 매번 리전 옵션을 주지 않아도 됩니다. 

     

    해당 명령어를 입력하면 ec2 서비스에 등록된 key-pair 목록을 불러오게 됩니다.

    $aws ec2 describe-key-pairs

     

    하지만 명령어를 실행해보면 리전을 설정하라는 경고 메세지를 볼 수 있습니다.

     

     

    리전 설정은 --region ~ 과 같이 지정할 수 있습니다. 해당 명령어를 실행하면 key-pair 목록을 성공적으로 출력하게 됩니다

     

    그렇다면 이번에는 기본 리전 설정을 통해 해당 리전 명령어 옵션을 생략할 수 있도록 변경해보겠습니다.

    config 파일에 들어가서 'region=ap-northeast-2'을 작성한 후 저장해줍니다.

    $vi ~/.aws/config
    [default]
    region=ap-northeast-2 //추가한 부분
    aws_access_key_id=xxxxxxxx
    aws_secret_Access_key=xxxxxxx

     

    $aws ec2 describe-key-pairs

    다음 과정을 성공적으로 수행했다면 리전 옵션을 주지않고도 key-pair 목록을 불러올 수 있게 됩니다.

     

     

    6. AWS CLI 결과 출력 형식 설정

     

    AWS CLI의 결과 출력 형식은 여러가지를 제공하고 있는데, 위 사진의 리전 정보같은 경우 json 형식으로 출력되었습니다. --ouput 옵션을 주게 되면 원하는 출력 형식을 지정할 수 있습니다. 저는 table 형식으로 출력해 보겠습니다.

     

    $aws ec2 describe-key-pairs --ouput table

     

    하지만 --ouput 옵션을 계속해서 주는 것이 귀찮기 때문에 vi ~/.aws/config 로 들어가서 ouput=table로 작성해줍니다.

    [default]
    region=ap-northeast-2
    ouput=table //추가
    aws_access_key_id=xxxxxxxx
    aws_secret_Access_key=xxxxxxx

     

    config 파일을 잘 수정 했다면 다음과 같이 옵션을 주지 않고도 테이블 형태로 결과를 출력할 수 있습니다.

    aws ec2 describe-key-pairs

     

    7. 사용자 프로파일 설정

     

    사용자 프로파일 설정을 통해 여러 AWS 자격증명을 관리할 수 있게 되는데, 이때도 동일하게 환경변수를 설정하는 방식과 --profile 옵션을 주는 방식이 있습니다. vi ~/.aws/config를 통해 config 파일에 2개의 프로파일을 추가해보도록 하겠습니다.

     

    [default]
    region=ap-northeast-2
    aws_access_key_id=xxxxxxxx
    aws_secret_Access_key=xxxxxxx
    
    [profile ap-northeast-1]
    region=ap-northeast-1
    aws_access_key_id=xxxxxxxx
    aws_secret_Access_key=xxxxxxx
    
    [profile eu-west-1]
    region=eu-west-1
    aws_access_key_id=xxxxxxxx
    aws_secret_Access_key=xxxxxxx

     

    프로파일을 추가 후 아래 명령어를 입력하게 되면 현재 프로파일의 지역명을 가져오게 됩니다.

    $aws configure get region

     

    지금은 default 프로파일이 ap-northeast-2이기 때문에 ap-northeast-2 지역명을 가져오게 됩니다. 만약 eu-west-1 지역명을 가져오고 싶다면 --profile 옵션을 주면 됩니다.

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

     

    역시 마찬가지로 계속해서 옵션을 주는 것이 번거롭기 때문에 환경변수를 설정해주도록 하겠습니다. 터미널에 해당 명령어를 작성하여 환경변수 설정 후 --profile을 제거한 명령어를 치게되면 ap-northeast-1을 불러오는 것을 보실 수 있습니다!

    $export AWS_PROFILE=ap-northeast-1
    $aws configure get region

     

    'AWS' 카테고리의 다른 글

    AWS VPC에 대해 알아보자  (0) 2022.01.16
    AWS MFA 설정하기  (0) 2022.01.15
    AWS 계정 ssh key 등록 / EC2 접속 방법  (0) 2022.01.15
    AWS 계정 생성 방법  (0) 2022.01.15
    Homebrew 설치 및 기본 사용법 (Mac OS)  (0) 2022.01.15

    댓글