Category: AWS OpsWorks


AWS OpsWorks for Chef Automate 신규 서비스 출시

AWS OpsWorksChef를 사용하여 응용 프로그램 설정 및 실행을 돕는 서비스입니다. 도메인 특정 언어 (DSL)를 사용하여 응용 프로그램 아키텍처와 각 구성 요소 설정을 정의하는 cookbooks을 사용할 수 있습니다. 이는 Chef 서버 설정 과정에서 필수적인 요소입니다. Chef 서버는 모든 cookbook을 저장하고 각 인스턴스 (Chef 용어로 노드)의 상태 정보를 추적합니다.

Chef 서버는 새로 인스턴스가 설정 될 때 중요한 경로에 있기 때문에 안정성이 높아야 합니다. 대다수 AWS OpsWorks 및 Chef 사용자는 이러한 Chef 서버를 직접 설치하고 유지하고 있습니다. 정식 서비스 환경에서 이를 통해 운영 환경 백업, 복원, 버전 업그레이드 등을 사용자가 직접 처리해야 합니다.

신규 AWS OpsWorks for Chef Automate 서비스
지난 AWS re:Invent 2016에서 소개된 AWS OpsWorks for Chef Automate를 정식 출시합니다. Chef Automate 서버는 단 3 번의 클릭으로 시작하여, 몇 분 이내에 사용할 수 있습니다. Chef Supermarket을 비롯해 Test KitchenKnife 등 커뮤니티 도구에서 커뮤니티 사용법을 활용할 수 있습니다. Chef Automate을 사용하면 애플리케이션 인프라의 수명 주기에 맞추어 인프라를 관리 할 수 ​​있습니다. 예를 들어, 새로 시작된 EC2 인스턴스는 자동으로 Chef 서버에 연결하고 자동 연결 스크립트를 사용하여 지정된 레시피를 실행할 수 있습니다 (자세한 내용은  Adding Nodes Automatically in AWS OpsWorks for Chef Automate 참조). 등록 스크립트를 사용하여 Auto Scaling 그룹을 통해 동적으로 생성 된 EC2 인스턴스를 등록하고 온 – 프레미스 서버를 등록 할 수 있습니다.

서비스 살펴 보기
OpsWorks 콘솔에서 Chef Automate 서버를 시작해보겠습니다. 시작하려면 Go to OpsWorks for Chef Automate을 클릭합니다.

Create Chef Automate server를 클릭하고 서버 이름을 지정합니다. 사용할 리전을 선택하고 적절한 EC2 인스턴스 유형을 선택합니다.

SSH 키 쌍 중 하나를 선택하거나 SSH를 사용하지 않습니다.

마지막으로, 네트워크 (VPC), IAM, 유지 관리 및 백업 설정을 지정합니다.

Next를 클릭하여, 설정을 확인하고 Launch를 선택합니다. 부팅 과정에 걸리는 시간은 20분 미만입니다. 그 시간 동안 스타터 키트와 함께 Chef Automate 대시 보드의 로그인 인증 정보를 다운로드 할 수 있습니다.

이제 모든 Chef Automate 서버를 한눈에 볼 수 있습니다.

서버 이름(여기에서는 BorkBorkBork)을 클릭하고 Open Chef Automate dashboard를 클릭합니다. 다음 인증 정보를 입력하여 로그인합니다.

아래는 대시 보드를 보여줍니다.

노드를 표시하고 관리 할 수 ​​있습니다.

워크 플로우 관리도 가능합니다.

그 밖에도 다양한 기능이 있습니다. 백그라운드 실행 과정을 통해 AWS CloudFormation 템플릿을 호출합니다. 이 템플릿은 EC2 인스턴스, Elastic IP 주소 및 보안 그룹을 생성합니다.

정식 출시
AWS OpsWorks for Chef Automate는 US East (Northern Virginia), US West (Oregon)Europe (Ireland) 지역에서 이용하실 수 있습니다. 가격은 서버에 연결된 노드의 수와 시간에 따라 다릅니다. 자세한 내용은 Chef Automate 요금 페이지를 참조하십시오. AWS Free Tier의 일환으로 12 개월 당 최대 10 노드까지 무료로 사용할 수 있습니다.

Jeff;

이 글은 New – AWS OpsWorks for Chef Automate의 한국어 버전입니다.

AWS OpsWorks, 서울 리전 출시

AWS OpsWorks는 소프트웨어 구성, 패키지 설치, 데이터베이스 설정, 서버 규모 조정, Chef를 사용한 코드 배포 등과 같은 운영 작업을 자동화할 수 있는 구성 관리 서비스입니다. OpsWorks가 오늘 부터 서울 리전에서 사용 가능합니다.

Screen Shot 2016-08-16 at 16.26.49

