본문 바로가기
CLOUD/AWS

AWS opsworks란?

by Rainbound-IT 2022. 7. 13.
반응형

목차

     

    정의


    AWS OpsWorks는 Chef를 사용하여 클라우드 엔터프라이즈에서 애플리케이션을 구성하고 운영하는 데 도움이 되는 구성 관리 서비스입니다.
    OpsWorks Stacks 및 AWS OpsWorks for Chef Automate를 통해 Chef 쿡북 및 구성 관리 솔루션 사용 가능

     

    개인적인 느낌

    elastic beanstalk 랑 비슷한것 같은데 기능면에서보면 좀 다른것 같다.

    좀 더 app을 위한 관리 서비스 같은 느낌이다.

    세가지 모드가 있는데 stack만 사용해 보았다.

    게다가 한국지역에서는 아직 서비스가 안되었다.

     

    OpsWorks Stacks

    • OpsWorks Stacks는 스택, 로드 밸런서, 웹, 애플리케이션 및 데이터베이스 서버와 같은 AWS 리소스 그룹, 스택에 배포된 애플리케이션을 생성하고 관리하는 간단하고 유연한 방법을 제공합니다.
    • OpsWorks Stacks는 스택에서 애플리케이션을 배포하고 모니터링하는 데 도움이 됩니다.
    • OpsWorks for Chef Automate와 달리 OpsWorks Stacks는 Chef 서버를 필요로 하거나 생성하지 않습니다. Chef 서버 자체의 일부 작업을 수행합니다.
    • OpsWorks Stacks는 Auto Healing 및 Auto Scaling을 사용하여 인스턴스 상태를 모니터링하고 필요한 경우 새 인스턴스를 프로비저닝합니다.
    • OpsWorks Stacks는 IAM과 통합되어 사용자가 스택과 상호 작용하는 방법, 사용자를 대신하여 스택이 수행할 수 있는 작업, 앱이 액세스할 수 있는 AWS 리소스 등을 제어합니다.
    • OpsWorks Stacks는 CloudWatch 및 CloudTrail과 통합되어 모니터링 및 로깅이 가능합니다.
    • OpsWorks Stacks는 전 세계적으로 액세스할 수 있으며 전 세계적으로 인스턴스를 생성 및 관리하는 데 사용할 수 있습니다.

     

     

    Stacks

    • 스택은 핵심 AWS OpsWorks Stacks 구성 요소입니다.
    • 스택은 공통의 목적을 가지고 논리적으로 함께 관리되어야 하는 EC2, RDS 인스턴스 등과 같은 AWS 리소스의 컨테이너입니다.
    • 스택은 리소스를 그룹으로 관리하는 데 도움이 되며 인스턴스의 OS 및 AWS 리전과 같은 일부 기본 구성 설정도 정의합니다.
    • 스택을 VPC에서 실행하여 직접적인 사용자 상호 작용으로부터 격리할 수도 있습니다.
    • Dev, QA 등과 같은 다양한 환경에 대해 별도의 스택을 생성할 수 있습니다.

     

     

    Layers

    • 스택은 레이어라는 특수 그룹에서 클라우드 리소스를 관리하는 데 도움이 됩니다.
    • 계층은 애플리케이션 제공 또는 데이터베이스 서버 호스팅과 같은 특정 목적을 수행하는 EC2 인스턴스 세트를 나타냅니다.
    • 계층은 인스턴스에 패키지 설치, 앱 배포, 스크립트 실행과 같은 작업을 처리하기 위해 Chef 레시피에 의존합니다.
    • 맞춤형 레시피 및 관련 파일은 하나 이상의 쿡북에 패키징되어 S3 또는 Git과 같은 쿡북 리포지토리에 저장됩니다.

     

     

    Recipes and LifeCycle Events

    • 계층은 인스턴스에 패키지 설치, 앱 배포, 스크립트 실행 등과 같은 작업을 처리하기 위해 Chef 레시피에 의존합니다.
    • OpsWorks Stacks는 인스턴스가 애플리케이션과 mysql 서버를 모두 호스팅하는 인스턴스에 대해 여러 레이어에 속해 있더라도 각 레이어에 대한 레시피를 실행합니다.
    • AWS OpsWorks Stacks 기능은 각 인스턴스에서 적절한 시간에 지정된 레시피 세트를 자동으로 실행하는 수명 주기 이벤트 세트(설정, 구성, 배포, 배포 취소 및 종료)입니다.
      • Setup
        • 새 인스턴스가 부팅되면 OpsWorks는 Apache, PHP 패키지 설치를 위한 계층 구성에 따라 인스턴스를 설정하는 레시피를 실행하는 Setup 이벤트를 트리거합니다.\
        • 설정이 완료되면 AWS OpsWorks가 Deploy 이벤트를 트리거하여 레시피를 실행하여 애플리케이션을 새 인스턴스에 배포합니다.
      • Configure
        • 인스턴스가 온라인 상태에 들어가거나 나갈 때마다 AWS OpsWorks는 스택의 모든 인스턴스에 대해 Configure 이벤트를 트리거합니다.
        • 이벤트는 각 계층의 구성 레시피를 실행하여 구성을 업데이트하여 예를 들어 온라인 인스턴스의 현재 집합을 반영하도록 구성을 업데이트합니다. HAProxy 계층의 Configure 레시피는 추가되거나 제거된 애플리케이션 서버 인스턴스를 반영하도록 로드 밸런서 구성을 수정할 수 있습니다.
      • Deploy
        • OpsWorks는 Deploy 명령이 실행될 때 Deploy 이벤트를 트리거하여 애플리케이션을 애플리케이션 서버 세트에 배포합니다.
        • Event는 애플리케이션 서버에서 레시피를 실행하여 해당 저장소에서 계층의 인스턴스로 애플리케이션 및 모든 관련 파일을 배포합니다.
      • Undeploy
        • OpsWorks는 앱이 삭제되거나 배포 취소 명령이 실행되어 응용 프로그램 서버 집합에서 앱을 제거할 때 배포 취소 이벤트를 트리거합니다.
        • 이벤트는 레시피를 실행하여 모든 애플리케이션 버전을 제거하고 추가 정리 작업을 수행합니다.
      • Shutdown
        • OpsWorks는 인스턴스가 종료될 때 기본 EC2 인스턴스가 실제로 종료되기 전에 Shutdown 이벤트를 트리거합니다.
        • 이벤트는 서비스 종료와 같은 정리 작업을 수행하기 위해 레시피를 실행합니다.
        • OpsWorks는 Shutdown 레시피가 작업을 수행할 수 있도록 구성 가능한 시간을 허용한 다음 인스턴스를 종료합니다.

     

     

    Instance

    • 인스턴스는 예를 들어 단일 컴퓨팅 리소스를 나타냅니다. EC2 인스턴스 및 OS 및 크기와 같은 리소스의 기본 구성을 정의합니다.
    • OpsWorks Stacks는 인스턴스를 생성하고 레이어에 추가합니다.
    • 인스턴스가 시작되면 OpsWorks Stacks는 인스턴스와 해당 계층에서 지정한 구성 설정을 사용하여 EC2 인스턴스를 시작합니다.
    • EC2 인스턴스 부팅이 완료되면 OpsWorks Stacks는 인스턴스와 서비스 간의 통신을 처리하고 수명 주기 이벤트에 대한 응답으로 적절한 레시피를 실행하는 에이전트를 설치합니다.
    • OpsWorks Stacks는 에이전트가 서비스와 통신을 중지하면 OpsWorks Stacks가 인스턴스를 자동으로 중지하고 다시 시작하는 인스턴스 자동 복구를 지원합니다.
    • OpsWorks Stacks는 다음 인스턴스 유형을 지원합니다.
      • 24/7 instances – 수동으로 시작 및 중지
      • Time based instances – 예약된 시간에 실행
      • Load based instances – 구성 가능한 로드 메트릭을 기반으로 자동 시작 및 중지
    • 예를 들어 OpsWorks 스택 외부에서 생성된 Linux 기반 컴퓨팅 리소스 콘솔 또는 CLI는 OpsWorks를 통해 추가, 통합 및 제어할 수 있습니다.

     

     

     

    Apps

    • AWS OpsWorks Stacks 앱은 S3와 같은 앱 리포지토리에 있는 애플리케이션 서버에서 실행하려는 코드를 나타냅니다.
    • 앱에는 적절한 애플리케이션 서버 인스턴스에 코드를 배포하는 데 필요한 정보가 포함되어 있습니다.
    • 앱을 배포할 때 AWS OpsWorks Stacks는 스택의 인스턴스에서 Deploy 레시피를 실행하는 Deploy 이벤트를 트리거합니다.
    • OpsWorks는 스택 및 계층당 여러 앱을 배포하는 기능을 지원합니다.

     

    OpsWorks Deployment Strategies

    https://jayendrapatil.com/aws-opsworks-deployment-strategies/

     

    AWS OpsWorks Deployment Strategies – Certification

    AWS OpsWorks Deployment Strategies NOTE: Advanced Topic required for DevOps Professional Exam Only All at Once Deployment OpsWorks Stacks does not automatically deploy updated code to online instan…

    jayendrapatil.com

     

    Reference

    https://jayendrapatil.com/aws-opsworks/

     

    AWS OpsWorks – Certification

    AWS OpsWorks AWS OpsWorks is a configuration management service that helps to configure and operate applications in a cloud enterprise by using Chef OpsWorks Stacks and AWS OpsWorks for Chef Automa…

    jayendrapatil.com

     

    반응형

    댓글