안녕하세엽
저번시간에는 BeansTalk를 소개하는 포스팅을 했는데, 이번에는 직접 구성하는 시간을 갖도록 하겠습니다.
AWS Console 환경에서 구성할것이며, 이미 계정이 있고 사용한 이력이 있다는 전제하에 설명하겠습니다
첫째로 AWS Console에 로그인합니다.
로그인을 하면 많은 서비스가 보이는데 Compute 항목의 Elastic Beanstalk를 클릭합니다.
클릭하여 들어가면 웰컴페이지가 나오며 그쪽에서 오른쪽 위 Create New Application 을 클릭합니다.
팝업창이 나타나면
1. Applicarion Name: 기본 수행할 프로젝트의 이름
2. Description: 설명(대충씀)
3. Tags: 나중에 참고할 태그(이거는 전 안썻습니다)
작성 후 Create 버튼을 누릅니다.
프로젝트가 생성되면 Create one Now를 클릭하여 새로운 환경을 구성합니다.
저는 웹 사이트를 만들예정이기에 Web server environment를 합니다.
다음은 환경 구성 설정 화면인데 윗부분 Environment information 은 그대로 두고 Base configuration 에서 탐캣을 선택합니다. 또한 소스파일은 나중에 넣을 예정이기에 Sample application을 선택하고(기본) Configure more options를 클릭합니다. Create environment를 클릭하게 되면 가장 기본적인 서버 구성으로 생성되게 됩니다.
저는 가장기본적은 Low cost를 선택하여 구성할 것이며, 여기서 RDS(DB)만 추가 할 것입니다.
High availbality 는 이중화 이상을 구현할때 쓰는 옵션이며 추가로 ELB 설정을 할 수 있습니다. 또한 오토스케일링옵션 으로 자동 증가 또는 축소 기능을 사용할 수 있습니다.
DB는 가장 기본적인 mysql에 모두다 디폴트로 가장 저렴한 버전으로 구성했습니다. 입력할 부분은 Username과 password 부분입니다. 작성 후 Save를 하고 Create environment 버튼을 눌러 환경을 생성합니다.
생성을 하면 생성 하는 프로세스가 커맨드 창에 나타나며 작업을 수행합니다. 이 기능은 cloud formation의 기능과 같다고 생각하면 됩니다. 다음에 이 구성 그대로 다른곳에 복사해서 생성할 수 있습니다. (DB생성이 가장 오래걸리기 때문에 대략 생성까지 10분이상 소요됩니다. DB구성만 빼면 5분이내로 생성됩니다)
나무가 자라나고 있습니다!
생성이 완료 된 후 생성된 인스턴스들을 확인해 보겠습니다.
기본적으로 BackEnd 작업이 처리될 ec2 서버 , 디비서버, 각 인스턴들과의 연결고리를 정의하기 위한 보안그룹이 생성되었습니다.
이제 하나의 웹서비스를 할 수 있는 서버가 모두 구성되었다고 볼 수 있습니다.
마지막으로 로컬에서 Mysql Workbench를 통해 DB에 접속하는 테스트를 하겠습니다.
현재는 DB접속이 EC2에서만 가능하도록 설정되어 있기 때문에 로컬에서 접속 가능하도록 보안그룹(Security Group)의
InboundRule을 수정합니다(로컬 IP추가)
1. aws 서비스에서 rds를 검색 후 페이지로 들어가서 방금생성한 DB 인스턴스를 클릭합니다.
2. Security 항목에서 type이 EC2 Security Group - Inbound 클릭
3. 아래 inbound 탭으로 들어가 Edit 클릭
4. 팝업 화면에서 아래와 같이 추가 후에 Save 합니다.
이제 워크밴치에서 접속 테스트를 할 수 있습니다.
RDS의 EndPoint를 입력 후에 아이디와 비번을 입력하면 로컬에서 DB서버로 접속할수 있습니다.
지금까지 Beanstalk로 서버와 DB를 구성하고 로컬에서 DB에 접속하는것 까지 테스트 하였습니다.
다음 시간에는 이클립스에서 직접 프로젝트를 새로 생성해서 개발을 하고 WAR파일로 배포하는 단계까지 해보겠습니다.
감사합니다.