VPC 생성 후 하나는 Public 하나는 Private 서브넷을 생성하여 BastionHost(Public)로 만들어 Private 서브넷에 접속하기
1)먼저 VPC를 생성한다.
가용영역은 1개로 설정하였다.
2) 키페어와 보안그룹을 먼저 생성해 주었다.
키페어는 .pem 으로 만들고 보안그룹은 퍼블릭 및 프라이빗 각 하나씩 만들어서 퍼블릭은 client(내pc)에서 접속 할 수 있도록 프라이빗은 배스천호스트를 통하여 접속할 수 있도록 인바운드 규칙을 생성
3) 각 Public & Private 서브넷을 생성한다.
미리 만들어둔 기존 키 페어를 사용하고 각 보안그룹 별에 맞춰서 저장한다.
4) Xshell을 통해 ssh에 접속한다.
##1번 접속방법
cd .ssh
vim id_rsa ← 키 페어 내용을 복사/붙여넣기
chmod 400 id_rsa ← id_rsa 의 권한을 변경한다.
ls -l
ssh ec2-user@10.0.136.160
##2번 접속방법
ssh -J ec2-user@10.0.10.39 ec2-user@10.0.136.160
(Jump명령어를 사용하여 퍼블릭를 점프하여 바로 프라이빗에 접속)
하나의 배스천호스트를 통해 RDS DB에 접속해 보기
1) 먼저 서브넷을 생성하고 RDS에서 서브넷 그룹을 생성한다.
(데이더베이스를 프라이빗 서브넷에 넣기 위해)
2) 보안그룹도 미리 생성하고 데이터베이스를 생성한다.
(보안그룹 생성 시 MySQL/Aurora 3306포트를 액섹스 허용한다.)
3) Xshell을 통해 mariadb설치 및 db에 접속한다.
(접속 시 데이터베이스에서 설정했던 마스터 사용자 이름과 암호를 사용)
sudo yum install mariadb
mysql -h (db도메인이름) -u (마스터 이름) -p
암호 입력
시작 구성과 시작 템플릿으로 구성할 수 있는데 시작 구성은 많이 사용하지 않는 서비스로 시작 템플릿을 구성해보자
1) 시작 템플릿 구성에 필요한 인스턴스 생성
(시작 템플릿 구성에 필요한 이미지 생성을 위해)
#!/bin/sh
yum install -y httpd
systemctl start httpd
systemctl enable httpd
HOSTNAME=`hostname`
echo "<h1> ${HOSTNAME} </h1>" > /var/www/html/index.html
[사용자 데이터]에 shebang을 통해 인스턴스 생성 시 미리 httpd가 설치및 활성화될 수 있도록 정의한다.
2) 시작 템플릿 생성
3) AutoScaling 그룹생성
(그룹크기에서 원하는 용량은 유지할 인스턴스 수, 최소용량은 스케일링할 때 최소로 줄일 수 있는 인스턴스 수, 최대용량은 스케일링할 때 최고로 늘릴 수 있는 인스턴스 수 이다.) 대상 값은 50을 주었다.
4) CPU사용량에 따른 AutoScaling 확인하기
먼저 명령어를 사용하여 CPU의 사용량을 늘려주었다.
sha256sum /dev/zero
5) 시간이 경과에 따른 상황을 CloudWatch모니터링에서 확인해 보았다.
(CPU사용량이 증가하고 대상 값 이상이 되자 인스턴스의 수가 증가하였다.)
6) 반대로 CPU의 값을 감소시켜보았다.
(명령어를 중지) CPU의 사용량이 감소하고 있는 것을 확인할 수 있었다.