실습 개요
회사에 온프레미스에서 호스트된 기존 웹 애플리케이션이 있지만 Amazon Web Services(AWS)를 클라우드 공급자로 사용하여 기존 인프라를 클라우드로 이전하기로 결정했습니다. Solutions Architect는 다양한 마이그레이션 전략을 분석 및 평가하고 애플리케이션을 AWS 클라우드로 마이그레이션할 수 있는 솔루션을 찾아야 합니다.
이 실습에서는 AWS Elastic Beanstalk를 사용해 웹 애플리케이션을 리플랫포밍하고 클라우드로 마이그레이션합니다.
아이콘 설명
이 실습에서는 가이드의 특정 부분에 주의를 기울이도록 다양한 아이콘이 사용됩니다. 다음 목록에서는 각 아이콘의 목적을 설명합니다.
- 키보드 아이콘은 명령을 실행해야 함을 나타냅니다.
- 클립보드 아이콘은 명령 또는 편집된 파일의 출력을 제공된 예제와 비교하여 확인할 수 있음을 나타냅니다.
- 메모 아이콘은 중요한 힌트, 팁, 지침 또는 조언을 나타냅니다.
- 특별히 참고해야 할 정보에 대한 주의를 환기합니다. 참고 사항을 읽지 않는다고 해서 장비나 데이터가 물리적 피해를 입지는 않지만 특정 단계를 반복해야 할 수도 있습니다.
- “i” 원 아이콘은 자세한 정보를 찾을 수 있는 위치를 나타냅니다.
- 자신의 환경에 개념을 적용하는 방법을 고려하거나 당면한 주제에 대한 대화를 시작하기 위해 일시 중지할 시점을 제안합니다.
AWS Elastic Beanstalk 개요
AWS Elastic Beanstalk는 Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker를 사용하여 Apache, Nginx, Passenger, IIS와 같은 친숙한 서버에서 개발된 웹 애플리케이션 및 서비스를 간편하게 배포하고 조정할 수 있는 서비스입니다.
코드를 업로드하면 Elastic Beanstalk가 용량 프로비저닝부터 로드 밸런싱, 자동 크기 조정, 애플리케이션 상태 모니터링에 이르는 모든 배포 작업을 자동으로 처리합니다. 이와 동시에 애플리케이션을 실행하는 데 필요한 AWS 리소스를 완벽하게 제어할 수 있으며 언제든지 기본 리소스에 액세스할 수 있습니다.
Elastic Beanstalk에는 추가 요금이 없으며 애플리케이션을 저장 및 실행하는 데 필요한 AWS 리소스에 대해서만 요금을 지불하면 됩니다.
Elastic Beanstalk를 사용하려면 애플리케이션을 생성하고 애플리케이션 소스 번들(예: Java .war 파일) 형식의 애플리케이션 버전을 Elastic Beanstalk에 업로드합니다. 그런 다음 애플리케이션 관련 정보를 제공합니다. 그러면 Elastic Beanstalk가 자동으로 환경을 시작하고 코드 실행에 필요한 AWS 리소스를 생성 및 구성합니다. 환경이 시작된 후 환경을 관리하고 새로운 애플리케이션 버전을 배포할 수 있습니다. 다음은 Elastic Beanstalk의 워크플로를 설명하는 다이어그램입니다.
권한
환경을 생성하면 AWS Identity and Access Management(IAM) 역할 2개를 제공하라는 프롬프트가 AWS Elastic Beanstalk에 표시됩니다.
- Service role: 서비스 역할은 Elastic Beanstalk가 사용자를 대신해 다른 AWS 서비스를 사용할 목적으로 맡는 역할입니다.
- Instance profile: 인스턴스 프로파일은 사용자 환경의 인스턴스에 적용되며, 인스턴스가 Amazon Simple Storage Service(Amazon S3)에서 애플리케이션 버전을 가져오고, 로그를 Amazon S3로 업로드하고, 환경 유형 및 플랫폼에 따라 다른 작업을 수행할 수 있도록 합니다.
이 실습에서는 서비스 역할과 인스턴스 프로파일이 초기 실습 설정에서 생성됩니다.
이 실습에서 다루는 주제
이 실습을 마치면 다음을 수행할 수 있습니다.
- AWS로 마이그레이션하는 데 필요한 애플리케이션 소스 코드를 준비할 수 있습니다.
- 애플리케이션 소스 코드 버전을 S3 버킷으로 업로드할 수 있습니다.
- Elastic Beanstalk 애플리케이션을 생성하고 환경을 시작할 수 있습니다.
- Elastic Beanstalk 환경을 검토하고 관리할 수 있습니다.
필수 기술 지식
이 실습을 성공적으로 완료하기 위한 사전 준비는 다음과 같습니다.
- Microsoft Windows, Mac OS X 또는 Linux(Ubuntu, SuSE 또는 Red Hat)가 설치된 컴퓨터에 액세스할 수 있어야 합니다.
- Chrome 또는 Firefox 같은 최신 인터넷 브라우저가 설치되어 있어야 합니다.
- AWS Management Console의 기본 탐색 기능에 익숙해야 합니다.
- AWS Cloud9 코드 편집기를 사용하거나 vi 및 nano 같은 도구를 사용해 스크립트를 편집하는 데 어려움이 없어야 합니다.
소요 시간
이 실습을 완료하는 데 60분 정도가 소요됩니다.