(AWS) CLI 설치 및 등록 방법 및 간단한 명령(Mac)

  • by

안녕하세요 이번 게시물에서는 AWS CLI(Command Line Interface) 설치 및

등록 명령 등을 조사해 봅시다.

※설치 기준은 MAC 기준입니다 설치 방법은

AWS 홈페이지에 운영체제별로 기재되어 있습니다※

우선 AWS CLI란?셸 명령을 사용하여 AWS 서비스와 상호 작용할 수 있습니다.

도구입니다.

우리가 아마존 웹사이트에서 서비스를 이용할 수 있도록 기기에서 명령줄로

aws 서비스를 이용하는 것으로 보면 됩니다.

Mac OS는 Homebrew를 사용하여 쉽게 설치할 수 있습니다.


$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
$ sudo installer -pkg AWSCLIV2.pkg -target /

1. curl 명령을 사용하여 파일을 다운로드할 수 있습니다.

-o 옵션은 다운로드한 패키지가 기록되는 파일 이름을 지정합니다.

위의 예에서

파일은 현재 폴더의 “AWSCLIV2.pkg”에 기록됩니다.

$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"

2. 다운로드한 .pkg 파일을 소스로 지정하여 표준 macOS installer 프로그램을 실행합니다.

-pkg 매개 변수를 사용하여 설치할 패키지의 이름을 지정하고, -target/ 매개변수를 사용하여

패키지를 설치할 드라이브를 지정합니다.

파일은 /usr/local/aws-cli에 설치됨 /usr/local/binsymlink가 자동으로 생성됩니다.

해당 폴더에 쓰기 권한을 부여하려면 명령에 sudo를 포함해야 합니다.

$ sudo installer -pkg ./AWSCLIV2.pkg -target /

설치가 완료되면 디버그 로그가 /var/log/install.log에 기록됩니다.

3. aws에서 $PATH 명령을 찾아 실행할 수 있는지 확인하려면 다음 명령을 사용합니다.

$which aws
/usr/local/bin/aws 

$aws --version
aws-cli/2.10.0 Python/3.11.2 Darwin/18.7.0 botocore/2.4.5

aws의 경로와 버전을 확인할 수 있습니다.

위의 설명은 AWS 공식 홈페이지에 설명된 설명입니다.

설치 프로세스 중에 오류가 발생하는 경우(M1 칩 인텔 칩에 따라 다를 수 있음)

공식 홈페이지에 오류에 관한 기사도 게재되어 있습니다.

확인하면 좋다고 생각합니다 (내 기준 M1 칩은 오류없이 설치가 잘되었습니다)


AWS Cli를 사용하려면 AWS 계정에서 발급 IAM 사용자의

AWS AccessKey 그리고 AWS Secret AccessKey필요합니다.

IAM 사용자는 AWS 계정 리소스를 사용하는 데 필요한 권한을

할 수 있도록 상세한 권한 설정을 하여 사용할 수 있습니다.

IAM 사용자를 사용하여 보안을 유지하고 사용자가 필요

작업을 수행하는 데 도움이됩니다.

– IAM 사용자 등록

1. root 계정 로그인 후 검색창에 ‘IAM’ 검색후 서비스에 들어가기


2. 왼쪽 카테고리에서 사용자 메뉴를 클릭!


3-1) IAM 사용자 추가 사용자 추가 버튼을 누릅니다.

3-2) 사용자 이름을 설정합니다.

3-3) 권한 정책 설정 중 ” AmazonEC2FullAccess 「만 체크 후, 정책 작성을 해 줍니다.

이 정책은 IAM 사용자 또는 그룹에 Amazon Elastic Compute Cloud(EC2) 서비스의 모든 기능에 대한 권한을 부여합니다.

즉, 사용자 또는 그룹은 EC2 인스턴스 시작, 중지, 관리, 태그 지정, 보안 그룹 관리 등 EC2에 대한 모든 작업을 수행할 수 있습니다.

테스트 목적으로 사용하는 경우에만 사용하며 보안에 취약합니다.




아래의 다음 버튼을 누르면 “test” 생성이 완료됩니다.

이후에 생성된 IAM 사용자에게 액세스 키 주는 작업을 해야 합니다.

4. 액세스 스키 만들기






4-1) test IAM 사용자를 클릭합니다.

4-2) 중」 보안 자격 증명 을 클릭합니다.

4-3) 아래로 내리고 액세스 키 만들기를 클릭합니다.

4-4) Command Line Interface (CLI)를 클릭하고 아래에 동의 항목을 확인합니다.

