AWS Systems Manager
사용 설명서

SSM 문서 플러그인 레퍼런스

이 참조는 AWS Systems Manager(SSM) 문서에서 지정할 수 있는 작업 또는 플러그인을 설명합니다. 이 참조에는 AWS Systems Manager Automation 문서 플러그인에 대한 정보는 들어 있지 않습니다. 자동화 문서 플러그인에 대한 자세한 정보는 Systems Manager Automation 작업 참조 단원을 참조하십시오.

Systems Manager는 Systems Manager 문서의 콘텐츠를 읽어 관리형 인스턴스에서 수행할 작업을 결정합니다. 각 문서에는 코드 실행 섹션이 포함됩니다. 문서의 스키마 버전에 따라 이 코드 실행 섹션이 하나 이상의 플러그인 또는 단계를 포함할 수 있습니다. 이 도움말 주제의 목적을 위해, 플러그인 및 단계를 플러그인으로 부릅니다. 이 단원에는 각 Systems Manager 플러그인에 대한 정보가 포함되어 있습니다. 문서 생성 및 스키마 버전 간 차이를 비롯해 문서에 대한 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

참고

여기서 설명하는 일부 플러그인은 Windows Server 인스턴스 또는 Linux 인스턴스 중 하나에서만 실행될 수 있습니다. 플러그인마다 플랫폼 종속성이 표시되어 있습니다.

최상위 수준 요소

최상위 수준 요소는 모든 Systems Manager 문서에 공통적입니다. 최상위 수준 요소는 Systems Manager 문서의 구조를 제공합니다.

속성

schemaVersion

스키마의 버전입니다.

형식: 버전

필수 여부: 예

description

구성에 대한 설명입니다.

형식: 문자열

필수 여부: 아니요

파라미터

parameters는 문서를 처리할 때 실행할 하나 이상의 파라미터를 포함하는 구조입니다. 파라미터는 실행 시간에, 문서에서 또는 Systems Manager Parameter Store를 사용해 지정할 수 있습니다. 자세한 내용은 AWS Systems Manager Parameter Store 단원을 참조하십시오.

형식: 구조

parameters 구조는 다음의 필드 및 값을 수락합니다.

  • type: (필수) 허용되는 값은 다음과 같습니다. String, StringList, Boolean, Integer, MapList, StringMap 각 유형의 예를 보려면 다음 단원의 type 예를 참조하십시오.

  • description: (선택 사항) 파라미터에 대한 설명입니다.

  • default: (선택 사항) 파라미터의 기본값 또는 Parameter Store 내 파라미터에 대한 참조입니다.

  • allowedValues: (선택 사항) 파라미터에 허용되는 값입니다.

  • allowedPattern: (선택 사항) 파라미터가 일치해야 하는 정규식입니다.

  • displayType: (선택 사항) AWS 콘솔에서 textfield 또는 textarea를 표시하는 데 사용됩니다. textfield는 한 줄 텍스트 상자이고, textarea는 여러 줄 텍스트 상자입니다.

  • minItems: (선택 사항) 허용되는 최소 항목 수입니다.

  • maxItems: (선택 사항) 허용되는 최대 항목 수입니다.

  • minChars: (선택 사항) 허용되는 파라미터 문자 최소 개수입니다.

  • maxChars: (선택 사항) 허용되는 파라미터 문자 최대 개수입니다.

runtimeConfig

(스키마 버전 1.2만 해당) 하나 이상의 Systems Manager 플러그인에 의해 적용되는 인스턴스 구성입니다. 플러그인은 순서대로 실행되지 않습니다.

형식: Dictionary<string,PluginConfiguration>

필수 여부: 아니요

mainSteps

(스키마 버전 0.3, 2.0, 2.2만 해당) 하나 이상의 Systems Manager 플러그인에 의해 적용되는 인스턴스 구성입니다. 플러그인은 단계 내에서 작업으로 정리됩니다. 단계는 이 문서에 나열된 순서대로 실행됩니다.

형식: Dictionary<string,PluginConfiguration>

필수 여부: 아니요

type

이 단원에는 각 파라미터 type의 예제가 포함되어 있습니다.

type 설명 사용 사례

문자열

큰따옴표로 묶인 0개 이상의 유니코드 문자 시퀀스입니다. 이스케이프하려면 백슬래시를 사용합니다.

"i-1234567890abcdef0"

"InstanceId":{ "type":"String", "description":"(Required) The target EC2 instance ID." }

StringList

쉼표로 구분되는 String 항목의 목록입니다.

["cd ~", "pwd"]

"commands":{ "type":"StringList", "description":"(Required) Specify a shell script or a command to run.", "minItems":1, "displayType":"textarea" },

부울

true 또는 false만 허용됩니다. "true" 또는 0은 허용되지 않습니다.

true

"canRun": { "type": "Boolean", "description": "", "default": true, }

정수

정수입니다. 십진수(예: 3.14159) 또는 큰따옴표로 묶인 숫자(예: "3")는 허용되지 않습니다.

39 또는 -5

"timeout": { "type": "Integer", "description": "The type of action to perform.", "default": 100 }

StringMap

키-값 매핑입니다. 키는 문자열만 가능합니다. 예: { "type": "object" }

{ "NotificationType":"Command", "NotificationEvents":[ "Failed" ], "NotificationArn":"$dependency.topicArn" }
"notificationConfig" : { "type" : "StringMap", "description" : "The configuration for events to be notified about", "default" : { "NotificationType" : "Command", "NotificationEvents" : ["Failed"], "NotificationArn" : "$dependency.topicArn" }, "maxChars" : 150 }

