컨텐츠 연구소/IT 서비스와 어플리케이션

[AWS] EC2 서비스의 AMIs 인스턴스를 생성하는 방법 - Bitnami Redmine AMI 설치하기

스타(star) 2015. 9. 11. 00:28

AMI 인스터스 생성하는 방법

AWS의 기능 중에서 가장 편리한 기능은 EC2라 불리우는 가상 클라우드 서버에서 손쉽게 우리가 필요로 하는 서버들을 세팅 할 수 있다는 점이었습니다. EC2에서 몇 가지 클릭을 하는 것만으로도 블로그나, 웹사이트, 프로젝트관리 툴같은 서비스들을 설치할 수 있습니다. 이러한 각각의 서비스를 인스턴스라 부릅니다.



인스턴스를 설치하기 위해서는 제일 가상서버설정인 EC2의 메뉴로 들어가야 합니다. 



EC2의 메뉴에 들어오면 다음과 같은 대쉬보드가 나타압니다. 현재 설치되어 있는 리소스나 볼륨, IP주소와 보안그룹 등의 다양한 상태들을 살펴볼수도 있습니다. 또한 새로운 인스턴스를 추가하거나 삭제하는 등의 업무를 처리할 수 있습니다. 




인스턴스 생성하기

우선 Create Instance를 눌러 인스턴스 설치를 시작합니다. 설치는 각 단계별로 이루어져 있으며, 각 단계마다 필요한 설정정을 해나가면 손쉽게 설치가 완료됩니다. Launch Instance를 누르면 Amazon Machine Image(AMI)라고 불리우는 소프트웨어를 가상 서버에 설치할 수 있습니다. AMI의 종류는 정말 다양합니다. 웹서버 뿐만 아니라, 채팅 서버와 가상 클라우드 컴퓨팅까지 다양한 것들을 지원하고 있습니다. 



1단계 : AMI 선택하기

먼저 설치하고자 하는 AMI를 찾아서 선택하기로 합니다. 아래와 같은 검색화면이 등장합니다. 



오늘 제가 설치하려고 하는 툴은 프로젝트 관리툴인 Redmine입니다. Bitnami라는 회사에서 설치용 패키지를 만들어 배포하고 있습니다. 패키지들을 보다보면 같은 AMI라고 하더라도 PV 버전이 있고 HVM 버전이 있습니다. PV AMI와 HVM AMI의 주요 차이점은 부팅 방법과 더 나은 성능을 위해 특수 하드웨어 확장(CPU, 네트워크, 스토리지)을 활용할 수 있는지 여부에 달려 있다고 합니다. 더 나은 성능을 원하면 HVM을 선택하면 되는 것입니다 .하지만, 이는 더 많은 자원을 사용하기 때문에 비용의 증가로 이어집니다. 



2단계 : 인스턴스 타입 선택

인스턴스 타입은 t1, t2, m4 등으로 나뉘어져있습니다. 쉽게 생각해서 컴퓨터의 성능이라고 생각하면 좋을 것 같습니다. 프리티어의 경우에는 월 750시간 까지 요금이 부여되지 않습니다. 하지만 프리티어일 때라고 하더라도 인스턴스를 2개 사용한다면 750+750시간을 사용 하는 것이기 때문에 요금이 부여되기 시작할 것입니다. 

t1 타입은 프리티어일 때 선택되는 타입입니다. 앞서 1단계에서 인스턴스를 설치 할 때 PV를 선택하신 경우에 이 부분만 활성화 될 것입니다. 반대로 HVM을 선택하셨다면 t2유형이 선택될 것입니다. 각 AMI의 설치 유형에 따라서 제한을 받게 됩니다. 



3단계 : 인스턴스 세부 설정

인스턴스를 세부 설정하기 위해서는 다음과 같은 설정을 기입해야합니다. 

Number of Instances : 생성할 인스턴스 개수입니다. 보통 1개를 선택하면 됩니다. 복수개의 인스턴스를 생성하려면 원하는 수치를 입력합니다. 

Purchasing option : 비활성화 되어 있습니다.

Network : 기본 그대로 선택했습니다. 

Subnet : 기본 그대로 선택했습니다. 

Public IP : IP를 할당할 수 있습니다. 우선은 기본 그대로 선택했습니다. 

IAM role :기본 그대로 선택했습니다. 

Shutdown Behavior : 설치한 운영체제가 종료했을 때의 행동입니다. Stop은 그냥 종료합니다. Terminate는 종료 후 인스턴스를 삭제합니다. STOP으로 이용하도록 합니다. 

Enable Termination protection : 삭제시 보호할 수 있도록 합니다.

Monitoring : 기본 그대로 선택했습니다. 

Tenancy : 기본 그대로 선택했습니다. 



4단계 : 저장공간 설정

저장공간을 설정합니다. 기본으로 SSD가 설정되어 있습니다만 저는 Magnetic으로 변경해서 사용하였습니다. 

Type : Root로 선택하였습니다.

Device : 장치 이름입니다.

Snapshot : 스냅샷을 생성했을 때의 스냅샷 ID입니다.

Size : 스토리지의 크기입니다. 기본으로 설정 하시면 됩니다.

Volume Type : 스토리지 볼륨 유형입니다. 

Magnetic : 하드디스크를 사용하는 스토리지입니다

General Purpose : SSD를 사용하는 스토리지입니다. Magnetic보다 추가 요금이 발생합니다.

Provisioned IOPS : SSD를 사용하는 스토리지입니다.. Magnetic보다 추가 요금이 발생합니다.

IOPS: 기본으로 선택하였습니다.

Delete on Termination : 스토리지가 실수로 삭제되는 것을 방지합니다. 



5단계 : 인스턴스 태그

태그를 선택할 수 있습니다. 태그를 넣으면 추가 차지가 발생할 수 있습니다. 



6단계 : 보안 그룹 설정

보안 그룹을 설정합니다. 별다른 설정을 하지 않고 새로운 시큐리티 그룹을 만들었습니다. 



7단계 : 인스턴스 리뷰 및 런칭

설정했던 인스턴스를 최종적으로 요약해 줍니다. 



런칭을 누르게 되면 최초 인스턴스 생성일 경우 키 쌍을 만들어 줍니다. 앞으로 비밀번호 대신으로 사용해야할 파일입니다. 해당 키쌍 파일을 잃어버리거나 삭제하면 인스턴스에 접속이 되지 않습니다. 




키쌍으로 만든 파일은 아래와 같이 pem파일로 제공됩니다. 보안 비밀번호등을 입력 받을 때마다 사용되는 키 파일이니 잃어버리지 않도록 주의합니다. 




세팅 완료

설정이 완료되면 아래처럼 생성 작업을 하게 됩니다. 오래 걸리지 않습니다. 



인스턴스가 생성 완료되면 아래와 같은 화면이 뜨게 됩니다. View Instance를 하게 되면 방금 생성한 인스턴스의 정보를 인스턴스 목록에서 볼 수 있습니다. 




인스턴스 목록을 살펴보면 정상적으로 만들어져 있습니다. Public DNS 또는 Public IP를 인터넷 주소창에 치면 방금 만든 인스턴스를 확인 할 수 있습니다. 





설치 완료

최종적으로 설치가 완료된 Redmine 의 화면입니다.