Application Manager를 사용하여 AWS CloudFormation 템플릿 관리 - AWS Systems Manager

Application Manager를 사용하여 AWS CloudFormation 템플릿 관리

AWS Systems Manager의 기능인 Application Manager에는 AWS CloudFormation 템플릿을 관리하는 데 도움이 되는 템플릿 라이브러리 및 기타 도구가 포함되어 있습니다. 이 섹션에는 다음 정보가 포함됩니다.

템플릿 라이브러리 작업

Application Manager 템플릿 라이브러리는 템플릿을 보고, 생성하고, 편집하고, 삭제하고, 복제하는 데 유용한 도구를 제공합니다. 템플릿 라이브러리에서 직접 스택을 프로비저닝할 수도 있습니다. 템플릿은 CloudFormation 유형의 Systems Manager(SSM) 문서로 저장됩니다. 템플릿을 SSM 문서로 저장하면 버전 컨트롤을 사용하여 다양한 버전의 템플릿으로 작업할 수 있습니다. 권한을 설정하고 템플릿을 공유할 수도 있습니다. 스택을 성공적으로 프로비저닝하면 Application Manager 및 CloudFormation에서 스택과 템플릿을 사용할 수 있습니다.

시작하기 전 준비 사항

Application Manager에서 CloudFormation 템플릿 작업을 시작하기 전에 다음 주제를 읽고 SSM 문서에 대해 자세히 알아보는 것이 좋습니다.