OpsWorks를 사용하면 애플리케이션 아키텍처와 리소스 구성을 유연하게 정의하고, 사용할 AWS 리소스의 프로비저닝 및 관리도 쉽게 처리할 수 있습니다. OpsWorks에는 시간이나 로드를 기반으로 애플리케이션을 조정하는 자동화 기능, 리소스 상태를 기반으로 문제를 해결하고 자동화된 작업을 수행할 수 있게 해주는 모니터링 기능, 다중 사용자 환경을 좀 더 쉽게 관리하기 위한 권한 및 정책 관리 기능이 포함되어 있습니다.

  • 리소스 구성: Amazon EBS 볼륨 생성을 비롯한 템플릿 구성에서 Amazon EC2 인스턴스를 배포할 수 있습니다. 또한 AWS OpsWorks는 리소스 간의 관계를 관리하고 유지합니다. 예를 들어, 인스턴스를 중지했다가 몇 주 후 시작한 후에도 해당 인스턴스가 자신의 엘라스틱 IP 주소 및 볼륨을 유지할 수 있게 합니다.
  • 소프트웨어 구성: 기본 OS 이미지를 작업 서버로 부트스트랩 처리하는 것부터 변경 사항 반영을 위해 실행 중인 서비스를 수정하는 데 이르기까지 온 디맨드로, 또는 수명 주기 이벤트에 따라 자동으로 인스턴스에 소프트웨어를 구성할 수 있습니다. 수명 주기 이벤트가 트리거되면 OpsWorks는 layer에 적합한 기본 레시피 및 특정 이벤트에 할당할 모든 사용자 지정 레시피를 실행합니다.
  • 애플리케이션 배포: 리포지토리에서 코드를 가져오고 코드를 하나 또는 모든 인스턴스에 설치할 수 있습니다. 시스템으로 함께 작동하도록 구성된 stack에 여러 개의 애플리케이션을 보유할 수 있습니다.
  • 자동 치유 및 인스턴스 확장: AWS OpsWorks는 스택을 자동으로 치유할 수 있습니다. 스택에서 인스턴스 장애가 발생하는 경우 OpsWorks가 새 인스턴스로 교체합니다. 시간 또는 로드 기반 Auto Scaling을 사용하여 로드에 맞게 실행되는 인스턴스 개수를 정할 수 있습니다. 풀의 인스턴스는 크기가 다양하여 점진적이거나 신속한 규모 변경이 가능합니다. 이렇게 하면 로드 스파이크를 처리하고 정확히 필요한 것만 사용하여 비용을 절약할 수 있습니다.
  • 모니터링: AWS OpsWorks는 모든 리소스 지표를 Amazon CloudWatch로 전송하며 문제를 해결하고 리소스 상태에 따른 자동화된 조치를 취하는 데 도움이 되도록 쉽게 그래프를 확인하고 경보를 설정할 수 있습니다.
  • 다양한 인스턴스 타입 지원:  AWS OpsWorks를 사용하여 Linux와 Windows EC2 인스턴스를 구성 및 관리할 수 있습니다. 또한, AWS OpsWorks를 사용하여 EC2 인스턴스 또는 자체 데이터 센터에서 구동되는 서버(서버가 AWS 퍼블릭 엔드포인트에 연결할 수 있어야 함)를 비롯한 모든 Linux 서버에서 애플리케이션을 배포하고, 관리하고, 조정할 수 있습니다.

AWS OpsWorks에 대한 자세한 소개는 홈페이지기술 문서를 참고하시기 바랍니다.

AWS OpsWorks 업데이트- ECS Container 인스턴스 및 RHEL 7 지원

AWS OpsWorks는 다양한 형태 및 크기의 응용 프로그램을 쉽게 배포 할 수 있습니다. AWS OpsWorks를 사용하면 리소스 프로비저닝, EBS 볼륨 설정, 구성 관리, 애플리케이션 배포, 모니터링 및 접근 제어를 포함한 전체 애플리케이션 라이프 사이클에 대한 통합 관리가 가능합니다. (자세한 내용은 AWS OpsWorks – Flexible Application Management in the Cloud Using Chef를 참조하십시오.)

Amazon EC2 Container Service 는 Docker 콘테이너를 지원하고 Amazon Elastic Compute Cloud (EC2) 관리 클러스터에서 응용 프로그램을 쉽게 작동시킬 수 있는 확장성 높은 콘테이너 관리 서비스입니다. (자세한 내용은 AWS OpsWorks – Flexible Application Management in the Cloud Using Chef를 참조하십시오.)

ECS 및 RHEL 지원

AWS OpsWorks는 ECS Container 인스턴스에 대한 지원을 추가합니다. Ubuntu 14.04 LTS 또는 Amazon Linux 2015.03 AMI에서 작동되는 ECS Container 인스턴스를 프로비저닝하고 관리 할 수 있습니다.

또한, Red Hat Enterprise Linux (RHEL) 7.1 지원을 추가했습니다.

이 기능을 더 자세히 살펴 보겠습니다!

