AWS Elastic Beanstalk 사용

이 단계별 안내서는 AWS Elastic Beanstalk(EB)를 사용하여 샘플 PHP 애플리케이션을 시작 및 실행하는 데 도움이 됩니다. EB는 PHP 외에도 Java, .NET, Node.JS, Python, Ruby, Docker, Go 등 다른 언어를 지원하지만, 본 자습서는 PHP를 위주로 합니다(다른 언어도 같은 프로세스를 따릅니다). 먼저 EB 애플리케이션을 구성한 후 애플리케이션이 시작될 EB 환경을 설정합니다.

알고 계셨습니까? AWS를 사용하면 웹 애플리케이션을 더욱 쉽게 시작할 수 있습니다. Amazon Lightsail로 애플리케이션을 빠르게 시작하기 >>

AWS에서 애플리케이션을 시작하려면 계정이 필요

몇 분 만에 무료 계정 생성

12개월 동안 AWS 프리 티어에 액세스하고, 연중무휴 24시간 고객 서비스, 지원 포럼 등을 비롯한 AWS Basic Support의 혜택을 누려 보십시오.

 


본 자습서에서는 사전에 구축된 샘플 PHP 애플리케이션을 사용합니다. 이 샘플 PHP 애플리케이션 파일을 다운로드하려면 여기를 클릭하십시오.

여기를 클릭하면 AWS Management Console이 새 브라우저 창에서 열리므로 이 단계별 안내서를 계속 열어 놓을 수 있습니다. 이 화면이 로드되면 사용자 이름암호를 입력하여 시작하십시오. 그런 다음 Compute 아래에서 Elastic Beanstalk를 찾아 클릭하여 Elastic Beanstalk 대시보드를 엽니다.

AWS 콘솔 이미지

(확장하려면 클릭)

Getting-Started-Launch-an-app-0. MC

이제 AWS Elastic Beanstalk 대시보드에서 Create New Application을 클릭하여 애플리케이션을 생성 및 구성합니다.

Amazon Elastic Beanstalk 시작 화면

(확장하려면 클릭)

Getting-Started-Launch-an-app-1

Application name에는 php-sample-app을 입력하고 Description 필드에는 Sample PHP App을 입력합니다. Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-2

(확장하려면 클릭)

Getting-Started-Launch-an-app-2

a. 본 자습서에서는 샘플 PHP 애플리케이션을 위한 웹 서버 환경을 생성합니다. Create web server를 클릭합니다.

Getting-Started-Launch-an-app-3a

(확대하려면 클릭)

Getting-Started-Launch-an-app-3a

b. Predefined configuration 옆에 있는 Select a platform을 클릭한 후 PHP를 선택합니다. 그런 다음 Environment type 옆에 있는 드롭다운 메뉴를 클릭하고 Single instance를 선택합니다.

참고: "instance"는 Amazon의 Elastic Compute Cloud(EC2) 컴퓨팅 서비스를 지칭합니다. "single instance"는 애플리케이션을 배포하는 데 1개의 가상 서버를 사용한다는 뜻입니다.

애플리케이션을 확장 및 로드 밸런싱하는 방법은 다른 자습서에서 설명합니다. Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-3b

(확대하려면 클릭)

Getting-Started-Launch-an-app-3b

c. Source 아래에서 Upload your own 옵션을 선택한 후, Choose File을 클릭하여 앞에서 다운로드한 샘플 php-v1.zip 파일을 선택합니다. 계속 진행하기 전에 로컬 시스템에 다운로드한 php-v1.zip 파일을 두 번 클릭하여 콘텐츠를 확인합니다. 그러면 자체 PHP 애플리케이션을 사용할 때 zip 파일이 어떤 형태인지 좀 더 잘 이해할 수 있습니다.

참고: PHP는 애플리케이션에 엄격한 파일 구조를 적용하지 않습니다. 플랫 파일 구조면 충분합니다.

Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-3c

(확대하려면 클릭)

Getting-Started-Launch-an-app-3c

d. Environment name 값에 phpSampleApp-env를 입력합니다. Environment URL은 퍼블릭 URL이므로 전 세계적으로 고유한 값을 입력합니다. 이 자습서에서는 phpsampleapp-env를 사용합니다. 따라서 이와는 다른 것을 선택하십시오. 마지막으로 DescriptionSample PHP App을 입력합니다. Environment URL의 경우 Check availability를 클릭하여 사용할 수 있는 URL인지 확인합니다. Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-3d

(확대하려면 클릭)

Getting-Started-Launch-an-app-3d

e. Create this environment inside a VPC 옆에 있는 상자를 선택합니다. Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-3e

(확대하려면 클릭)

Getting-Started-Launch-an-app-3e

f. 여기에서는 모든 필드는 기본값으로 유지합니다. Next를 클릭하여 계속 진행한 후 Environment Tags에 관한 다음 화면에서 다시 Next를 클릭합니다.  다음 화면에서 EC2 아래에 있는 상자를 선택하여 나열된 첫 번째 가용 영역을 선택합니다. 실제 화면은 자습서 화면과 다를 수 있지만, 하나의 서브넷을 선택하기만 하면 달라도 상관없습니다.

참고: 가용 영역(AZ)은 지리적 리전에 있는 다른 AZ와 격리된 데이터 센터의 클러스터입니다. 가용 영역은 아키텍처를 고가용성으로 만들고자 할 때 사용됩니다. 이 자습서에서는 단일 AZ를 사용합니다.

다른 설정은 모두 기본값으로 두고 Next를 클릭하여 계속 진행합니다.

Getting-Started-Launch-an-app-3g

(확대하려면 클릭)

Getting-Started-Launch-an-app-3g

g. Permissions 단계에서는 모두 기본값으로 유지하고 Next를 클릭하여 계속 진행합니다. 그리고 다음 화면에서 environment configuration을 검토한 후 Launch를 클릭하여 애플리케이션을 배포합니다.

참고: 애플리케이션을 시작하는 데 몇 분 정도 걸릴 수 있습니다.


a. Elastic Beanstalk를 클릭하여 기본 Elastic Beanstalk 대시보드 페이지로 돌아갑니다. 애플리케이션이 성공적으로 시작되면 애플리케이션 환경인 phpSampleApp-env가 녹색 상자에 표시됩니다. 녹색 상자인 phpSample-App-env를 클릭합니다.

Getting-Started-Launch-an-app-4a

(확대하려면 클릭)

Getting-Started-Launch-an-app-4a

b. 페이지 상단에 3단계 d 파트에서 지정한 Environment URL 값이 포함된 URL 필드가 있습니다. 이 URL 필드를 클릭하면 Congratulations 페이지가 표시됩니다.

Getting-Started-Launch-an-app-4b

(확대하려면 클릭)

Getting-Started-Launch-an-app-4b

축하합니다! AWS Elastic Beanstalk를 사용하여 샘플 PHP 애플리케이션을 성공적으로 시작했습니다.

Getting-Started-Launch-an-app-congratulations

(확대하려면 클릭)

Getting-Started-Launch-an-app-congratulations

Elastic Beanstalk 애플리케이션을 시작 및 실행했으니 이제 다음 자습서에서 애플리케이션을 업데이트하는 방법을 알아봅니다.

애플리케이션 업데이트 »


아니요