aws 워드프레스 구축 – 1. aws EC2/RDS 인스턴스 생성 (linux, mysql)

aws 워드프레스 구축 1. ec2 인스턴스 생성 rds 인스턴스 생성

EC2와 RDS?


aws에서 제공하는 클라우드 서비스의 상품명.

EC2는 elastics compute로 흔히 생각하는 컴퓨터를 원하는 사양으로 대여한다고 생각하면 됨.

RDS는 relational database system으로 최적화 된 RDB(mysql, oracle, postgresql 등)을 대여. 여기에 DB전문가가 수행해야 할 안정성 최적화 백업 등을 대신 수행해 줌.

대여한 각각 하나 하나의 물체를 인스턴스라고 부름.(이해를 위한 비약적 설명이니 반박금지;;)

이게 왜 필요함?


EC2는 워드프레스 서버를 가동할 인스턴스.

RDS는 워드프레스를 위한 데이터베이스 mysql을 가동할 인스턴스.

왜 나눔? 하나로 하면 안 됨?


됨.

다만 하나의 서버에서 DB와 워드프레스 둘 다 가동하면 성능에 이슈가 있을 수 있다.

이건 내가 한 말 아니고 아마존에서 한 말이야… 그러니까 믿어 (참고 : 모듈 1: RDS로 MySQL 데이터베이스 생성 (amazon.com))

처음엔 괜찮은데 나중 갈수록 느려지니 그냥 처음부터 써라!

(TMI – 두번째 이유 :  사이트가 인기를 더해감에 따라, 추가 WordPress 서버를 추가하여 WordPress를 수평적으로 확장할 수 없습니다. 에 대한 설명.

웹 서비스는 트래픽이 많아지면 아무리 고성능의 서버라고 해도 하나의 서버에서 감당하기 힘들어 짐.

따라서 여러 개의 서버에 같은 블로그를 동시에 띄워놓고 트래픽에 따라서 여긴 사람 많으니 저쪽 서버로 가~ 등의 교통정리를 해가며 운영함. (리버스 프록시, gateway, 로드밸런싱 등으로 불리움)

근데 DB가 각 블로그 서버마다 있다면? 공간 낭비에 데이터의 변동이 서로 연동되지도 않을 것임. 그래서 보통 고성능의 DB 서버는 하나에 따로 두고 블로그 서버들이 이 DB 서버에 붙어서 데이터를 활용하는 방식을 사용함.(N-tier 구조) )

EC2 인스턴스 생성하기 (linux)


우선 선행작업으로 aws 계정을 만들자!

aws 계정 새로 만들기

자세한 절차는 생략. 사용하는 메일을 인증하고, 개인 가입 정보를 기재한 후, 카드 정보를 기재하면 됨!

카드 정보는 프리티어 이상의 리소스 또는 프리티어 이외의 리소스를 사용할 때 결제를 위해 등록하는 것.

MFA 설정도 해두면 보안에 매우 좋음!

가입을 완료하고 로그인을 실시하면 다음과 같은 콘솔 화면이 나온다!

aws 콘솔 메인화면
aws ec2 인스턴스 생성 1

이제 콘솔 상단의 검색창에 ‘ec2’를 입력,

‘서비스’에서 ‘EC2’ 항목을 선택한다.

aws ec2 인스턴스 생성 리전선택

이제 ‘리전’을 선택하자!

리전은 내 인스턴스를 어디에 만들지를 선택하는 일임(난 한국 겨냥 블로그이니 서울에 만들 것)

콘솔 우측 상단에 ‘리전’을 선택할 수 있도록 되어있음.

여기서 ‘아시아 태평양 (서울)’ 선택. (우리나라는 아마존 서버가 있는 국가다 크~ 국뽕에 취한다;)

aws ec2 인스턴스 생성 인스턴스 시작

이제 본격적으로 EC2 인스턴스를 만들어보자.

좌측 메뉴에서 ‘인스턴스’-‘인스턴스’ 메뉴를 선택!

우측에 ‘인스턴스’ 화면이 로드되면 노란색 ‘인스턴스 시작’을 선택하자.

aws ec2 인스턴스 생성 상세1

이름은 자유롭게 다만 영어로 하길 적극 권장함

aws ec2 인스턴스 생성 os 선택

자 이제 OS를 선택하자. 우리는 프리티어를 사용할 수 있는 linux Ubuntu OS를 사용할 것이다.

‘Ubuntu’를 선택.

‘Amazon Machine Image(AMI)’에서 ‘프리 티어 사용 가능’이라 적힌 Ubuntu Server를 선택하자.(버전은 달라도 됨, 다만 LTS(long term support)로 받자)

‘아키텍처’는 ’64비트(x86)’을 선택!

aws ec2 인스턴스 생성 유형선택

이번엔 ‘인스턴스 유형’이다.

어떤 성능의 컴퓨터를 빌릴 지 선택하는 일인데, 프리 티어는 ‘t2.micro’ 외엔 선택지가 없음.

1 cpu에 1기가 메모리… 쩝… 그래도 서버만 가동하는데엔 충분하다~!

aws ec2 인스턴스 생성 키페어 생성

자 이제 ‘키 페어 생성’ 차례다.

키 페어 이름은 자유롭게, 다만 적극 영어 권장.

‘키 페어 유형’은 RSA로 하고,

