쿡북 리포지토리 - AWS OpsWorks

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

쿡북 리포지토리

중요

이 AWS OpsWorks Stacks 서비스는 2024년 5월 26일에 수명이 종료되었으며 신규 및 기존 고객 모두 사용할 수 없게 되었습니다. 고객은 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션할 것을 강력히 권장합니다. 마이그레이션에 대해 궁금한 점이 있으면 AWS re:Post 또는 Premium AWS Support를 통해 AWS Support 팀에 문의하세요.

사용자 지정 쿡북은 온라인 리포지토리(.zip 파일과 같은 아카이브 또는 Git과 같은 소스 제어 관리자)에 저장해야 합니다. 각 스택은 사용자 지정 쿡북 리포지토리가 하나만 있을 수 있지만, 리포지토리에는 쿡북을 제한 없이 저장할 수 있습니다. 쿡북을 설치하거나 업데이트하면 AWS OpsWorks Stacks는 각 스택 인스턴스의 로컬 캐시에 전체 리포지토리를 설치합니다. 예를 들어 인스턴스가 하나 이상의 레시피를 실행해야 할 경우 로컬 캐시에 저장된 코드를 사용합니다.

다음은 쿡북 리포지토리를 유형에 따라 구성하는 방법을 설명합니다. 그림에서 기울임꼴 텍스트는 리포지토리 또는 아카이브 이름을 포함하여 사용자 정의 디렉터리 및 파일 이름을 나타냅니다.

소스 제어 관리자

AWS OpsWorks Stacks는 다음과 같은 소스 제어 관리자를 지원합니다.

  • Linux 스택 - Git 및 하위 버전

  • Windows 스택 - Git

다음은 필수 디렉터리 및 파일 구조입니다.

SCM 쿡북 리포지토리용 필수 구조
  • 쿡북 디렉터리는 모두 최상위 수준이어야 합니다.

아카이브

AWS OpsWorks 스택은 다음 아카이브를 지원합니다.

  • Linux 스택 - Amazon S3 또는 웹 사이트(HTTP 아카이브)에 저장된 zip, gzip, bzip2 또는 tarball 파일.

    AWS OpsWorks 스택은 압축되지 않은 타르볼을 지원하지 않습니다.

  • Windows 스택 - Amazon S3에 저장된 zip 및 tgz(gzip compressed tar) 파일.

다음은 Linux 스택 또는 Windows 스택에 따른 필수 디렉터리 및 파일 구조입니다. 쿡북 구조는 SCM 리포지토리와 동일하므로 줄임표(...)로 표시되어 있습니다.

아카이브용 필수 구조
  • Linux 스택 - 쿡북 디렉터리가 루트 디렉터리에 포함되어야 합니다.

  • Windows 스택 - 쿡북이 아카이브의 최상위 수준이어야 합니다.

    쿡북이 하나뿐인 경우 선택적으로 쿡북 디렉터리를 생략하고 쿡북 파일을 최상위 수준에 배치할 수 있습니다. 이 경우 AWS OpsWorks Stacks가 metadata.rb에서 쿡북 이름을 가져옵니다.

각 쿡북 디렉터리는 다음의 표준 디렉터리 및 파일을 하나 이상 포함하며(일반적으로 모두 포함) 각 디렉터리 및 파일은 표준 이름을 사용해야 합니다.

  • attributes – 쿡북의 속성 파일.

  • recipes – 쿡북의 레시피 파일.

  • templates – 쿡북의 템플릿 파일.

  • 기타 – 정의 또는 사양과 같은 기타 파일 형식이 저장되는 선택적 사용자 정의 디렉터리.

  • metadata.rb – 쿡북의 메타데이터.

    Chef 11.10 이상의 경우 레시피가 다른 쿡북에 기반하는 경우 쿡북의 depends 파일에 해당 metadata.rb 문을 포함시켜야 합니다. 예를 들어 쿡북에 include_recipe anothercookbook::somerecipe 같은 문을 사용하는 레시피가 있는 경우 쿡북의 metadata.rb 파일에 depends "anothercookbook" 행이 있어야 합니다. 자세한 정보는 About Cookbook Metadata를 참조하세요.

템플릿은 templates 디렉터리의 하위 디렉터리에 위치해야 하며, 이 디렉터리는 하나 이상의 하위 디렉터리를 포함합니다(선택적으로 여러 개의 하위 디렉터리를 포함할 수 있음). 각 하위 디렉터리도 하위 디렉터리를 포함할 수 있습니다.

  • 템플릿은 일반적으로 default 하위 디렉터리를 포함하며, 이 하위 디렉터리에는 Chef가 기본적으로 사용하는 템플릿 파일이 저장됩니다.

  • other는 운영 체제별 템플릿에 사용할 수 있는 선택적 하위 디렉터리를 나타냅니다.

  • Chef는 File Specificity에 기술된 명명 규칙에 따라 적절한 하위 디렉터리의 템플릿을 자동으로 사용합니다. 예를 들어 Linux 및 운영 체제의 경우 각각 amazonamazon 또는 ubuntuubuntu 하위 디렉터리에 운영 체제별 템플릿을 배치할 수 있습니다.

사용자 지정 쿡북을 처리하는 세부 절차는 사용하는 리포지토리 유형에 따라 달라집니다.

아카이브를 사용하려면
  1. 이전 섹션에서 표시된 폴더 구조를 사용하여 쿡북을 구현합니다.

  2. 압축된 아카이브를 생성하여 Amazon S3 버킷 또는 웹 사이트에 업로드합니다.

    쿡북을 업데이트하는 경우 새 아카이브 파일을 생성해 업로드해야 합니다. Amazon S3 버킷에 전달한 콘텐츠에는 고객 콘텐츠가 포함될 수 있습니다. 중요 데이터 제거에 관한 자세한 내용은 S3 버킷을 비우려면 어떻게 해야 합니까? 단원 또는 S3 버킷을 삭제하려면 어떻게 해야 합니까? 단원을 참조하세요.

SCM을 사용하려면
  1. 앞서 표시된 구조를 사용하여 Git 또는 하위 버전 리포지토리를 설정합니다.

  2. 경우에 따라 리포지토리의 버전 관리 기능을 사용하여 여러 브랜치 또는 버전을 구현합니다.

    쿡북을 업데이트하는 경우 새 브랜치에서 업데이트하고 새 버전을 사용하도록 OpsWorks 지시할 수 있습니다. 또한 태그가 지정된 특정 버전을 지정할 수도 있습니다. 자세한 내용은 사용자 지정 쿡북 리포지토리 지정단원을 참조하세요.

사용자 지정 쿡북 설치 AWS OpsWorks Stacks가 스택의 인스턴스에 쿡북 리포지토리를 설치하도록 하는 방법을 설명합니다.

중요

리포지토리의 기존 쿡북을 업데이트한 후에는 update_cookbooks stack 명령을 실행하여 AWS OpsWorks Stacks가 각 온라인 인스턴스의 로컬 캐시를 업데이트하도록 지시해야 합니다. 자세한 정보는 스택 명령 실행을 참조하세요.