MapList

StringMap 항목의 목록입니다.

[ { "DeviceName" : "/dev/sda1", "Ebs" : { "VolumeSize" : "50" } }, { "DeviceName" : "/dev/sdm", "Ebs" : { "VolumeSize" : "100" } } ]
"blockDeviceMappings" : { "type" : "MapList", "description" : "The mappings for the create image inputs", "default" : [{"DeviceName":"/dev/sda1","Ebs":{"VolumeSize":"50"}},{"DeviceName":"/dev/sdm","Ebs":{ "VolumeSize":"100"}}], "maxItems": 2 }

aws:applications

EC2 인스턴스에서 애플리케이션을 설치, 복구 또는 제거합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"runtimeConfig":{ "aws:applications":{ "properties":[ { "id":"0.aws:applications", "action":"{{ action }}", "parameters":"{{ parameters }}", "source":"{{ source }}", "sourceHash":"{{ sourceHash }}" } ] }

속성

action

수행할 작업입니다.

형식: 열거형

유효한 값: Install | Repair | Uninstall

필수 여부: 예

파라미터

설치 프로그램에 대한 파라미터입니다.

형식: 문자열

필수 여부: 아니요

source

애플리케이션용 .msi 파일의 URL입니다.

형식: 문자열

필수 여부: 예

sourceHash

.msi 파일의 SHA256 해시입니다.

형식: 문자열

필수 여부: 아니요

aws:cloudWatch

데이터를 Windows Server에서 Amazon CloudWatch 또는 Amazon CloudWatch Logs으로 데이터를 내보내고 CloudWatch 지표를 사용해 데이터를 모니터링합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. Amazon EC2와 CloudWatch 통합을 구성하는 자세한 정보는 Amazon CloudWatch로 로그, 이벤트 및 성능 카운터 전송을 참조하십시오. 문서에 대한 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

다음의 데이터 형식을 내보내고 모니터링할 수 있습니다.

ApplicationEventLog

CloudWatch Logs로 애플리케이션 이벤트 로그 데이터를 보냅니다.

CustomLogs

CloudWatch Logs로 텍스트 기반 로그 파일을 보냅니다. CloudWatch 플러그인은 로그 파일의 지문을 생성합니다. 그러면 시스템이 각 지문에 데이터 오프셋을 연결합니다. 플러그인은 변경 사항이 있을 경우 파일을 업로드하고, 오프셋을 기록하고, 지문에 오프셋을 연결합니다. 이 방법은 사용자가 플러그인을 활성화하고, 대량 파일을 포함하는 디렉터리에 서비스를 연결하고, 시스템이 모든 파일을 업로드하는 상황을 방지하기 위해 사용됩니다.

주의

애플리케이션이 폴링 도중 로그를 자르거나 정리하려 할 경우 LogDirectoryPath에 지정된 모든 로그에서 항목이 손실될 수 있음을 유의하십시오. 예를 들어 로그 파일 크기를 제한하려는 경우, 해당 제한에 도달하면 새 로그 파일을 생성한 후 새 파일에 데이터를 계속 기록합니다.

ETW

CloudWatch Logs로 Windows용 이벤트 추적(ETW) 데이터를 보냅니다. Microsoft Windows Server 2003은 지원되지 않습니다.

IIS

CloudWatch Logs로 IIS 로그 데이터를 보냅니다.

PerformanceCounter

CloudWatch로 Windows 성능 카운터를 보냅니다. CloudWatch에 지표로 업로드할 여러 범주를 선택할 수 있습니다. 업로드하려는 각 성능 카운터에 대해 고유한 ID(예: "PerformanceCounter2", "PerformanceCounter3" 등)를 지정하여 PerformanceCounter 섹션을 생성하고 해당 속성을 구성합니다.

참고

SSM 에이전트 또는 CloudWatch 플러그인이 중지된 경우 성능 측정 데이터가 CloudWatch에 기록되지 않습니다. 이 동작은 사용자 지정 로그나 Windows 이벤트 로그와 다릅니다. 사용자 지정 로그와 Windows 이벤트 로그는 성능 측정 데이터를 보관했다가 SSM 에이전트 또는 CloudWatch 플러그인이 사용 가능해지면 CloudWatch에 업로드합니다.

SecurityEventLog

CloudWatch Logs로 보안 이벤트 로그 데이터를 보냅니다.

SystemEventLog

CloudWatch Logs로 시스템 이벤트 로그 데이터를 보냅니다.

데이터에 다음 대상을 정의할 수 있습니다.

CloudWatch

성능 카운터 지표 데이터가 보내지는 대상입니다. 고유한 ID(예: "CloudWatch2", CloudWatch3" 등)를 갖는 섹션을 추가하고 새 ID마다 다른 리전을 지정하여 동일한 데이터를 여러 위치로 보낼 수 있습니다.

CloudWatchLogs

로그 데이터가 보내지는 대상입니다. 고유한 ID(예: "CloudWatchLogs2", CloudWatchLogs3" 등)를 갖는 섹션을 추가하고 새 ID마다 다른 리전을 지정하여 동일한 데이터를 여러 위치로 보낼 수 있습니다.

구문

"runtimeConfig":{ "aws:cloudWatch":{ "settings":{ "startType":"{{ status }}" }, "properties":"{{ properties }}" } }

설정 및 속성

AccessKey

액세스 키 ID입니다. 이 속성은 IAM 역할을 사용해 인스턴스를 시작하지 않은 한 필수입니다. 이 속성은 SSM과 함께 사용할 수 없습니다.

형식: 문자열

필수 여부: 아니요

CategoryName

Performance Monitor의 성능 카운터 범주입니다.

형식: 문자열

필수 여부: 예

CounterName

Performance Monitor의 성능 카운터 이름입니다.

형식: 문자열

필수 여부: 예

CultureName

타임스탬프가 기록되는 로캘입니다. CultureName이 공백이면 Windows Server 인스턴스에서 현재 사용 중인 것과 같은 로캘로 값이 기본 설정됩니다.

형식: 문자열

유효한 값: 지원되는 값 목록은 Microsoft 웹 사이트에서 National Language Support(NLS)를 참조하십시오. div, div-MV, huhu-HU 값은 지원되지 않습니다.

필수 여부: 아니요

DimensionName

Amazon CloudWatch 지표의 차원입니다. DimensionName을 지정할 경우 DimensionValue를 지정해야 합니다. 이런 파라미터는 메트릭 나열 시 또 다른 보기를 제공합니다. 특정 차원에 속하는 모든 지표를 볼 수 있도록 여러 지표에서 같은 차원을 사용할 수 있습니다.

형식: 문자열

필수 여부: 아니요

DimensionValue

Amazon CloudWatch 지표의 차원 값입니다.

형식: 문자열

필수 여부: 아니요

인코딩

사용할 파일 인코딩입니다(예: UTF-8). 표시 이름이 아니라 인코딩 이름을 사용하십시오.

형식: 문자열

유효한 값: 지원되는 값 목록은 MSDN 라이브러리에서 Encoding Class 항목을 참조하십시오.

필수 여부: 예

Filter

로그 이름의 접두사입니다. 모든 파일을 모니터링하려면 이 파라미터를 공백으로 둡니다.

형식: 문자열

유효한 값: 지원되는 값 목록은 MSDN 라이브러리에서 FileSystemWatcherFilter Property 항목을 참조하십시오.

필수 여부: 아니요

Flows

데이터의 대상(CloudWatch 또는 CloudWatch Logs).과 함께 업로드할 각 데이터 형식입니다. 예를 들어 "Id": "PerformanceCounter"에서 정의된 성능 카운터를 "Id": "CloudWatch"에서 정의된 CloudWatch 대상으로 보내려면 "PerformanceCounter,CloudWatch"를 입력합니다. 마찬가지로, 사용자 지정 로그, ETW 로그 및 시스템 로그를 "Id": "ETW"에서 정의된 CloudWatch Logs 대상으로 보내려면 "(ETW),CloudWatchLogs"를 입력합니다. 또한, 같은 성능 카운터 또는 로그 파일을 두 개 이상의 대상으로 보낼 수 있습니다. 예를 들어, 애플리케이션 로그를 "Id": "CloudWatchLogs""Id": "CloudWatchLogs2"에서 정의된 두 개의 대상으로 보내려면 "ApplicationEventLog,(CloudWatchLogs, CloudWatchLogs2)"를 입력합니다.

형식: 문자열

유효한 값(원본): ApplicationEventLog | CustomLogs | ETW | PerformanceCounter | SystemEventLog | SecurityEventLog

유효한 값(대상): CloudWatch | CloudWatchLogs | CloudWatchn | CloudWatchLogsn

필수 여부: 예

FullName

구성 요소의 전체 이름입니다.

형식: 문자열

필수 여부: 예

Id

데이터 원본 또는 대상을 식별합니다. 이 식별자는 구성 파일 내에서 고유해야 합니다.

형식: 문자열

필수 여부: 예

InstanceName

성능 카운터 인스턴스의 이름입니다. 각 성능 카운터 구성 요소가 메트릭을 하나씩만 지원하므로, 모든 인스턴스를 나타내기 위해 별표(*)를 사용하지 마십시오. 하지만 _Total을 사용할 수는 있습니다.

형식: 문자열

필수 여부: 예

수준

Amazon CloudWatch로 보낼 메시지의 유형입니다.

형식: 문자열

유효한 값:

  • 1 - 오류 메시지만 업로드됩니다.

  • 2 - 경고 메시지만 업로드됩니다.

  • 4 - 정보 메시지만 업로드됩니다.

이들 값을 적절히 더하여 두 가지 이상의 메시지 유형을 포함할 수 있습니다. 예를 들어 3은 오류 메시지(1)와 경고 메시지(2)가 포함된다는 의미입니다. 7의 값은 오류 메시지(1), 경고 메시지(2) 및 정보 메시지(4)가 포함된다는 의미입니다.

필수 여부: 예

참고

Windows 보안 로그는 수준을 7로 설정해야 합니다.

LineCount

로그 파일을 식별하는 헤더의 행 수입니다. 예를 들어 IIS 로그 파일에 있는 헤더들은 사실상 동일합니다. 3을 입력하면 로그 파일 헤더에서 처음 나오는 세 줄을 읽어 식별하는 식입니다. IIS 로그 파일에서 세 번째 줄은 날짜와 타임스탬프(로그 파일 간에 차이가 있음)입니다.

형식: 정수

필수 여부: 아니요

LogDirectoryPath

CustomLogs의 경우, 로그가 Amazon EC2 인스턴스에서 저장되는 경로입니다. IIS 로그의 경우, 개별 사이트에 대해 IIS 로그가 저장되는 폴더입니다(예: C:\\inetpub\\logs\\LogFiles\\W3SVCn). IIS 로그에는 W3C 로그 형식만 지원됩니다. IIS, NCSA 및 사용자 지정 형식은 지원되지 않습니다.

형식: 문자열

필수 여부: 예

LogGroup

로그 그룹의 이름. 이 이름은 CloudWatch 콘솔의 로그 그룹 화면에 표시됩니다.

형식: 문자열

필수 여부: 예

LogName

로그 파일의 이름입니다.

  1. 로그 이름을 찾으려면 이벤트 뷰어의 탐색 창에서 Applications and Services Logs(애플리케이션 및 서비스 로그)를 클릭합니다.

  2. 로그 목록에서 업로드하려는 로그(예: Microsoft>Windows>Backup>Operational)를 마우스 오른쪽 버튼으로 클릭한 후 Create Custom View(사용자 지정 보기 생성)를 클릭합니다.

  3. Create Custom View(사용자 지정 보기 생성) 대화 상자에서 XML 탭을 클릭합니다. LogName은 <Select Path=> 태그 안에 있습니다(예: Microsoft-Windows-Backup). 이 텍스트를 LogName 파라미터에 복사합니다.

형식: 문자열

유효한 값: Application | Security | System | Microsoft-Windows-WinINet/Analytic

필수 여부: 예

LogStream

대상 로그 스트림입니다. 기본값인 {instance_id}를 사용하는 경우 이 인스턴스의 인스턴스 ID가 로그 스트림 이름으로 사용됩니다.

형식: 문자열

유효한 값: {instance_id} | {hostname} | {ip_address} <log_stream_name>

미리 존재하지 않는 로그 스트림 이름을 입력하면 CloudWatch Logs에서 이 이름을 자동으로 생성합니다. 리터럴 문자열이나 사전 정의된 변수({instance_id}, {hostname}, {ip_address}) 또는 세 변수 모두의 조합을 사용하여 로그 스트림 이름을 정의할 수 있습니다.

이 파라미터에 지정된 로그 스트림 이름은 CloudWatch 콘솔의 로그 그룹 > <YourLogStream>에 대한 스트림 화면에 나타납니다.

필수 여부: 예

MetricName

그 아래에 성능 데이터가 나타나도록 하려는 CloudWatch 지표입니다.

참고

이름에 특수 문자를 사용할 수 없습니다. 사용하면 측정치 및 연결된 경보가 작동하지 않을 수 있습니다.

형식: 문자열

필수 여부: 예

NameSpace

성능 카운터 데이터가 기록될 지표 네임스페이스입니다.

형식: 문자열

필수 여부: 예

PollInterval

새 성능 카운터 및 로그 데이터가 업로드되기 전에 경과해야 하는 시간(초)입니다.

형식: 정수

유효한 값: 이 값을 5초 이상으로 설정합니다. 15초(00:00:15)를 권장합니다.

필수 여부: 예

리전

로그 데이터를 보내려는 AWS 리전입니다. 로그 데이터를 보내는 다른 리전으로 성능 카운터를 보낼 수 있지만, 이 파라미터를 인스턴스가 실행 중인 것과 같은 리전으로 설정하는 것이 좋습니다.

형식: 문자열

유효한 값: Systems Manager 및 CloudWatch Logs에서 모두 지원하는 AWS 리전의 리전 ID입니다(예: us-east-2, eu-west-1ap-southeast-1). 각 서비스에서 지원하는 AWS 리전의 목록은 AWS General ReferenceAWS Systems ManagerAmazon CloudWatch Logs를 참조하십시오.

필수 여부: 예

SecretKey

보안 액세스 키입니다. 이 속성은 IAM 역할을 사용해 인스턴스를 시작하지 않은 한 필수입니다.

형식: 문자열

필수 여부: 아니요

startType

인스턴스에서 CloudWatch를 활성화 또는 비활성화합니다.

형식: 문자열

유효한 값: Enabled | Disabled

필수 여부: 예

TimestampFormat

사용하려는 타임스탬프 형식입니다. 지원되는 값 목록은 MSDN 라이브러리에서 Custom Date and Time Format Strings 항목을 참조하십시오.

형식: 문자열

필수 여부: 예

TimeZoneKind

로그의 타임스탬프에 시간대 정보가 포함되어 있지 않을 때 시간대 정보를 제공합니다. 이 파라미터가 공백으로 남겨져 있고 타임스탬프에 표준 시간대 정보가 포함되어 있지 않으면, CloudWatch Logs가 기본적으로 현지 표준 시간대로 설정됩니다. 타임스탬프에 표준 시간대 정보가 이미 포함되어 있는 경우 이 파라미터는 무시됩니다.

형식: 문자열

유효한 값: Local | UTC

필수 여부: 아니요

단위

지표의 측정 단위입니다.

형식: 문자열

유효한 값: Seconds | Microseconds | Milliseconds | Bytes | Kilobytes | Megabytes | Gigabytes | Terabytes | Bits | Kilobits | Megabits | Gigabits | Terabits | Percent | Count | Bytes/Second | Kilobytes/Second | Megabytes/Second | Gigabytes/Second | Terabytes/Second | Bits/Second | Kilobits/Second | Megabits/Second | Gigabits/Second | Terabits/Second | Count/Second | None

필수 여부: 예

aws:configureDocker

(스키마 버전 2.0 이상) 컨테이너 및 도커에서 사용할 인스턴스를 구성합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"mainSteps": [ { "action": "aws:configureDocker", "name": "ConfigureDocker", "inputs": { "action": "{{ action }}" } } ]

입력

action

수행할 작업의 유형입니다.

형식: 열거형

유효한 값: Install | Uninstall

필수 여부: 예

aws:configurePackage

(스키마 버전 2.0 이상) AWS 패키지를 설치 또는 제거합니다. 이 플러그인은 Microsoft Windows Server 및 Linux 운영 체제에서 실행해야 하지만 사용 가능한 일부 패키지는 Linux 운영 체제에서 지원되지 않습니다.

사용 가능한 Microsoft Windows Server용 패키지에는 AWSPVDriver, AwsEnaNetworkDriver, IntelSriovDriver, AwsVssComponents, AmazonCloudWatchAgent, AWSSupport-EC2Rescue 등이 있습니다.

사용 가능한 Linux 운영 체제용 패키지에는 AmazonCloudWatchAgent 및 AWSSupport-EC2Rescue가 있습니다.

자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"mainSteps": [ { "action": "aws:configurePackage", "name": "configurePackage", "inputs": { "name": "{{ name }}", "action": "{{ action }}", "version": "{{ version }}" } } ]

입력

이름

설치 또는 제거할 AWS 패키지의 이름입니다. 사용 가능한 패키지에는 AWSPVDriver, AwsEnaNetworkDriver, IntelSriovDriver, AwsVssComponents 및 AmazonCloudWatchAgent가 있습니다.

형식: 문자열

필수 여부: 예

action

패키지를 설치 또는 제거합니다.

형식: 열거형

유효한 값: Install | Uninstall

필수 여부: 예

version

설치 또는 제거할 패키지의 특정 버전입니다. 설치하는 경우 기본적으로 시스템이 최근에 게시된 버전을 설치합니다. 제거하는 경우 기본적으로 시스템이 현재 설치된 버전을 제거합니다. 설치된 버전이 발견되지 않으면 최근에 게시된 버전이 다운로드되고 제거 작업이 실행됩니다.

형식: 문자열

필수 여부: 아니요

aws:domainJoin

도메인에 Amazon EC2 인스턴스를 조인합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"runtimeConfig":{ "aws:domainJoin":{ "properties":{ "directoryId":"{{ directoryId }}", "directoryName":"{{ directoryName }}", "directoryOU":"{{ directoryOU }}", "dnsIpAddresses":"{{ dnsIpAddresses }}" } }

속성

directoryId

디렉터리의 ID입니다.

형식: 문자열

필수 여부: 예

예: "directoryId": "d-1234567890"

directoryName

도메인 이름.

형식: 문자열

필수 여부: 예

예: "directoryName": "example.com"

directoryOU

조직 단위(OU)입니다.

형식: 문자열

필수 여부: 아니요

예: "directoryOU": "OU=test,DC=example,DC=com"

dnsIpAddresses

DNS 서버의 IP 주소입니다.

형식: 배열

필수 여부: 아니요

예: "dnsIpAddresses": ["198.51.100.1","198.51.100.2"]

예제

예는 Amazon EC2 User Guide for Windows InstancesWindows Server 인스턴스를 AWS Directory Service 도메인에 조인 단원을 참조하십시오.

aws:downloadContent

(스키마 버전 2.0 이상) 원격 위치에서 SSM 문서 및 스크립트를 다운로드합니다. 이 플러그인은 Linux 및 Windows Server 운영 체제에서 지원됩니다.

구문

"mainSteps": [ { "action":"aws:downloadContent", "name":"downloadContent", "inputs":{ "sourceType":"{{ sourceType }}", "sourceInfo":"{{ sourceInfo }}", "destinationPath":"{{ destinationPath }}" } }

입력

sourceType

다운로드한 소스입니다. Systems Manager는 현재 스크립트 및 SSM 문서 다운로드에 다음의 원본 형식을 지원합니다. GitHub, S3SSMDocument

형식: 문자열

필수 여부: 예

sourceInfo

필요한 원본에서 콘텐츠를 검색하는 데 필요한 정보입니다.

형식: StringMap

필수 여부: 예

sourceType GitHub에 다음을 지정합니다.

  • owner: 리포지토리 소유자입니다.

  • repository: 리포지토리의 이름입니다.

  • path: 다운로드할 파일 또는 디렉터리에 대한 경로입니다.

  • getOptions: 다른 브랜치 또는 다른 커밋에서 콘텐츠를 검색하기 위한 추가 옵션입니다. 이 파라미터는 다음 형식을 사용합니다.

    • branch:branch_name

      기본값은 master입니다.

    • commitID:commitID

      기본값은 head입니다.

  • tokenInfo: 액세스 토큰 정보를 저장하는 Systems Manager 파라미터(SecureString 파라미터)입니다.

Example syntax: { "owner":"TestUser", "repository":"GitHubTest", "path": "scripts/python/test-script", "getOptions" : "branch:master", "tokenInfo":"{{ssm-secure:secure-string-token}}" }

sourceType S3의 경우, 다음을 지정합니다.

  • path: Amazon S3에서 다운로드할 파일 또는 디렉터리의 URL입니다.

Example syntax: { "path": "https://s3.amazonaws.com/aws-executecommand-test/powershell/helloPowershell.ps1" }

sourceType SSMDocument의 경우, 다음 중 하나를 지정합니다.

  • name: 문서의 이름 및 버전입니다. 형식: name:version. 버전은 선택 항목입니다.

    Example syntax: { "name": "Example-RunPowerShellScript:3" }
  • name: 문서의 ARN이며 형식은 arn:aws:ssm:region:account_id:document/document_name입니다.

    { "name":"arn:aws:ssm:us-east-2:3344556677:document/MySharedDoc" }
destinationPath

파일을 다운로드하고자 할 때 선택할 수 있는 인스턴스의 로컬 경로 옵션입니다. 경로를 지정하지 않은 경우에는 명령 ID와 관련된 경로에 콘텐츠가 다운로드됩니다.

형식: 문자열

필수 여부: 아니요

aws:psModule

EC2 인스턴스에 PowerShell 모듈을 설치합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"runtimeConfig":{ "aws:psModule":{ "properties":[ { "id":"0.aws:psModule", "runCommand":"{{ commands }}", "source":"{{ source }}", "sourceHash":"{{ sourceHash }}", "workingDirectory":"{{ workingDirectory }}", "timeoutSeconds":"{{ executionTimeout }}" } ]

속성

runCommand

모듈 설치 후 실행될 PowerShell 명령입니다.

형식: 목록 또는 배열

필수 여부: 아니요

source

애플리케이션 .zip 파일에 대한 URL 또는 인스턴스 상 로컬 경로입니다.

형식: 문자열

필수 여부: 아니요

sourceHash

.zip 파일의 SHA256 해시입니다.

형식: 문자열

필수 여부: 아니요

timeoutSeconds

명령이 실패로 간주되기 전에 완료되어야 할 시간(초)입니다.

형식: 문자열

필수 여부: 아니요

workingDirectory

인스턴스 상의 작업 디렉터리에 대한 경로입니다.

형식: 문자열

필수 여부: 아니요

aws:refreshAssociation

(스키마 버전 2.0 이상) 온디맨드로 연결을 새로 고칩니다(강제 적용). 이 작업은 대상에 바운딩된 선택된 연결 또는 모든 연결에서 정의된 대로 시스템 상태를 변경합니다. 이 플러그인은 Linux 및 Microsoft Windows Server 운영 체제에서 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"action":"aws:refreshAssociation", "name":"refreshAssociation", "inputs": { "associationIds": "{{ associationIds }}" }

입력

associationIds

연결 ID의 목록입니다. 비어 있을 경우, 지정된 대상에 바인딩된 모든 연결이 적용됩니다.

형식: StringList

필수 여부: 아니요

aws:runDockerAction

(스키마 버전 2.0 이상) 컨테이너에서 도커 작업을 실행합니다. 이 플러그인은 Linux 및 Microsoft Windows Server 운영 체제에서 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"mainSteps": [ { "action": "aws:runDockerAction", "name": "RunDockerAction", "inputs": { "action": "{{ action }}", "container": "{{ container }}", "image": "{{ image }}", "memory": "{{ memory }}", "cpuShares": "{{ cpuShares }}", "volume": "{{ volume }}", "cmd": "{{ cmd }}", "env": "{{ env }}", "user": "{{ user }}", "publish": "{{ publish }}" }

입력

action

수행할 작업의 유형입니다.

형식: 문자열

필수 여부: 예

"컨테이너"

도커 컨테이너 ID입니다.

형식: 문자열

필수 여부: 아니요

이미지

도커 이미지 이름입니다.

형식: 문자열

필수 여부: 아니요

cmd

컨테이너 명령입니다.

형식: 문자열

필수 여부: 아니요

메모리

컨테이너 메모리 제한입니다.

형식: 문자열

필수 여부: 아니요

cpuShares

컨테이너 CPU 공유입니다(상대 가중치).

형식: 문자열

필수 여부: 아니요

볼륨

컨테이너 볼륨 마운트입니다.

형식: StringList

필수 여부: 아니요

env

컨테이너 환경 변수입니다.

형식: 문자열

필수 여부: 아니요

사용자

컨테이너 사용자 이름입니다.

형식: 문자열

필수 여부: 아니요

publish

컨테이너 게시 포트입니다.

형식: 문자열

필수 여부: 아니요

aws:runDocument

(스키마 버전 2.0 이상) Systems Manager 또는 로컬 공유에 저장된 SSM 문서를 실행합니다. 이 플러그인을 aws:downloadContent 플러그인과 함께 사용하면 원격 위치에서 로컬 공유로 SSM 문서를 다운로드하여 실행할 수 있습니다. 이 플러그인은 Linux 및 Windows Server 운영 체제에서 지원됩니다.

구문

"mainSteps": [ { "action":"aws:runDocument", "name":"runDocument", "inputs":{ "documentType":"{{ documentType }}", "documentPath":"{{ documentPath }}", "documentParameters":"{{ documentParameters }}" } }

입력

documentType

실행할 문서 유형입니다. 로컬 문서(LocalPath) 또는 Systems Manager에 저장된 문서(SSMDocument)를 실행할 수 있습니다.

형식: 문자열

필수 여부: 예

documentPath

문서에 대한 경로입니다. documentTypeLocalPath일 경우, 로컬 공유에 저장된 문서에 대한 경로를 지정합니다. documentTypeSSMDocument일 경우, 문서의 이름을 지정합니다.

형식: 문자열

필수 여부: 아니요

documentParameters

문서에 대한 파라미터입니다.

형식: StringMap

필수 여부: 아니요

aws:runPowerShellScript

PowerShell 스크립트를 실행하거나 실행할 스크립트에 대한 경로를 지정합니다. 이 플러그인은 Microsoft Windows 및 Linux 운영 체제에서 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

1.2 SSM 문서용 구문

"runtimeConfig":{ "aws:runPowerShellScript":{ "properties":[ { "id":"0.aws:runPowerShellScript", "runCommand":"{{ commands }}", "workingDirectory":"{{ workingDirectory }}", "timeoutSeconds":"{{ executionTimeout }}" } ]

2.2 SSM 문서용 구문

"mainSteps": [ { "action":"aws:runPowerShellScript", "name":"step name", "inputs":{ "timeoutSeconds":"Timeout in seconds", "runCommand":"[Command to run]" } } ]

다음은 schemaVersion 2.2 예제입니다.

{ "schemaVersion":"2.2", "description":"Simple test document using the aws:runPowerShellScript plugin.", "parameters":{ "Salutation":{ "type":"String", "description":"(Optional) This is an optional parameter that will be displayed in the output of the command if specified.", "allowedPattern":"[a-zA-Z]", "default":"World" } }, "mainSteps":[ { "action":"aws:runPowerShellScript", "name":"DisplaySalutation", "inputs":{ "timeoutSeconds":60, "runCommand":[ "$salutation = '{{ Salutation }}'", "", "if ( [String]::IsNullOrWhitespace( $salutation ) )", "{", " $salutation = 'anonymous'", "}", "", "Write-Host ('Hello {0}' -f $salutation)" ] } } ] }

속성

runCommand

실행할 명령 또는 인스턴스의 기존 스크립트에 대한 경로를 지정합니다.

형식: 목록 또는 배열

필수 여부: 예

timeoutSeconds

명령이 실패로 간주되기 전에 완료되어야 할 시간(초)입니다. 제한 시간에 도달하면 Systems Manager가 명령 실행을 멈춥니다.

형식: 문자열

필수 여부: 아니요

workingDirectory

인스턴스 상의 작업 디렉터리에 대한 경로입니다.

형식: 문자열

필수 여부: 아니요

aws:runShellScript

Linux 셸 스크립트를 실행하거나 실행할 스크립트에 대한 경로를 지정합니다. 이 플러그인은 Linux 운영 체제에서만 실행됩니다. 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

1.2 SSM 문서용 구문

"runtimeConfig":{ "aws:runShellScript":{ "properties":[ { "id":"0.aws:runShellScript", "runCommand":"{{ commands }}", "workingDirectory":"{{ workingDirectory }}", "timeoutSeconds":"{{ executionTimeout }}" } ]

2.2 SSM 문서용 구문

"mainSteps": [ { "action":"aws:runShellScript", "name":"step name", "inputs":{ "timeoutSeconds":"Timeout in seconds", "runCommand":"[Command to run]" } } ]

다음은 schemaVersion 2.2 예제입니다.

{ "schemaVersion": "2.2", "description": "Simple test document using the aws:runShellScript plugin.", "parameters": { "salutation": { "type": "String", "description": "(Optional) This is an optional parameter that will be displayed in the output of the command if specified.", "default": "Hello World" } }, "mainSteps": [ { "action": "aws:runShellScript", "name": "DisplaySalutation", "inputs": { "timeoutSeconds": 60, "runCommand": [ "echo {{ salutation }}" ] } } ] }

속성

runCommand

실행할 명령 또는 인스턴스의 기존 스크립트에 대한 경로를 지정합니다.

형식: 목록 또는 배열

필수 여부: 예

timeoutSeconds

명령이 실패로 간주되기 전에 완료되어야 할 시간(초)입니다. 제한 시간에 도달하면 Systems Manager가 명령 실행을 멈춥니다.

형식: 문자열

필수 여부: 아니요

workingDirectory

인스턴스 상의 작업 디렉터리에 대한 경로입니다.

형식: 문자열

필수 여부: 아니요

aws:softwareInventory

(스키마 버전 2.0 이상) 관리형 인스턴스의 애플리케이션, 파일 및 구성에 대한 메타데이터를 수집합니다. 이 플러그인은 Linux 및 Microsoft Windows Server 운영 체제에서 실행됩니다. 인벤토리 수집에 대한 자세한 정보는 AWS Systems Manager 인벤토리 단원을 참조하십시오.

구문

"mainSteps": [ { "action": "aws:softwareInventory", "name": "collectSoftwareInventoryItems", "inputs": { "applications": "{{ applications }}", "awsComponents": "{{ awsComponents }}", "networkConfig": "{{ networkConfig }}", "files": "{{ files }}", "services": "{{ services }}", "windowsRoles": "{{ windowsRoles }}", "windowsRegistry": "{{ windowsRegistry}}", "windowsUpdates": "{{ windowsUpdates }}", "instanceDetailedInformation": "{{ instanceDetailedInformation }}", "customInventory": "{{ customInventory }}" } } ]

입력

애플리케이션

(선택 사항) 설치한 애플리케이션에 대한 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

awsComponents

(선택 사항) amazon-ssm-agent 같은 AWS 구성 요소의 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

파일

(선택 사항, SSM 에이전트 버전 2.2.64 이상 필요) 몇 가지 예를 들자면 파일 이름, 파일 생성 시각, 파일을 마지막으로 수정하고 액세스한 시간, 파일 크기 등 파일에 관한 메타데이터 정보를 수집합니다. 파일 인벤토리 수집에 대한 자세한 정보는 파일 및 Windows 레지스트리 인벤토리 관련 작업 단원을 참조하십시오.

형식: 문자열

필수 여부: 아니요

networkConfig

(선택 사항) 네트워크 구성에 대한 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

windowsUpdates

(선택 사항) 모든 Windows 업데이트에 대한 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

InstanceDetailedInformation

(선택 사항) CPU 모델, 속도, 코어 수를 포함하여 기본 인벤토리 플러그인(aws:instanceInformation)에서 제공하는 것 이외의 인스턴스 정보를 수집합니다.

형식: 문자열

필수 여부: 아니요

서비스

(선택 사항, Windows OS에만 해당, SSM 에이전트 버전 2.2.64.0 이상 필요) 서비스 구성에 대한 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

windowsRegistry

(선택 사항, Windows OS에만 해당, SSM 에이전트 버전 2.2.64.0 이상 필요) Windows 레지스트리 키 및 값을 수집합니다. 키 경로를 선택하고 모든 키와 값을 반복적으로 수집할 수 있습니다. 특정 경로에 대해 특정 레지스트리 키와 그 값을 수집할 수도 있습니다. 인벤토리는 키 경로, 이름 및 값을 수집합니다. Windows 레지스트리 인벤토리를 수집하는 방법에 대한 자세한 정보는 파일 및 Windows 레지스트리 인벤토리 관련 작업 단원을 참조하십시오.

형식: 문자열

필수 여부: 아니요

windowsRoles

(선택 사항, Windows OS에만 해당, SSM 에이전트 버전 2.2.64.0 이상 필요) Microsoft Windows 역할 구성에 대한 메타데이터를 수집합니다.

형식: 문자열

필수 여부: 아니요

customInventory

(선택 사항) 사용자 지정 인벤토리 데이터를 수집합니다. 사용자 정의 인벤토리에 대한 자세한 정보는 사용자 정의 인벤토리 작업 단원을 참조하십시오.

형식: 문자열

필수 여부: 아니요

aws:updateAgent

EC2Config 서비스를 최신 버전으로 업데이트하거나 이전 버전을 지정합니다. 이 플러그인은 Microsoft Windows Server 운영 체제에서만 실행됩니다. EC2Config 서비스에 대한 자세한 정보는 EC2Config 서비스를 사용한 Windows 인스턴스 구성을 참조하십시오. 문서에 대한 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"runtimeConfig": { "aws:updateAgent": { "properties": { "agentName": "Ec2Config", "source": "https://s3.region.amazonaws.com/aws-ssm-region/manifest.json", "allowDowngrade": "{{ allowDowngrade }}", "targetVersion": "{{ version }}" } } }

속성

agentName

EC2Config. 이것은 EC2Config 서비스를 실행하는 에이전트의 이름입니다.

형식: 문자열

필수 여부: 예

allowDowngrade

EC2Config 서비스를 이전 버전으로 다운그레이드할 수 있게 허용합니다. false로 설정할 경우, 서비스가 새 버전으로 업그레이드만 될 수 있습니다(기본값). true로 설정하는 경우, 이전 버전을 지정합니다.

형식: 부울

필수 여부: 아니요

소스

Systems Manager가 설치할 EC2Config의 버전을 복사하는 위치입니다. 이 위치는 변경할 수 없습니다.

형식: 문자열

필수 여부: 예

targetVersion

설치할 EC2Config 서비스의 특정 버전입니다. 버전을 지정하지 않으면 서비스는 최신 버전으로 업데이트됩니다.

형식: 문자열

필수 여부: 아니요

aws:updateSSMAgent

SSM 에이전트를 최신 버전으로 업데이트하거나 이전 버전을 지정합니다. 이 플러그인은 Linux 및 Windows Server 운영 체제에서 실행됩니다. 자세한 정보는 SSM 에이전트 작업 단원을 참조하십시오. 문서에 대한 자세한 정보는 AWS Systems Manager 문서 단원을 참조하십시오.

구문

"runtimeConfig": { "aws:updateSsmAgent": { "properties": [ { "agentName": "amazon-ssm-agent", "source": "https://s3.region.amazonaws.com/aws-ssm-region/manifest.json", "allowDowngrade": "{{ allowDowngrade }}", "targetVersion": "{{ version }}" } ] } }

속성

agentName

amazon-ssm-agent. 요청을 처리하고 인스턴스에서 명령을 실행하는 Systems Manager 에이전트의 이름입니다.

형식: 문자열

필수 여부: 예

allowDowngrade

SSM 에이전트를 이전 버전으로 다운그레이드할 수 있게 허용합니다. false로 설정할 경우, 에이전트가 새 버전으로 업그레이드만 될 수 있습니다(기본값). true로 설정하는 경우, 이전 버전을 지정합니다.

형식: 부울

필수 여부: 아니요

소스

Systems Manager가 설치할 SSM 에이전트 버전을 복사하는 위치입니다. 이 위치는 변경할 수 없습니다.

형식: 문자열

필수 여부: 예

targetVersion

설치할 SSM 에이전트의 특정 버전입니다. 버전을 지정하지 않으면 에이전트는 최신 버전으로 업데이트됩니다.

형식: 문자열

필수 여부: 아니요