Documents
1 AWS Systems Manager (SSM) Documents 소개
- AWS Systems Manager (SSM) Documents는 AWS 리소스를 관리하고 자동화하는 데 사용되는 구성 파일입니다.
- SSM Documents는 시스템 관리 작업을 정의하고 실행하는 데 필요한 정보를 포함하고 있습니다.
- 이를 통해 복잡한 관리 작업을 간소화하고 일관성 있게 수행할 수 있습니다.
2 SSM Documents의 구조
- SSM Documents는 JSON 또는 YAML 형식으로 작성됩니다.
- 주요 구성 요소는 다음과 같습니다:
- 파라미터 (Parameters): 문서 실행 시 필요한 입력 값을 정의합니다.
- 액션 (Actions): 실제로 수행할 작업을 정의합니다.
- 스키마 버전 (Schema Version): 문서의 구조를 정의하는 버전 정보입니다.
3 SSM Documents의 종류
- AWS Systems Manager는 다양한 종류의 Documents를 제공합니다:
- Command documents: 인스턴스에서 명령을 실행합니다.
- Automation documents: 복잡한 작업을 자동화합니다.
- Policy documents: 인스턴스의 상태를 정의하고 유지합니다.
- Session documents: Session Manager 세션을 구성합니다.
4 SSM Documents 사용 예시
- 다음은 간단한 SSM Document 예시입니다:
예시: 인스턴스에 소프트웨어 설치
schemaVersion: '2.2'
description: 'Install software on EC2 instance'
parameters:
software:
type: String
description: 'Software package to install'
default: 'htop'
mainSteps:
- action: 'aws:runShellScript'
name: 'installSoftware'
inputs:
runCommand:
- 'sudo yum update -y'
- 'sudo yum install -y {{ software }}'
- 이 Document는 EC2 인스턴스에 지정된 소프트웨어를 설치합니다.
parameters
섹션에서 설치할 소프트웨어를 지정할 수 있습니다.mainSteps
섹션에서 실제 설치 명령을 정의합니다.
5 기존 AWS SSM Documents 활용
- AWS는 많은 미리 정의된 SSM Documents를 제공합니다.
- 이러한 Documents를 활용하면 일반적인 관리 작업을 쉽게 수행할 수 있습니다.
- 예를 들어,
AWS-RunPatchBaseline
은 인스턴스 패치 관리에 사용됩니다.
6 SSM Documents의 장점
- 일관성: 동일한 작업을 여러 리소스에 일관되게 적용할 수 있습니다.
- 자동화: 복잡한 작업을 자동화하여 인적 오류를 줄일 수 있습니다.
- 버전 관리: Documents의 버전을 관리하여 변경 사항을 추적할 수 있습니다.
- 재사용성: 한 번 작성한 Document를 여러 환경에서 재사용할 수 있습니다.