AWS CloudFormation으로 Slack 리소스에서 AWS Support 앱 생성 - AWS Support

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

AWS CloudFormation으로 Slack 리소스에서 AWS Support 앱 생성

Slack의 AWS Support 앱은 리소스 및 인프라를 생성하고 관리하는 데 소요되는 시간을 줄일 수 있도록 AWS 리소스를 모델링하고 설정하는 데 도움이 되는 서비스인 AWS CloudFormation과 통합됩니다. 필요한 모든 AWS 리소스(예: AccountAlias 및 SlackChannelConfiguration)를 설명하는 템플릿을 생성하면 AWS CloudFormation에서 이러한 리소스를 프로비저닝하고 구성합니다.

AWS CloudFormation을 사용할 때 템플릿을 재사용하여 AWS Support 앱 리소스를 일관되고 반복적으로 설정할 수 있습니다. 리소스를 한 번 설명한 후 여러 AWS 계정 및 리전에서 동일한 리소스를 반복적으로 프로비저닝할 수 있습니다.

AWS Support 앱 및 AWS CloudFormation 템플릿

AWS Support 앱 및 관련 서비스에 대한 리소스를 프로비저닝하고 구성하려면 AWS CloudFormation 템플릿을 이해해야 합니다. 템플릿은 JSON 또는 YAML로 서식 지정된 텍스트 파일입니다. 이 템플릿은 AWS CloudFormation 스택에서 프로비저닝할 리소스에 대해 설명합니다. JSON 또는 YAML에 익숙하지 않은 경우 AWS CloudFormation Designer를 사용하면 AWS CloudFormation 템플릿을 시작하는 데 도움이 됩니다. 자세한 내용은 AWS CloudFormation 사용 설명서에서 AWS CloudFormation Designer이란 무엇입니까?를 참조하세요.

AWS Support 앱은 AWS CloudFormation에서 AccountAlias 및 SlackChannelConfiguration 생성을 지원합니다. AccountAlias 및 SlackChannelConfiguration 리소스에 대한 JSON 및 YAML 템플릿의 예를 비롯한 자세한 내용은 AWS CloudFormation 사용 설명서에서 AWS Support 앱 리소스 유형 참조를 참조하세요.

조직을 위한 Slack 구성 리소스 생성

CloudFormation 템플릿을 사용하여 AWS Support 앱에 필요한 리소스를 만들 수 있습니다. 조직의 관리 계정인 경우 템플릿을 사용하여 구성원 계정에 대한 리소스를 AWS Organizations에서 생성할 수 있습니다.

예를 들어 템플릿을 사용하여 조직 내 모든 계정에 대해 동일한 Slack 작업 영역 구성을 생성한 다음 별도의 템플릿을 사용하여 특정 AWS 계정 또는 조직 단위(OU)에 대해 서로 다른 Slack 채널 구성을 생성할 수 있습니다. 또한 템플릿을 사용하여 멤버 계정이 AWS 계정에 대해 원하는 Slack 채널을 구성할 수 있도록 Slack 작업 공간 구성을 생성할 수 있습니다.

CloudFormation 템플릿 사용 여부를 선택할 수 있습니다. CloudFormation 템플릿을 사용하지 않는 경우 다음 수동 단계를 대신 완료할 수 있습니다.

  • AWS Support Center Console에서 AWS Support 앱 리소스를 생성합니다.

  • AWS Support 앱을 사용하도록 여러 계정에 권한을 부여하려면 AWS Support으로 지원 사례를 생성하세요.

  • RegisterSlackWorkspaceForOrganization API 작업을 호출하여 계정에 대한 Slack 작업 영역을 등록합니다. CloudFormation 스택은 이 API 작업을 자동으로 호출합니다.

다음 절차에 따라 조직에 CloudFormation 템플릿을 업로드하세요. AWS Support App resource type reference 페이지에서 예제 템플릿을 사용할 수 있습니다.

템플릿은 CloudFormation에 다음 리소스를 생성하도록 지시합니다.

Slack용 CloudFormation 템플릿 업데이트

시작하려면 다음 템플릿을 사용하여 스택을 생성하세요. 템플릿을 Slack 작업 영역 및 채널의 유효한 값으로 바꿔야 합니다.

참고

조직의 AccountAlias 리소스를 만들 때는 템플릿을 사용하지 않는 것이 좋습니다. AccountAlias 리소스는 AWS Support 앱에서 AWS 계정을 고유하게 식별합니다. 멤버 계정은 지원 센터 콘솔에 계정 이름을 입력할 수 있습니다. 자세한 내용은 Slack 작업 영역 승인 섹션을 참조하세요.