‘프라이빗 키 파일 형식’은 .pem으로 하자.(윈도우 OS의 자체제공 openssh를 사용할 것임)

그리고 .pem과 .ppk 끼리는 자유롭게 바꿀 수 있으니 걱정 노노

‘키 페어 생성’을 누르면 파일 하나가 다운받아 질 것이다.

이 파일은 정말 중요함!!!

인스턴스에 연결할 때 필요한 열쇠다! 잃어버려도 안 되고, 노출시켜도 안 됨!

aws ec2 인스턴스 생성 네트워크 설정

이제 ‘네트워크 설정’이다.

‘보안 그룹 생성’ 선택!

‘에서 SSH 트래픽 허용’, ‘위치 무관’ 선택.(경고문이 뜨는데 우리는 위의 .pem키를 소중히 잘 다룰 것이므로 걱정하지 말자. 키만 유출 안되면 됨)

‘인터넷에서 HTTPS 트래픽 허용’ 선택.(우리는 남들이 인터넷으로 블로그에 들어와 주길 원하니 선택하자. HTTP는 선택 ㄴㄴ. HTTPS 설정도 할 것임)

aws ec2 인스턴스 생성 스토리지 구성

‘스토리지 구성’은 그대로 두자. 컴퓨터의 디스크 용량을 정하는 일인데,

어차피 우리는 mysql 서버를 활용할 것이므로 용량이 클 필요가 없다.

aws ec2 인스턴스 생성 여유공간

이미 블로그를 운영 중인 내 서버도 4기가를 채 못쓰고 있음.

aws ec2 인스턴스 생성 생성하기

‘Summary’에서 ‘인스턴스 시작’을 눌러

인스턴스를 만들자!

aws ec2 인스턴스 상태

자 ‘인스턴스’ 화면에서 방금 생성한 리눅스 OS 인스턴스가 ‘실행 중’임을 확인할 수 있을 것이다.

EC2 인스턴스 만들기 성공!

접속 테스트는 아래 링크의 방법으로 시도해보자!

RDS 인스턴스 생성하기 (mysql)


이제 워드프레스의 데이터들을 담을 RDS DB 서버(인스턴스)를 만들어보자!

aws rds 인스턴스 생성 1

aws 콘솔 검색창에 ‘rds’ 입력, ‘서비스’에서 ‘RDS’ 항목 선택!

aws rds 인스턴스 생성 2

왼쪽 메뉴에서 ‘데이터베이스’ 선택!

이후 나타나는 화면에서 노란색 ‘데이터베이스 생성’ 선택!

aws rds 인스턴스 생성 db 선택

‘데이터베이스 생성 방식 선택’은 ‘손쉬운 생성’을 선택하고

‘구성’에서 ‘MySQL’을 선택하자!

aws rds 인스턴스 생성 인스턴스 설정

‘프리 티어’ 선택! (성능이 빈약하지만 무료니까!)

붉게 표시한 부분을 자유롭게 채워주면 된다.

다만 ‘마스터 사용자 이름’ , ‘마스터 암호’는 추후 DB 서버에 접근하기 위한 계정이니 잊지말기!

aws rds 인스턴스 생성 ec2 연결

아주 꿀 기능인데, 미리 생성한 EC2 인스턴스에 데이터베이스를 연결할 수 있다.

‘EC2 인스턴스’에서 방금 생성한 워드프레스용 EC2 인스턴스를 선택하자!

(TMI – 이를 이해하려면 VPC를 알아야 하는데, 그냥 심플하게 rds와 ec2가 서로 다른 네트워크 공간에 있었는데 VPC를 활용하여 subnet으로 묶어 같은 공간 내 존재하도록 만들어 주는 역할이다.

aws vpc 개념도

아마존에서 제공한 위의 그림으로 갈음.)

이 작업을 안하면 추후에 해야 하는 작업 간단 설명

일단 네트워크 공간이 vpc임.

같은 vpc 안에 wordpress 서버와 mysql 서버가 함께 각각 존재 하도록 해야하고,

WordPress에서 mysql에 접근할 수 있도록

Mysql에서 wordpress로 접근할 수 있도록

각각의 포트 3306을 열어줘야 하고,

각 서버의 방화벽 룰(inbound(mysql측)/outbound(wordpress측) 설정)을 지정해줘야 함.

aws rds 인스턴스 생성

자 마지막으로 최하단에 있는 ‘데이터베이스 생성’을 선택하자!

aws rds 인스턴스 상태

기다리면 ‘상태’가 ‘사용 가능’으로 변경 된다!

RDS DB 인스턴스까지 생성을 완료했다!!!

마치며…


잘 따라오셨는가?

왜 비전공자들이 aws와 wordpress를 어려워하는지 십분 이해되는 내용들이 가득하다.

그래도 빠짐없이 해야 하는 작업을 캡처하여 안내하였으니 따라만 하면 된다!

이제 EC2 인스턴스와 RDS DB 인스턴스를 생성했으니

다음에는 EC2 인스턴스에 워드프레스를 설치하며 mysql db에 연동하는 방법을 안내하겠다.

이전글

다음글


Posted

in

, , ,

by

Comments
  1. RonaldEvaby 아바타
    RonaldEvaby

    FlipBooks are a great addition
    to any passive income strategy. Because once you create a FlipBook, market it, share it & Earn it, it can technically sell itself.

    Learn More https://www.youtube.com/watch?v=JfRrd79oCfk?17197

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다