4-5) 설명 태그 값은 넣지 않는 경우도 있습니다 (주석 처리하여 알려주는 것을 쓰는 곳입니다.

)

액세스 키 작성 완료입니다.

액세스 키는 공개되면 절대로 할 수 없습니다.

.csv 파일로 퍼스널 컴퓨터에 저장할 수도 있습니다.

일부 파일에는 액세스 키와 비밀 액세스 키가 있습니다(“,” 구분 기호로 구분됨)


위의 방법으로 진행을 하면 거의 끝났습니다.

VSCODE를 실행하여 명령어를 입력합니다.

aws --version
 -> 버전 확인하는거( 잘 설치 되었나.. ) 

aws configure
 -> 4가지를 입력해야합니다.

AWS Access Key ID (None) : (발급받은 IAM의 Access Key ID) AWS Secret Access Key (None) : (발급받은 IAM의 Secret Access Key) Default region name (None) : ap-northeast-2(서울 리전) Default output format (None) : text / json / table

Access Key ID/AWS Secret Access Key는 .csv 파일에 “,” 구분 기호로 표시됩니다.

Default region name은 지역 정보입니다.

Default output format은 json 형식으로 result 값을 받기 때문에 json으로 설정했습니다.

aws configure list
-> 설치 확인하는 명령어

aws configure set default.output json
-> defulat output이 설정이 안되었다면, 위의 명령어를 통해
-> json으로 변경가능함

## Keypair 설정

AWS에서 Keypair란? EC2 인스턴스와 같은 가상 서버에 로그인하는 데 사용되는 공개 키와 개인 키 쌍을 나타냅니다.

키 쌍은 EC2 인스턴스에 연결할 때 필요합니다.

1. keypair 만들기

$ aws ec2 create-key-pair --key-name keysample --query 'KeyMaterial' --output text > 키페어이름.pem

2. keypair 권한 설정

chmod 400 키페어이름.pem

2-1) keypair의 내용을 확인하고 싶다면 다음 명령!

aws ec2 describe-key-pairs --key-name keysample

3-1) 해킹이 잘못되어 버린 삭제하려면 다음 명령!

aws ec2 delete-key-pair --key-name keysample

## 보안 그룹 설정

1. 그룹 생성

aws ec2 create-security-group --group-name front-end-sg --description "front-sg"

2. 그룹에 규칙을 설정합니다.

(나는 규칙을 80번 포트, 20번 포트, 0.0.0.0/0을 열어 두었다)

aws ec2 authorize-security-group-ingress --group-id 그룹아이디 --protocol tcp --port 22 --cidr 0.0.0.0/0

※ 해당 작업 전에 GroupId를 알아야 합니다.

GroupId도 보안을 유지해야 합니다.

2-1) AWS Command Line Interface(CLI)를 사용하여 보안 그룹의 그룹 ID를 확인할 수 있습니다.

aws ec2 describe-security-groups

2-2) GroupId를 삭제하고 싶다면 다음 명령!

aws ec2 delete-security-group-ingress --group-id 그룹아이디

## EC2 인스턴스 만들기

$ aws ec2 run-instances --image-id ami-0e735aba742568824
$ --count 1 
$ --instance-type t2.micro 
$ --key-name keysample 
$ --security-group-ids 그룹아이디
>> 붙혀서 사용하시면됩니다.

길어서 짤랐습니다.

. ## --image-id : ami-0e735aba742568824 AWS에서 제공하는 Amazon Linux 2 AMI(Amazon Machine Image)입니다.

Amazon Machine Image은 EC2 인스턴스를 시작할 때 사용되는 이미지로, 운영 체제와 애플리케이션 소프트웨어, 구성 설정 등이 포함됩니다.

AMI는 다양한 운영 체제 및 소프트웨어 구성으로 제공되며, 사용자는 필요한 AMI를 선택하여 EC2 인스턴스를 시작할 수 있습니다.

## --count 1 : 인스턴스 몇개만들건지 ## --instance-type : EC2 인스턴스를 시작할 때, 해당 인스턴스가 사용할 인스턴스 유형(instance type)을 지정하는 데 사용되는 옵션(t2.micro) 입니다.

## --key-name : 키 네임입니다(keysample) ## --security-group-ids : 설정된 GroupId 입니다.

실행하면 .pem 파일이 만들어집니다.

오늘은 AWS CLI(Command Line Interface)에서 사용하는 방법

조사했습니다.

마지막 부분이 조금 불충분하다고 생각합니다.

더 공부하고 더 잘라내도록 합니다.