Slack용 CloudFormation 템플릿을 업데이트하려면
  1. 조직의 관리 계정인 경우 멤버 계정이 CloudFormation을 사용하여 리소스를 생성하려면 계정에 대한 Slack 작업 영역을 수동으로 승인해야 합니다. 아직 이를 실행하지 않았다면 Slack 작업 영역 승인 단원을 참조하세요.

  2. AWS Support App resource type reference 페이지에서 원하는 리소스의 JSON 또는 YAML 템플릿을 복사합니다.

  3. 텍스트 편집기에서 템플릿을 새 파일에 붙여넣습니다.

  4. 템플릿에서 원하는 파라미터를 지정합니다. 최소한 다음 필드의 값을 변경합니다.

    • TeamId를 Slack 작업 영역 ID로

    • ChannelId를 Slack 채널 ID 사용

    • ChannelName를 Slack 채널 구성을 식별하는 이름으로

    작은 정보

    작업 영역 및 채널 ID를 찾으려면 브라우저에서 Slack 채널을 여세요. URL에서 워크스페이스 ID는 첫 번째 식별자이고 채널 ID는 두 번째 식별자입니다. 예를 들어, https://app.slack.com/client/T012ABCDEFG/C01234A5BCD에서 T012ABCDEFG는 작업 영역 ID이고 C01234A5BCD는 채널 ID에 해당합니다.

  5. 파일을 JSON 또는 YAML 파일으로 저장합니다.

관리 계정에 대한 스택 만들기

다음으로 조직의 관리 계정에 대한 스택을 만들어야 합니다. 이 단계에서는 RegisterSlackWorkspaceForOrganization API 작업을 자동으로 호출하고 Slack으로 작업 영역을 승인합니다.

참고

관리 계정에 대한 이전 절차에서 업데이트한 Slack 작업 영역 구성 템플릿을 업로드하는 것이 좋습니다. AWS Support 앱을 사용하도록 관리 계정도 구성하지 않는 한 Slack 채널 구성 템플릿을 업로드할 필요가 없습니다.

