아마존 웹 서비스(AWS) RDS 구축하기 - MySQL Database아마존 웹 서비스(AWS) RDS 구축하기 - MySQL Database

Posted at 2014.04.20 16:20 | Posted in == Cloud ==/AWS



facebook에 글올리기



아마존 웹 서비스(AWS) RDS (DB) 구축하기


앞에서 AWS의 가입부터 EC2 구축, 그리고 Apache, PHP, MySQL 설치에 대해 포스팅했다.



아마존 웹서비스(AWS) 구축하기 - 가입


아마존 웹 서비스(AWS) EC2 생성 및 Security Group 설정


아마존 웹서비스(AWS) EC2 접속 Putty


아마존 웹 서비스(AWS) EC2 파일 전송 FileZilla


아마존 웹 서비스(AWS) Ubuntu에서 PHP, MySQL, phpMyAdmin 설치



위에서는 MySQL 을 EC2에 설치하여 사용하였지만, AWS는 데이터베이스 서버인 RDS 를 지원한다.


물론 EC2에 같이 설치해서 웹서버와 동일 서버로 운영해도 된다.


하지만 RDS를 사용하면 장점들이 많이 있다.


(1) 여러가지 환경셋팅(config)들을 쉽게 할 수 있다.


EC2에 MySQL을 설치하여 운영하면, 여러 환경셋팅들을 vi 편집기를 들어가서 직접 해줘야 한다.

하지만 RDS를 사용하면 환경셋팅을 마우스 클릭만으로 할 수 있다.


(2) RDS는 데이터 백업, 유지보수등을 지원한다.


RDS를 사용하면, 데이터의 주기적인 백업 및 유지보수 작업들을 지원한다.

(물론 돈이 더 나간다.)


(3) EC2에 같이 설치하여 운영하는 것보다 보안에 더 강하다.


아무래도 EC2는 사용자들이 접근하는 웹서버이기 때문에 DB가 바로 노출되어 있는 것은 보안상으로 취약할 수 있다.

RDS 를 구축하고 EC2에서만 RDS를 접근할 수 있게 설정하면 보안 관리도 강화된다.



이런 여러 장점들이 있기에 RDS를 구축하면 DB 관리를 더 쉽고 편리하게 할 수 있다.


추가 과금이 발생한다는 것은 고려해야 할 것이다.



지금부터 RDS를 생성해보겠다.



AWS Services 에서 RDS를 선택하자.



아래와 같이 Dashboard가 뜬다.



Launch a DB Instance 버튼 클릭


아래와 같이 설치할 수 있는 DB 목록이 나온다.


최근에 postgres도 추가되었다. 



MySQL 을 설치할 것이므로, MySQL Select



Multi-AZ Deployment 에 대한 설정입니다.


Multi-AZ는 DB의 가용성을 높이기 위한 설정으로 


Yes를 선택시 생성한 DB Instance의 복제본을 아마존이 유지합니다.


원본에 문제가 발생시 예비 복제본으로 변경하는 작업을 쉽게 해줍니다.


이것을 YES로 설정하면 추가 과금이 발생합니다.


여기서는 No로 설정하겠습니다.


이제 DB Instance 설정입니다.


License Model : MySQL이 오픈소스이기에 특별히 선택할 항목이 없습니다.


DB Engine Version : MySQL의 버전을 선택합니다.


여기서는 최신 버전인 5.6.13 을 선택했습니다.


DB Instance Class : AWS RDS 상품을 선택합니다.


아래로 갈수록 더 좋은 성능을 제공하며, 당연히 요금 또한 비싸집니다.


여기서는 가장 저급 성능인 db.11.micro 를 선택했습니다.


Multi-AZ Deployment : 앞에서 "No"를 선택했으므로 No로 되어있습니다.


Auto Minor Version Upgrade : MySQL의 마이너 버전이 나오면, 자동으로 업그레이드 시켜주는 항목입니다.


보통 마이너 버전의 업그레이드는 크게 영향이 없으므로 YES를 선택했지만, 불안하신 분들은 NO로 선택하시면 됩니다.


