또 뭐하지

AWS 클라우드 서비스 인프라 구축 이해와 해킹, 보안 - 섹션 4 본문

I.sly()/10기 심화 - 클라우드 보안

AWS 클라우드 서비스 인프라 구축 이해와 해킹, 보안 - 섹션 4

mameul 2024. 11. 2. 11:10
728x90

섹션 4. 로드밸런싱을 적용한 워드프레스 웹 서비스 구축

프로젝트 네트워크 구성

(강의자료 어디에 있는거지..?)

 

VPC 10.0.0.0/16

- Public subnet1 10.0.0.0/24 → wordpress1

- Public subnet2 10.0.1.0/24 → wordpress2 

- 로드밸런싱

- NAT gateway

 

- Private subnet1 10.0.3.0/24 → private server

- Private subnet2 10.0.5.0/24 → database (MySQL 8.0)

 

 

실습 단계

[RDS 데이터베이스 생성]

1. VPC (Cloud_Infra_VPC)구성

2. 서브넷 4개 구성

3. 인스턴스 (wordpress_web1)  구성

4. RDS 구성 (관리되는 관계형 데이터베이스)

4-1. 파라미터 그룹 (mysql-db-pg) 생성

4-2. 옵션 그룹 (mysql-db-og) 생성

4-3. 서브넷 그룹 (mysql-db-subnet) 생성 

4-4. 데이터베이스 (mysql-db-pri01) 생성

5. 인스턴스 (wordpress_web1)에 SSH로 연결

5-1. sudo apt update, sudo apt install mysql-client

5-2. mysql 접속 : sudo mysql -u admin -p -h [엔드포인트]

5-3. mysql에 데이터베이스 구축 : create database wordpress;

 

[Public 대역에 워드프레스 구축하기]

1. 웹서버  apache

2. PHP 환경 설치

3. 파일 생성 → php, html

4. wordpress 설치 파일 다운로드 및 해제

5. wordpress와 DB와 연결을 해서 설치 페이지 접근 → 설치

 

[ALB 반영 및 웹 서비스 완성하기] 

1. 인스턴스 이미지 (wordpress_ami) 생성 : 이미지를 만들기 전에 인스턴스(wordpress_web1) 중지하고 생성할것!! → 재시작

2. 새 인스턴스(wordpress_web2) 생성 : 이미지 선택 시 내 ami 중 wordpress_ami를 선택

3. ELB를 생성하여 web1과 web2를 연결

3-1. 대상그룹(wordpress_ALB_target) 생성 : 로드 밸런싱 > 대상 그룹 에서 작업 시행

   * 새 인스턴스를 생성하고 target group에만 추가해주만 로드 밸런싱 가능

3-2. 로드밸런서(wordpress_ALB) 생성 : 로드 밸런싱 > 로드밸런서 에서 작업 시행

4. 데이터베이스 접근 : sudo mysql -u admin -p -h [엔드포인트]

4-1. use wordpress;

4-2. select * from wp_options where option_id<3;

4-3. update wp_options set option_value='로드밸런싱했던 도메인 주소' where option_id<3;

5. 다시 워드프레스에 접속해보면 깔끔하게 로드되는 것을 볼 수 있음