금요일, 8월 28, 2015

No Comment
AWS를 이용해서 빠르게 웹서비스를 구축하는 방법에 대해 알아보려 한다. 스타트업, 중소기업, 대기업 등을 통틀어 직접 데이터 센터를 구축해서 직접 서비스를 구축해 간다는 것이 여간 어려운게 아니다. 또한 어렵게 구축을 했어도 유지하는 비용이 만만찮다.
다행스럽게도 아마존에서 AWS를 통해서 많은 고통스런 과정들을 제거해 주어서 우리는 쉽고 간단하게 우리가 원하는 Web Service를 구축할 수가 있다.

AWS에는 실로 많은 서비스들이 존재하고, 지금도 계속 추가되고 있는 중이다. 우선 그 중에서 핵심이 되는 EC2, RDS, S3를 가지고 간단한 웹서비스를 구축해볼 예정이다.
그 첫번째로 EC2에 대해서 알아볼 예정이고, 직접 Linux Command Line에 접속해서 Web Server를 설치하고 설정을 할 예정이다.

EC2를 AWS에서는 아래와 같이 설명하고 있다.
“EC2(Elastic Compute Cloud)는 클라우드에서 컴퓨팅 파워의 규모를 자유자재로 변경할 수 있는 웹 서비스입니다. 개발자가 보다 쉽게 웹 규모의 클라우드 컴퓨팅 작업을 할 수 있도록 설계되었습니다.
Amazon EC2의 간단한 웹 서비스 인터페이스를 통해 간편하게 필요한 용량을 얻고 구성할 수 있습니다. 컴퓨팅 리소스에 대한 포괄적인 제어권을 제공하며, Amazon의 검증된 컴퓨팅 인프라에서 실행할 수 있습니다. Amazon EC2는 새로운 서버 인스턴스를 획득하고 부팅하는 데 필요한 시간을 단 몇 분으로 단축하므로 컴퓨팅 요구 사항의 변화에 따라 신속하게 용량을 확장하거나 축소할 수 있습니다. 또한 실제 사용한 만큼만 요금을 지불하면 되므로, 컴퓨팅 비용이 절약됩니다. Amazon EC2는 오류 발생 시 복원력이 뛰어난 애플리케이션을 구축하고 일반적인 오류 상황을 피할 수 있는 도구를 제공합니다.”


Amazon EC2 장점은 단시간 안에 용량을 늘리거나 줄일 수 있고, 수백 개 또는 수천 개의 서버 인스턴스를 동시에 만들거나 제거할 수 있다는 사실일 것이다. 물론 비용도 직접 구축할 것에 비해 아주 아주 저렴하다.

그럼 이제부터 직접 EC2 생성하는 방법을 먼저 알아보자.

1. EC2 Instances 화면에서 Lanch Instance 선택
먼저 EC2에 접속하면 아래와 같은 화면인데, 필자는 테스트로 만들어 놓은 인스턴스가 하나 있다. 여기서 Lanch Instance 버튼을 선택해서 EC2 생성을 시작하자.


2. AMI(Amazon Machine Image) 선택
Lunch Instance 버튼을 누르면 AMI를 선택할 수 있는 화면이 나오는데, Free tier Only를 체크해서 Free tier AMI만 나오도록 선택한다. 필자는 Amazon Linux를 사용할 것이기 때문에 맨 위에 있는  Amazon Linux AMI 2015.03.1 (HVM), SSD Volume Type을 선택하고 다음으로 넘어 간다.

3. Instance Type 선택
Fmaily는 아래 5가지 유형이 있는데, 서비스의 필요에 따라 선택하면 되겠다.
  • General purpose : 범용으로 평균적인 사양
  • Compute optimized : CPU 집약형으로 다른 타입에 비해서 CPU 비율이 높음.
  • GPU instances :  GPU 성능이 높은 것으로, 고성능의 GPU가 장착되어 있음.
  • Memory optimized : 메모리 집약형으로 메모리 용량이 많음.
  • Storage optimized : 스토리지 집약형으로 스토리지 용량이 크거나 고속의 I/O를 제공

필자는 General purpose의 t2.mico 타입을 선택했다.


4. Instance 상세 정보 설정
대부분 기본값으로 그대로 놔두고 Subnet만 첫번째 Subnet으로 변경한다. Shutdown behavior에서 타입을  Terminate로 선택하면 인스턴스 설정 데이터를 삭제하기 때문에 유의해야 한다.
Tenancy에서 Dedicated tenancy로 설정하면 EC2 인스턴스를 격리된 전용의 하드웨어에서 동작하도록 설정 할 수 있어서 보안이 아주 중요한 곳에서는 설정해서 사용해볼 수 있겠다. 다만 비용이 발생될 수 있다.
Advanced Details의 User Data에는 Instance가 부팅되면서 수행할 쉘 스크립트를 작성할 수 있어서 필요한 작업들이 있으면 여기에서 추가할 수 있다.

5. 추가 Storage 설정
기본 볼륨의 크기를 변경하거나 볼륨을 추가할 수 있다. 기본 설정을 그대로 사용한다.

6. 인스턴스 Tag하기
원하는 이름으로 Tag명을 적으면 되겠다.

7. Secrity Group 설정
Secrity Group은 EC2를 대상으로 접근 권한을 설정한다. 기본 보안을 위해서 SSH, 22 Port를 기본으로 해서 설정한다. 필요하다면 더 추가할 수 있고, 추후에도 설정이 가능하다. 설정이 완료되었으면 Review and Lanch를 눌러서 최종 설정을 확인하자.

8. Instance Lunch 리뷰
최종 내용을 확인하고 Launch 버튼을 클릭한다.

9. Key pair 설정
중요한 부분인데, EC2 인스턴스를 생성하고 Linux Console로 접속하기 위해서는 인증이 필요한데, 여기서 만들어지는 Key Pair를 가지고 접속이 가능하기 때문에, 반드시 잘 보관해야 하며, 분실이 되지 않도록 철저히 관리해야 한다. 필자는 이미 만들어 놓은 것이 있어서 사용할 것이며, 처음 사용자들은 Create a new key pair를 눌러서 새로 생성하면 된다.

10. Lanch Status 상태 확인
맨 아래 View Instances를 누르면 실제 진행되는 상태를 확인 할 수 있다.

여기까지 진행이 되었다면 기본적인 EC2 Instance를 하나 생성한 것이다. 생각보다 어렵지 않게 EC2 Instance가 만들어져서 살짝 실망한 분들도 계실거란 생각이 든다. 정말 만들기가 쉽다. 다만 지금 만들어진 EC2 Instace는 우리가 원하는 Web Service를 바로 실행할 수 없다.
다음 시간에는 EC2 인스턴스 Linux에 직접 접속해서 Web Servier를 직접 설치해 보도록 하겠다.

0 개의 댓글:

댓글 쓰기

 
Toggle Footer