이렇게 VPC 안에 두개의 가용영역을 둬 각각 public, private subnet을 두고자 한다.
리전은 버지니아 북부
VPC를 생성한다.
네개의 서브넷을 생성한다.
인터넷 게이트웨이를 생성한다.
인터넷 게이트웨이를 VPC에 연결한다.
private 서브넷을 선택해 NAT 게이트웨이를 두개 생성한다.
라우팅 테이블을 확인해보면 자동으로 생성된 것을 볼 수 있다.
현재는 로컬만 활성화되어있는데, 인터넷 게이트와 연결이 되어야 외부와의 접속이 가능해진다.
서브넷 연결도 해줘야한다.
퍼블릭 서브넷 두개를 선택해 연결한다.
두개의 서브넷에서 외부로 나가는 모든것은 인터넷게이트웨이를 통하도록한다.
이제 private 서브넷을 위한 라우팅 테이블을 만든다.
private subnet1을 선택한다.
대상은 nat 게이트웨이1을 선택한다.
private2 라우팅 테이블 생성
private subnet 2 선택
라우팅 편집 - nat 게이트웨이2를 대상으로 선택
이렇게 public subnet을 연결한 라우팅 테이블(인터넷게이트웨이에 연결) 1개,
private subnet 들을 연결한 라우팅 테이블(nat 게이트웨이에 연결) 2개
총 3개의 라우팅 테이블이 만들어졌다.
웹서버를 위한 보안 그룹을 생성한다.
db server를 위한 보안 그룹도 생성한다.
이 때 웹서버에서 디비서버에 접속할 수 있도록 소스를 아까 생성한 보안그룹으로 선택한다.
DB subnet 그룹 생성
RDS - 서브넷 그룹
두개의 가용영역과 두개의 private 서브넷을 선택한다.
Web Server 만들기
인스턴스 생성
키 페어 파일이 있는 디렉토리에서 Git Bash를 실행한 후 아래 명령어를 실행해 연결한다.
ssh -i "[키페어].pem" ec2-user@[IP주소]
sudo yum update -y
sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl is-enabled httpd
/var/www 아래 html의 소유권 변경
/var/www 아래 inc 폴더 생성 및 소유권 변경
/var/www/inc 폴더에 dbinfo.inc 파일 작성
<?php
define('DB_SERVER', 'endpoint');
define('DB_USERNAME', 'tutorial_user');
define('DB_PASSWORD', 'master password');
define('DB_DATABASE', 'sample');
?>
RDS 인스턴스 생성
템플릿은 프리티어선택
데이터베이스 생성
php 파일 작성
dbinfo.inc 수정
퍼블릭 IP 주소/SamplePage.php 접속시
화면이 뜬다.
'DEVOPS > CLOUD' 카테고리의 다른 글
[GCP] VM, Cloud Functions 실습 (0) | 2022.12.02 |
---|---|
[Azure] 가상 머신 만들기 (0) | 2022.12.02 |
[AWS] 네트워크 (VPC, 서브넷 ..) 개념 정리 (0) | 2022.10.27 |
[AWS] 데이터베이스(RDS, Amazon Aurora, DynamoDB) (0) | 2022.10.27 |
[AWS] 클라우드 스토리지 - S3, EBS (0) | 2022.10.27 |