Application Manager에서 템플릿 라이브러리를 보려면
  1. AWS Systems Manager 콘솔(https://console.aws.amazon.com/systems-manager/)을 엽니다.

  2. 탐색 창에서 Application Manager를 선택합니다.

  3. [애플리케이션(Applications)] 섹션에서 [CloudFormation 스택(CloudFormation stacks)]을 선택합니다.

  4. [템플릿 라이브러리(Template library)]를 선택합니다.

템플릿 생성

다음 절차에서는 Application Manager에서 CloudFormation 템플릿을 생성하는 방법을 설명합니다. 템플릿을 생성할 때 템플릿의 스택 세부 정보를 JSON 또는 YAML로 입력합니다. JSON 또는 YAML에 익숙하지 않은 경우 템플릿을 시각적으로 생성하고 수정하기 위한 도구인 AWS CloudFormation Designer를 사용할 수 있습니다. 자세한 내용은 AWS CloudFormation 사용 설명서AWS CloudFormation Designer이란 무엇인가요?를 참조하세요. 템플릿의 구조 및 구문에 대한 자세한 내용은 템플릿 구조를 참조하세요.

여러 템플릿 조각에서 템플릿을 구성할 수도 있습니다. 템플릿 조각은 특정 리소스에 대한 템플릿을 작성하는 방법을 보여주는 예입니다. 예를 들어 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스, Amazon Simple Storage Service(Amazon S3) 도메인, AWS CloudFormation 매핑 등에 대한 조각을 볼 수 있습니다. 조각은 리소스별로 그룹화됩니다. AWS CloudFormation 사용 설명서일반 템플릿 조각 섹션에서 범용 AWS CloudFormation 조각을 찾을 수 있습니다.

Application Manager에서 CloudFormation 템플릿 생성(콘솔)

다음 절차에 따라 AWS Management Console을 사용하여 Application Manager에서 CloudFormation 템플릿을 생성합니다.

Application Manager에서 CloudFormation 템플릿을 생성하려면
  1. AWS Systems Manager 콘솔(https://console.aws.amazon.com/systems-manager/)을 엽니다.

  2. 탐색 창에서 Application Manager를 선택합니다.

  3. [애플리케이션(Applications)] 섹션에서 [CloudFormation 스택(CloudFormation stacks)]을 선택합니다.

  4. [템플릿 라이브러리(Template library)]를 선택한 다음 [템플릿 생성(Create template)]을 선택하거나 기존 템플릿을 선택한 다음 [작업(Actions)], [복제(Clone)]를 선택합니다.

  5. [이름(Name)]에 템플릿이 생성하는 리소스 또는 스택의 용도를 식별하는 데 도움이 되는 템플릿의 이름을 입력합니다.

  6. (옵션) [버전 이름(Version name)]에 템플릿 버전을 식별할 이름 또는 숫자를 입력합니다.

  7. (옵션) [설명(Description)]에 이 템플릿에 대한 정보를 입력합니다.

  8. [코드 편집기(Code editor)] 섹션에서 [YAML] 또는 [JSON]을 선택한 다음 템플릿 코드를 입력하거나 복사하여 붙여 넣습니다.

  9. (옵션) [태그(Tags)] 섹션에서 템플릿에 하나 이상의 태그 키 이름/값 페어를 적용합니다.

  10. (옵션) [권한(Permissions)] 섹션에서 AWS 계정 ID를 입력하고 [계정 추가(Add account)]를 선택합니다. 이 작업은 템플릿에 대한 읽기 권한을 제공합니다. 계정 소유자는 템플릿을 프로비저닝하고 복제할 수 있지만 편집하거나 삭제할 수는 없습니다.

  11. 생성(Create)을 선택합니다. 템플릿은 Systems Manager(SSM) 문서 서비스에 저장됩니다.

Application Manager에서 CloudFormation 템플릿 생성(명령줄)

JSON 또는 YAML로 CloudFormation 템플릿의 콘텐츠를 생성한 후 AWS Command Line Interface(AWS CLI) 또는 AWS Tools for PowerShell을 사용하여 템플릿을 SSM 문서로 저장할 수 있습니다. 각 example resource placeholder를 사용자의 정보로 바꿉니다.

시작하기 전 준비 사항

아직 하지 않은 경우 AWS CLI 또는 AWS Tools for PowerShell를 설치하고 구성합니다. 자세한 내용은 최신 버전의 AWS CLI 설치 또는 업데이트AWS Tools for PowerShell 설치를 참조하세요.

Linux & macOS
aws ssm create-document \ --content file://path/to/template_in_json_or_yaml \ --name "a_name_for_the_template" \ --document-type "CloudFormation" \ --document-format "JSON_or_YAML" \ --tags "Key=tag-key,Value=tag-value"
Windows
aws ssm create-document ^ --content file://C:\path\to\template_in_json_or_yaml ^ --name "a_name_for_the_template" ^ --document-type "CloudFormation" ^ --document-format "JSON_or_YAML" ^ --tags "Key=tag-key,Value=tag-value"
PowerShell
$json = Get-Content -Path "C:\path\to\template_in_json_or_yaml | Out-String New-SSMDocument ` -Content $json ` -Name "a_name_for_the_template" ` -DocumentType "CloudFormation" ` -DocumentFormat "JSON_or_YAML" ` -Tags "Key=tag-key,Value=tag-value"

이 작업이 성공하면 명령에서 다음과 비슷한 응답이 반환됩니다.

{
    "DocumentDescription": {
        "Hash": "c1d9640f15fbdba6deb41af6471d6ace0acc22f213bdd1449f03980358c2d4fb",
        "HashType": "Sha256",
        "Name": "MyTestCFTemplate",
        "Owner": "428427166869",
        "CreatedDate": "2021-06-04T09:44:18.931000-07:00",
        "Status": "Creating",
        "DocumentVersion": "1",
        "Description": "My test template",
        "PlatformTypes": [],
        "DocumentType": "CloudFormation",
        "SchemaVersion": "1.0",
        "LatestVersion": "1",
        "DefaultVersion": "1",
        "DocumentFormat": "YAML",
        "Tags": [
            {
                "Key": "Templates",
                "Value": "Test"
            }
        ]
    }

템플릿 편집

다음 절차에 따라 Application Manager에서 CloudFormation 템플릿을 편집합니다. 업데이트된 템플릿을 사용하는 스택을 프로비저닝한 후 CloudFormation에서 템플릿 변경 사항을 사용할 수 있습니다.

Application Manager에서 CloudFormation 템플릿을 편집하려면
  1. AWS Systems Manager 콘솔(https://console.aws.amazon.com/systems-manager/)을 엽니다.

  2. 탐색 창에서 Application Manager를 선택합니다.

  3. [애플리케이션(Applications)] 섹션에서 [CloudFormation 스택(CloudFormation stacks)]을 선택합니다.

  4. [템플릿 라이브러리(Template library)]를 선택합니다.

  5. 템플릿을 선택한 다음 [작업(Actions)]과 [편집(Edit)]을 차례대로 선택합니다. 템플릿의 이름은 변경할 수 없지만 다른 모든 세부 정보는 변경할 수 있습니다.

  6. Save(저장)를 선택합니다. 템플릿은 Systems Manager 문서 서비스에 저장됩니다.