관리 계정에 대한 스택을 생성하려면
  1. 조직의 관리 계정으로 AWS Management Console에 로그인합니다.

  2. AWS CloudFormation 콘솔(https://console.aws.amazon.com/cloudformation)을 엽니다.

  3. 아직 선택하지 않았다면 Region selector(리전 선택기)에서 다음 AWS 리전을 선택합니다.

    • 유럽(프랑크푸르트)

    • 유럽(아일랜드)

    • 유럽(런던)

    • 미국 동부(버지니아 북부)

    • 미국 동부(오하이오)

    • 미국 서부(오레곤)

    • 아시아 태평양(싱가포르)

    • 아시아 태평양(도쿄)

    • 캐나다(중부)

  4. 절차에 따라 스택을 생성합니다. 자세한 내용은 AWS CloudFormation 콘솔에서 스택 생성 단원을 참조하세요.

    CloudFormation이 스택을 성공적으로 생성한 후에는 동일한 템플릿을 사용하여 조직의 스택 세트를 만들 수 있습니다.

조직을 위한 스택 세트 생성

다음으로 Slack 작업 영역 구성에 동일한 템플릿을 사용하여 service-managed 권한이 있는 스택 세트를 생성합니다. 스택 세트를 사용하여 전체 조직을 위한 스택을 만들거나 원하는 OU를 지정할 수 있습니다. 자세한 내용은 스택 세트 생성을 참조하세요.

이 절차는 RegisterSlackWorkspaceForOrganization API 작업도 자동으로 호출합니다. 이 API 작업은 멤버 계정에 대해 Slack으로 작업 영역을 승인합니다.

조직을 위한 스택 세트를 생성하려면
  1. 조직의 관리 계정으로 AWS Management Console에 로그인합니다.

  2. AWS CloudFormation 콘솔(https://console.aws.amazon.com/cloudformation)을 엽니다.

  3. 아직 설정하지 않았다면 Region selector(리전 선택기)에서 이전 절차에서 사용한 것과 동일한 AWS 리전을 선택합니다.

  4. 탐색 창에서 StackSets(스택 세트)를 선택합니다.

  5. Create StackSet(StackSet 생성)을 선택합니다.

  6. Choose a template(템플릿 선택) 페이지에서 다음 옵션의 기본 옵션을 그대로 두세요.

    • Permissions(권한)의 경우 Service-managed permissions(서비스 관리형 권한)를 유지합니다.

    • Prerequisite - Prepare template(사전 조건 - 템플릿 준비)에서 Template is ready(템플릿 준비 완료)를 선택합니다.

  7. Specify template(템플릿 지정)에서 Upload a template file(템플릿 파일 업로드)을 선택한 다음 Choose file(파일 선택)을 선택합니다.

  8. 파일을 선택한 후 Next(다음)를 선택합니다.

  9. Specify stack details(스택 세부 정보 지정) 페이지에서 support-app-slack-workspace 등의 스택 이름을 입력한 후 설명을 입력하고 Next(다음)를 선택합니다.

  10. Configure StackSet options(StackSet 옵션 구성) 페이지에서 기본 옵션을 유지하고 Next(다음)를 선택합니다.

  11. Set deployment options(배포 옵션 설정) 페이지에서 Add stacks to stack set(스택 세트에 스택 추가)의 기본 Deploy new stacks(새 스택 배포) 옵션을 그대로 유지합니다.

  12. Deployment targets(배포 대상)의 경우 전체 조직 또는 특정 OU에 대한 스택을 생성할지 선택합니다. OU를 선택한 경우 OU ID를 입력합니다.

  13. Specify regions(리전 지정)에는 다음 AWS 리전 중 하나만 입력합니다.

    • 유럽(프랑크푸르트)

    • 유럽(아일랜드)

    • 유럽(런던)

    • 미국 동부(버지니아 북부)

    • 미국 동부(오하이오)

    • 미국 서부(오레곤)

    • 아시아 태평양(싱가포르)

    • 아시아 태평양(도쿄)

    • 캐나다(중부)

    참고:
    • 워크플로를 간소화하려면 3단계에서 선택한 것과 동일한 AWS 리전을 사용하는 것이 좋습니다.

    • 둘 이상의 AWS 리전을 선택하면 스택 생성과 충돌이 발생할 수 있습니다.

  14. 배포 옵션(Deployment options)의 경우 내결함성 - 선택 사항(Failure tolerance - optional)에는 CloudFormation이 작업을 중지하기 전에 스택이 실패할 수 있는 계정 수를 입력합니다. 추가하려는 계정 수에서 1을 뺀 수를 입력하는 것이 좋습니다. 예를 들어 지정한 OU에 10개의 멤버 계정이 있는 경우 9를 입력합니다. 즉, CloudFormation이 9번 실패하더라도 하나 이상의 계정이 성공합니다.

  15. 다음(Next)을 선택합니다.

  16. Review(검토) 페이지에서 옵션을 검토하고 Submit(제출)을 선택하세요. Stack instance(스택 인스턴스) 탭에서 스택의 상태를 확인할 수 있습니다.

  17. (선택 사항) 이 절차를 반복하여 Slack 채널 구성용 템플릿을 업로드합니다. 예제 템플릿은 또한 IAM 역할을 생성하고 AWS 관리형 정책을 연결합니다. 이 역할에는 다른 서비스에 액세스하는 데 필요한 권한이 있습니다. 자세한 내용은 AWS Support 앱에 대한 액세스 관리 섹션을 참조하세요.

    Slack 채널 구성을 만들기 위한 스택 세트를 생성하지 않는 경우 멤버 계정에서 Slack 채널을 수동으로 구성할 수 있습니다. 자세한 내용은 Slack 채널 구성 섹션을 참조하세요.

CloudFormation에서 스택을 생성한 후 각 멤버 계정은 지원 센터 콘솔에 로그인하여 구성된 Slack 작업 영역 및 채널을 찾을 수 있습니다. 그런 다음 AWS 계정에서 AWS Support 앱을 사용할 수 있습니다. Slack 채널에서 지원 사례 생성 섹션을 참조하세요.

작은 정보

새 템플릿을 업로드해야 하는 경우 이전에 지정한 것과 동일한 AWS 리전을 사용하는 것이 좋습니다.

CloudFormation에 대해 자세히 알아보기

CloudFormation에 대한 자세한 내용은 다음 리소스를 참조하세요.

Terraform을 사용하여 AWS Support 앱 리소스 생성

Terraform을 사용하여 AWS 계정을 위한 AWS Support 앱 리소스를 생성할 수도 있습니다. Terraform은 클라우드 애플리케이션에 사용할 수 있는 코드형 인프라(IaC) 도구입니다. 계정에 CloudFormation 스택을 배포하는 대신 Terraform을 사용하여 AWS Support 앱 리소스를 생성할 수 있습니다.

Terraform을 설치한 후 원하는 AWS Support 앱 리소스를 지정할 수 있습니다. Terraform은 RegisterSlackWorkspaceForOrganization API 작업을 호출하여 사용자를 위한 Slack 작업 영역을 등록하고 리소스를 생성합니다. 그런 다음 지원 센터 콘솔에 로그인하여 구성된 Slack 작업 영역 및 채널을 찾을 수 있습니다.

주의
  • 조직의 관리 계정인 경우 멤버 계정이 Terraform을 사용하여 리소스를 생성하려면 계정에 대한 Slack 작업 영역을 수동으로 승인해야 합니다. 아직 이를 실행하지 않았다면 Slack 작업 영역 승인 단원을 참조하세요.

  • CloudFormation 스택 세트와 달리 Terraform을 사용하여 조직의 OU에 대한 AWS Support 앱 리소스를 생성할 수 없습니다.

  • AWS CloudTrail의 Terraform에서 이러한 업데이트에 대한 이벤트 기록을 찾을 수도 있습니다. 이러한 이벤트의 eventSourcecloudcontrolapi.amazonaws.comsupportapp.amazonaws.com입니다. 자세한 내용은 AWS CloudTrail을 사용하여 Slack API의 AWS Support 앱 호출 로깅 섹션을 참조하세요.

자세히 알아보기

Terraform에 대한 자세한 내용은 다음 주제를 참조하세요.