ECS Container 인스턴스 지원
새로운 ECS Cluster레이어를 사용하면 쉽게 ECS Container 인스턴스를 프로비저닝하고 구성 할 수 있습니다. 간단하게 레이어를 생성하고 (기존에 만든) 클러스터 이름과 인스턴스 유형을 지정하여 EBS 볼륨을 연결하면 준비가 완료됩니다. 인스턴스는 Docker, ECS 에이전트 OpsWOrks 에이전트와 함께 프로비저닝되고 ECS 클러스터 레이어와 관련된 ECS 클러스터에 함께 등록됩니다.

아래와 같이 간단히 시작할 수 있습니다. 새 레이어를 추가하여 ECS Cluster Layer 유형을 선택합니다:

클러스터 및 프로파일을 선택합니다.

다음 단계는 클러스터에 인스턴스를 추가하는 것입니다. 인스턴스마다 몇 번 클릭하기만 하면 됩니다.

일반적으로 OpsWorks에서 사용하는 경우와 마찬가지로 인스턴스는 처음에는 stopped 상태가 되어 있습니다, 그리고 Start All Instances를 클릭하여 시작할 수 있습니다.(혹은 개별 인스턴스를 시작할 수 있습니다.)

인스턴스가 시작되면 그 위에 Chef 레시피를 실행할 수 있습니다. 또한 클러스터의 인스턴스에서 운영 체제 (Linux 전용)을 설치 및 패키지 업데이트 할 수 있습니다. (자세한 내용은 Run AWS OpsWorks Stack Commands을 참조하십시오.) 마지막으로, 간단한 JSON 래퍼(Wrapper)에 쉘 명령을 넣어 실행하는 방법은 Using OpsWorks to Perform Operational Tasks를 참조하십시오.

더 자세한 내용은 OpsWorks User Guide를 참조하십시오. OpsWorks에서 프로비저닝되는 콘테이너 인스턴스에 대한 ECS 작업을 수행하는 방법은 ECS Getting Started Guide를 참조하십시오.

RHEL 7.1 지원
OpsWorks는 RedHat Enterprise Linux (RHEL) 7.1을 지원합니다. 올해 OpsWorks 윈도우 지원을 알려드렸을 때처럼 많은 AWS 고객들이 레드햇 OS를 지원하해달라는 요청이 있었고, 이를 지원하게 되었습니다. 이제 RHEL 7을 실행하는 EC2 인스턴스를 시작 및 관리 할 수​​ 있습니다. 또한, 기존의 RHEL 7을 실행하는 온-프레미스 인스턴스를 관리 할 수 있습니다.

여기 가지 부팅 옵션이 있습니다. 새로운 스택을 만들 때 기본적으로 RHEL 7을 선택 할 수 있고 기존 스택에 기본으로 설정할 수 있습니다. 또한, 기본 설정은 그대로 보존하여 새 인스턴스를 시작할 때 RHEL 7을 선택할 수 있습니다. 여기에서는 새로운 스택을 만들 때 기본적으로 RHEL 7을 선택하는 방법을 소개합니다.

이미 알고 계시겠지만, 적은 금액으로 OpsWorks에서 실행하지 않은 인스턴스를 관리할 수 있습니다. OpsWorks를 사용하면 다양한 모니터링 및 관리 도구를 사용할 수 있는 혜택을 누릴 수 있으며, 간편한 사용자 인터페이스를 사용하여 모든 인스턴스를 관리 할 수​​ 있습니다. 이를 위해, 새 인스턴스를 시작하는 것이 아니라 기존 인스턴스를 등록하여 레이어에 인스턴스를 추가 할 수 있습니다.

마법사를 사용하여 마지막 단계에 OpsWorks 에이전트를 설치하는 방법과 OpsWorks에 등록하는 방법이 표시됩니다.

위의 명령어를 실행하면 에이전트를 다운로드하여 필요한 패키지를 설치하고 에이전트를 시작합니다. 에이전트가 자신을 OpsWorks에 등록하고, 인스턴스가 명령 라인에서 지정한 스택에 포함 됩니다. 이 시점에서 그 인스턴스는 스택 내 일부로 등록되지만 레이어는 아직 할당되지 않고, 또한 아직 어떤 설정도 구성되어 있지 않습니다. OpsWorks 사용자 관리 기능을 사용하여 사용자를 생성, 권한 관리, 필요한 경우 SSH 액세스를 제공 할 수 있습니다.

에이전트를 설치하면 1분 간격으로 CloudWatch 메트릭이 설정됩니다.

인스턴스를 설정하고 모니터링하고 있는지 확인 후, 레이어에 할당 할 수 있습니다.

바로 사용 가능
오늘 부터 위의 설명한 기능을 사용할 수 있습니다.

Jeff;

PS – Special thanks are due to my colleagues Mark Rambow and Cyrus Amiri for their help with this post.

이 글은 AWS OpsWorks Update – Provision & Manage ECS Container Instances; Run RHEL 7의 한국어 번역입니다.