명령어로 AWS 구축과 운영해보자.
VPC는 구성된상태에서 서버를 만드는 과정을 알아보자.
우선 AWS CLI로 시작해보자.
절차와 실행 방법을 알아보자.
절차
<1> AWS API계정생성, 권한 할당
<2> PC에 AWS CLI설치하기
<3> PC에서 AWS 환경 설정하기
<4> PC에서 AWS CLI로 서버 만들기
<5> AWS CLI 사용포트
<6> 연관 자료
<1> AWS API계정생성, 권한 할당
1. API계정을 만들어 해당 계정으로 운영한다.
2. AWS Consol login > IAM > 이름 : seo-api > Programmatic access(API계정)을 만든다.
// admin 그룹.
3. access-key와 secret-key를 잘 보관한다.
// 여기서는 테스트라 admin권한을 제공한다. 일반적으로는 필요한 권한만 부여한다.
<2> PC에 AWS CLI설치하기
설치된 경우
C:\> aws --version
aws-cli/1.18.16 Python/3.6.0 Windows/10 botocore/1.15.16
설치법
1. Windows에서 aws cli 설치하기
https://aws.amazon.com/ko/cli/
https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/install-windows.html
2. linux에서 설치하기
1) Linux OS
[root@ip-10-10-0-107 ~]# yum install python-setuptools
[root@ip-10-10-0-107 ~]# easy_install pip
[root@ip-10-10-0-107 ~]# pip install awscli
[root@ip-10-10-0-107 ~]# aws --version
aws-cli/1.15.60 Python/2.7.5 Linux/3.10.0-862.el7.x86_64 botocore/1.10.59
awscli 업데이트하기
[root@ip-10-10-0-107 ~]# pip install -U awscli
[root@ip-10-10-0-107 ~]# aws --version
aws-cli/1.15.76 Python/2.7.5 Linux/3.10.0-862.el7.x86_64 botocore/1.10.75
<3> PC에서 AWS 환경 설정하기
다운로드 받은 seo-api 계정에 대한 access-key, secret-key를 확인한다.
aws configure로 환경 설정한다.
C:\> aws configure
AWS Access Key ID [****************LLJU]: AKㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌ
AWS Secret Access Key [****************c7rㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌㅌ
Default region name [ap-northeast-2]: <enter>
Default output format [None]: <enter>
<4> PC에서 AWS CLI로 확인한다.
C:\> aws s3 ls
s3 스토리지는 없으므로 아무것도 안나온다.
VM 인스턴스 만들어보자.
1) 서버 만들기 위해 명령어 실행
# aws ec2 run-instances --image-id <ami-id> --user-data file:///root/UserData.txt --key-name <key-name> --security-group-ids <sg-id> --instance-type t2.micro --subnet-id <subnet-id> --associate-public-ip-address --query 'Instances[*].InstanceId'
aws ec2 run-instances --image-id ami-3eee4150 --key-name game-web --security-group-ids sg-0bae2f6ea892578ef --instance-type t2.micro --subnet-id subnet-06242e7910cb2a384 --associate-public-ip-address --query 'Instances[*].InstanceId'
1. image-id
어떤 인스턴스 타입으로 만들지 확인한다.
c:\> aws ec2 describe-images
ami-3eee4150
2.key-name
접근하기위해 pem키도 만든다.
aws ec2 create-key-pair --key-name game-web
C:\Users\jasmin92>echo -e "-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEAqQzRnuUF1/l3v49IjVoBHHtCg006dPobq+yKRC3pfzCgQ4PuW33p4Vz+U=\n-----END RSA PRIVATE KEY-----" > game-web1.pem
3. security-groups-ids
vpc를 확인한다.
aws ec2 describe-vpcs
vpc-0345d3fa42e23a970
VPC 참고 사이트
https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpcs.html
aws ec2 create-security-group --description "ssh" --group-name ssh --vpc-id vpc-0345d3fa42e23a970
{
"GroupId": "sg-0bae2f6ea892578ef"
}
C:\>
aws ec2 authorize-security-group-ingress --group-id sg-0bae2f6ea892578ef --protocol tcp --port 22 --cidr 0.0.0.0/0
4. instance-type
t2.micro
5. subnet-id
aws ec2 describe-subnets
subnet-06242e7910cb2a384
<5> AWS CLI 사용포트
TCP 443 포트
https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/cli-chap-using.html
<6> 연관 자료
AWS CLI로 VPC 만들기 https://brunch.co.kr/@topasvga/747
AWS CLI로 서버 만들기 https://brunch.co.kr/@topasvga/872
AWS CLI로 서버 생성법 https://brunch.co.kr/@topasvga/345
테라폼으로 VPC 만들기 https://brunch.co.kr/@topasvga/780
감사합니다.