AWS EC2 인스턴스를 사용하면, 직접 서버를 설정하고 원하는 환경으로 웹사이트를 구축할 수 있다. 여기에 WordPress를 설치하면 쉽게 홈페이지나 블로그를 운영할 수 있다. 외부 도메인을 연결해본 뒤, 완성된 웹 사이트를 만들어 보자. 천천히 따라하면 금새 나만의 사이트를 구축할 수 있을 것이다.
AWS 회원 가입
먼저 AWS 계정이 필요하다. 신용카드와 전화번호 인증이 있어야 하니 준비하고 아래 포스트를 따라서 계정을 생성하자.
EC2 인스턴스 생성
EC2 대시보드로 이동
AWS 콘솔에서 EC2 서비스를 선택한다.

인스턴스 시작 버튼 클릭
EC2 인스턴스는 지역에 따라 서버 위치가 달라지므로, 서비스하고자 하는 지역에 가까운 곳으로 지정한다.
EC2 대시보드 화면 중간에 인스턴스 시작을 찾아 클릭한다.

인스턴스 정보 입력
인스턴스의 이름을 입력하고, 애플리케이션 및 OS 이미지에 “WordPress Certified”를 입력하고 엔터를 누른다.

설치 이미지 선택
AWS Marketplace AMI 탭에 보면 설치가능한 여러 AMI(Amazon Machine Image)가 표시된다.
리뷰가 많고 별점이 높은 “WordPress Certified by Bitnami and Automattic”을 선택하면 무난하다.
그리고 “인스턴스 시작시 구독”을 클릭한다.

인스턴스 유형 선택
계정을 새로 생성했을 때 1년간 사용료가 무료인 프리티어가 가능하다.
프리티어는 보통 t2.micro, t3.micro가 가능하지만 서버지역마다 프리티어 가능한 인스턴스 유형이 다르므로, 참고하여 선택한다.




키페어 생성
추후 인스턴스에 SSH 접속하기 위해서 꼭 필요한 키페어를 생성하고 다운로드창이 뜨면 잘 찾을 수 있는 폴더에 저장한다.

스토리지 구성
스토리지는 SSD 30GiB까지 프리티어로 사용가능하다.
파티션을 나눠쓸 필요 없으니, 하나의 구성으로 30GiB로 입력한 뒤, 오른쪽에 인스턴스 시작을 클릭한다.

인스턴스 확인
인스턴스가 시작하고 “성공, 인스턴스를 시작했습니다”라는 문구가 뜰 때까지 기다렸다가 EC2 대시보드로 가보면 시작된 인스턴스가 보일 것이다.


인스턴스 설치 완료
퍼블릭 IPv4 주소나 퍼블릭 IPv4 DNS 주소로 접근하면 설치된 WordPress 홈페이지에 접속할 수 있다.

admin 계정으로 로그인
주소창뒤에 “/wp-admin” 이라고 입력하고 엔터를 누르면 로그인 창이 보인다.
로그인 정보는 EC2 인스턴스의 시스템 로그에 기록되어 있다.


다시 EC2 인스턴스로 돌아가 해당 인스턴스의 체크박스를 선택하고
작업>모니터링 및 문제 해결 > 시스템로그 가져오기를 선택하면, ID, PW 정보가 있는 시스템 로그를 볼 수 있다.
ID: ‘user’, PW: ‘3.Y!QnpTx07y’를 확인하고 로그인해보자.


로드밸런서 설정
대상그룹 생성
EC2 대시보드 아래에 로드밸런싱 카테고리에 대상그룹을 선택하고, 대상그룹 생성 버튼을 클릭한다.

대상그룹 이름을 입력하고, 다음으로 넘어가자.

사용가능 인스턴스의 체크박스를 선택한뒤, 포트는 80 포트만 입력하고, “아래에 보류 중인 것으로 포함”을 선택한다.
(스크린 샷에는 433포트도 입력했으나, 80포트만 입력하자.)

대상 그룹 생성을 클릭하여 대상 등록을 완료한다.

로드밸런서 생성
로드밸런싱 카테고리에서 “로드밸런서”를 선택하고, “로드 밸런서 생성”을 클릭한다.

로드밸런서 유형에서 “Application Load Balancer”를 선택하여 생성하자.

로드 밸런서의 이름을 입력한다.

네트워크 매핑에서는 아래 보이는 영역중에 최소 2개이상의 가용 영역을 선택해야 한다.

보안 그룹에서는 default와 WordPress로 시작하는 그룹을 모두 선택한다.

리스터 및 라우팅에서는
“80”포트에서 앞서 생성한 대상그룹으로 전달하도록 선택한다.

리스너 추가를 클릭한 뒤, 프로토콜은 HTTPS를 선택하고, 포트가 443으로 지정되는지 확인한 뒤, 대상 그룹을 선택한다.

인증서를 선택해야 하는데 인증서가 없다면 “새 ACM 인증서 요청”을 클릭하여 인증서를 발급아야 한다.

도메인이 Route53에 등록이 되어 있다면 퍼블릭 인증서를 요청하여 받으면 되지만,
도메인이 Route53에 등록되어 있지 않다면, Route53에 먼저 도메인 등록을 해야 한다.
Route53에 도메인 등록하는 방법은 아래 포스트를 참고 하자.
Route53에 도메인 등록이 되었다면
인증서 생성 화면으로 돌아가서 도메인을 입력하면 인증서가 요청된다.
“Route 53에서 레코드 생성”을 클릭하여 도메인을 인증하자.

그러면 레코드 확인 후 아래와 같이 인증서가 발급 될 것이다.

인증서 생성이 완료 되면 EC2 로드밸런서 생성화면으로 돌아가서 해당 인증서를 선택하고 “로드밸런서 생성”을 클릭하여 로드밸런서 생성한다.
HTTP:80 리디렉션 설정
마지막으로 HTTPS로 접속되도록 하기 위해 “HTTP” 80포트로 접근할 때 HTTPS:443포트로 리디렉션되도록 설정해야 한다.
로드밸런서에서 리스너 규칙의 HTTP:80 항목을 선택한 뒤 리스터 관리 > 리스너 편집에 들어간다.

HTTP:80 항목에서 “URL로 리디렉션” 선택, “전체 URL”을 선택한 뒤 변경 내용을 저장하자.

CloudFront 설정
최종적으로 HTTPS로 접속을 할 수 있도록 SSL 인증서와 함께 CloudFront 설정을 하면 된다.
아래 포스트를 따라하면서 CloudFront 설정까지 마치도록 하자.
중간에 "기본값 루트 객체”에 홈페이지 접속 시 사용할 “index.html”을 입력해주고 “배포 생성”을 클릭해준다.
항목이 있는데, EC2 서버로 접속할 경우 비워두면 된다.
위 포스트의 마지막 Route53 설정까지 마쳤다면, 모든 설정이 배포 되기를 잠시 기다리면 된다.
이제 도메인 주소로 WordPress 웹페이지에 접속이 가능하니, 홈페이지나 블로그를 잘 운영해 보자!