Seoul Region에서 구성을 시작합니다.
제공되는 LAB 환경에서 VPC Lattice의 편리한 구성을 위해, 아래와 같이 IAM user와 Password, Policy를 cloudshell에서 구성합니다. (User ID는 변경가능합니다.)
Cloudshell 터미널에서 아래 aws cli script를 실행합니다.
Copy # user01 사용자를 생성하고, password는 "1234Qwer", IAM Policy는 "AdministratorAccess" 권한을 부여합니다.
aws iam create-user --user-name user01
aws iam create-login-profile --user-name user01 --password 1234Qwer --no-password-reset-required
aws iam attach-user-policy --user-name user01 --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
IAM User Policy : AdministratorAccess
LAB 구성의 편의성을 위해 Cloudshell 터미널에서 AWS Account Alias를 생성하기 위한 awscli를 실행합니다. (alias는 고유한 값을 입력해야 합니다.)
Copy aws iam create-account-alias --account-alias xxxxxx
생성이 모두 완료되었으면, AWS Console에서 Logout 한 이후에 재접속해서 "user01"로 접속합니다.
이제 콘솔에서 선택하고, 다시 cloudshell을 실행합니다.
앞서 생성한 Alias로 접속하고, 새로운 User로 인증해서 로그인 합니다.
정상적으로 접속하면, 다시 CloudShell을 사용해서 , VSCode Server를 구성합니다.
Copy # 아래 git을 cloudshell에 복제합니다.
git clone https://github.com/whchoi98/ec2_vscode.git
VSCode Server 구성
CloudShell에서 VSCode 서버를 구성하기 위한 환경 변수를 정의합니다. VSCode Server는 Default VPC, Public Subnet에 설치합니다.
Copy source ~/.bash_profile
export AWS_REGION=ap-northeast-2
~/ec2_vscode/defaultvpcid.sh
source ~/.bashrc
Cloudshell에서 Cloudformation 을 배포해서 VSCode 서버를 구성합니다.
Copy aws cloudformation deploy \
--template-file "~/ec2_vscode/ec2vscode.yaml" \
--stack-name=ec2vscodeserver \
--parameter-overrides \
InstanceType=t3.xlarge \
AMIType=AmazonLinux2023 \
DefaultVPCId=$DEFAULT_VPC_ID \
PublicSubnetId=$PUBLIC_SUBNET_ID \
--capabilities CAPABILITY_NAMED_IAM
10분 이후 VSCode 서버가 생성됩니다.
cloudshell 에서 아래 Shell을 실행시켜, vscode server의 Public IP를 확인하고, VSCode에 접속합니다.
Copy ~/ec2_vscode/vscode_ip.sh
아래는 출력예입니다.
Copy $ ~/ec2_vscode/vscode_ip.sh
EC2VSCodeServer = 15.165.36.130
CodeServer Connect = 15.165.36.130:8080
해당 VSCodeServer 공인 IP 주소로 접속합니다.
Copy EC2SVSCodeServer:8080
EC2가 완전하게 배포된 후 3~5분 뒤에 브라우저에서 EC2VSCodeServer PublicIP:8080으로 접속합니다.
EC2VSCodeServer Terminal에서 아래를 실행합니다.
Copy git clone https://github.com/whchoi98/ec2_vscode.git
VSCodeServer는 패스워드 설정이 되어 있지 않습니다.
비밀번호 설정을 확인하고, 적절한 비밀번호로 변경한 후 다음 스크립트를 실행합니다.
Copy cat ~/ec2_vscode/vscode_pwd.sh
~/ec2_vscode/vscode_pwd.sh
이제 다시 브라우저에서 재접속합니다.
이 랩의 모든 콘솔은 VSCode Server 터미널에서 수행합니다.
패스워드 설정 후에 VSCode Server에서 아래를 수행합니다.
Copy #LAB에서 사용할 Shell Script를 복제하고, 환경변수를 설정합니다.
mkdir ~/environment/
cd ~/environment/
git clone https://github.com/whchoi98/vpclattice.git
#LAB에서 사용할 패키지를 다운로드 받고, 설치합니다.
~/environment/vpclattice/cloud9/init.sh
source <(kubectl completion bash)
VPC Lattice LAB에서 사용할 환경 변수와 Cloudformation을 수행합니다.
Copy #LAB에서 사용할 환경변수를 설정합니다.
~/environment/vpclattice/cloud9/lattice_env.sh
source ~/.bash_profile
#LAB에서 사용할 Cloudformation을 실행합니다.
cd ~/environment/vpclattice/cloudformation
aws cloudformation deploy \
--stack-name "latticebaseinfrawithapiserver" \
--template-file "./LatticeBaseInfraWithAPIServer.yaml" \
--capabilities CAPABILITY_NAMED_IAM