Allocated Storage : DB의 용량을 지정합니다. 최소 5G 에서 최대 3072G 까지 설정 가능합니다.


Use Proovisioned IOPS : IOPS(Input/Output Operations Per Second)는 초당 I/O 작업 수입니다.

이 항목을 체크하면 IOPS를 추가적으로 할당하여 성능이 향상됩니다. (추가 요금 발생)


DB Instance Identifier : DB 인스턴스의 이름 입력


Master Username : DB 유저명 입력


Master Password : DB 유저 비밀번호 입력



Next Step 클릭



이제 DB 설정입니다.



Database Name : 생성할 DB의 이름을 입력합니다.


Database Port : 3306  MySQL 기본 포트로 3306을 하면 됩니다.


Choose a VPC : Default로 하면 됩니다.


DB subnet Group : subnet 그룹 역시 특별히 구축하지 않으면 default로 하면 됩니다.


Publicly Accessible : 공개 접근 여부, DB 접속 관리를 위해 Yes로 했습니다.


Availabilty Zone : 아무거나 선택해도 됩니다.


Option Group : option group을 설정하지 않았으면 default로 하면 됩니다.


Parameter Group : MySQL의 config 값들을 지정한 Parameter Group을 지정합니다. Default로 합니다.


VPC Security Group : DB 접근을 위한 Security Group을 지정합니다. default로 합니다.


Next Step 클릭


이젠 백업 설정입니다.



Enabled Automatic Backups : Yes는 주기적으로 백업 시행, No는 백업 안합

(Yes 과금 발생)


Backup Retention Period : 백업 보관 기간 (보관 기간이 길어질 수록 추가 과금 발생)


Backup Window : 백업 시간 설정, 백업시간에 머신의 퍼포먼스가 떨어질 수 있음


Maintenance Window : 시스템 점검, 유지보수 시간 설정


Enabled Automatic Backups 를 "No"로 설정하면 아래와 같이 화면이 나옵니다.


여기서는 백업과 유지보수 전부 No로 설정하고 Next Step으로 넘어가겠습니다.



앞의 설정내용을 종합해서 보여줍니다.


이상없다면 Launch DB Instance 클릭



DB 생성 완료



Instance 메뉴에 가면 새로운 DB가 생성된 것을 볼 수 있습니다.


DB 접근 및 사용을 위해서는 Security Group에서 설정을 해줘야 합니다.



Security Group은 앞에서 default로 설정했기에, default 에 Inbound로 MySQL 3306 포트를 열어주거나,


새로운 Security Group을 생성하여 새로 생성한 RDS 인스턴스에 설정해주면 됩니다.


Security Group 생성 및 설정은 아래 포스팅을 확인하면 됩니다.


아마존 웹 서비스(AWS) EC2 생성 및 Security Group 설정



Security Group을 새로 생성하였다면 RDS 인스턴스에 설정해줘야 합니다.



RDS 인스턴스에서 돋보기 아이콘을 클릭하면 아래와 같이 인스턴스의 정보가 나옵니다.



Security Groups를 확인하면 현재 설정된 Security Groups를 확인할 수 있으며,


수정이 필요하면 Instance Action 에서 Modify 를 클릭합니다.



DB 인스턴스 정보를 수정할 수 있는 화면이 나옵니다.



Security Group 외에 다른 항목도 수정이 가능합니다.


Security Group을 원하는 것으로 선택하고 Continue를 누르면, 수정이 됩니다.


시간이 조금 걸려서 적용되기는 하지만, 깔끔하게 인스턴스를 리부팅해주는 것도 좋습니다.




인스턴스에서 돋보기 버튼을 눌러서 상세정보를 확인 하면


Endpoint가 있다.


XXXXXXXXXX.amazonaws.com:3306 


Endpoint가 RDS DB의 접근 주소이다.


토드나 다른 프로그램으로 접속시 :3306 이 주소가 되며 3306이 포트번호가 된다.


[MySQL] Toad for mySQL 접속



RDS 구축 완료





저작자 표시 비영리 변경 금지
신고
이웃추가
facebook에 글올리기

Name __

Password __

Link (Your Website)

Comment

SECRET | 비밀글로 남기기

티스토리 툴바