

• AWS Systems Manager CloudWatch 대시보드는 2026년 4월 30일 이후에는 더 이상 사용할 수 없습니다. 고객은 Amazon CloudWatch 콘솔을 계속 사용하여 현재와 마찬가지로 Amazon CloudWatch 대시보드를 보고, 생성하고, 관리할 수 있습니다. 자세한 내용은 [Amazon CloudWatch 대시보드 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)를 참조하세요.

# EventBridge 이벤트를 기반으로 자동화 실행
<a name="running-automations-event-bridge"></a>

실행서를 Amazon EventBridge 이벤트의 대상으로 지정하여 자동화를 시작할 수 있습니다. 일정에 따라 또는 특정 AWS 시스템 이벤트가 발생할 때 자동화를 시작할 수 있습니다. 예를 들어 인스턴스가 시작될 때 인스턴스에서 소프트웨어를 설치하는 *BootStrapInstances*라는 실행서를 생성한다고 가정합니다. *BootStrapInstances* 실행서와 해당 자동화를 EventBridge 이벤트의 대상으로 지정하려면 먼저 새 EventBridge 규칙을 생성합니다. (예제 규칙: **서비스 이름**: EC2, **이벤트 유형**: EC2 인스턴스 상태 변경 알림, **특정 상태**: 실행 중, **모든 인스턴스**.) 그리고 다음 절차에 따라 EventBridge 콘솔 및 AWS Command Line Interface(AWS CLI)를 사용하여 *BootStrapInstances* 실행서를 이벤트 대상으로 지정합니다. 새 인스턴스가 시작되면 시스템에서 자동화를 실행하고 소프트웨어를 설치합니다.

실행서 생성에 대한 자세한 내용은 [사용자 런북 생성](automation-documents.md) 섹션을 참조하세요.

## 실행서를 사용하는 EventBridge 이벤트 생성(콘솔)
<a name="automation-cwe-target-console"></a>

다음 절차에 따라 실행서를 EventBridge 이벤트 대상으로 구성합니다.

**실행서를 EventBridge 이벤트 규칙의 대상으로 구성하려면**

1. [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/)에서 Amazon EventBridge 콘솔을 엽니다.

1. 탐색 창에서 **규칙**을 선택합니다.

1. **규칙 생성**을 선택합니다.

1. 규칙에 대해 이름과 설명을 입력하세요.

   규칙은 동일한 리전과 동일한 이벤트 버스의 다른 규칙과 동일한 이름을 가질 수 없습니다.

1. **이벤트 버스**에서 이 규칙과 연결할 이벤트 버스를 선택합니다. 이 규칙이 자신의 AWS 계정에서 오는 일치하는 이벤트에 응답하도록 하려면 **default**(기본)를 선택합니다. 계정의 AWS 서비스이(가) 이벤트를 출력하면 항상 계정의 기본 이벤트 버스로 이동합니다.

1. 규칙이 트리거되는 방식을 선택합니다.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/systems-manager/latest/userguide/running-automations-event-bridge.html)

1. **다음**을 선택합니다.

1. **대상 유형**에서 **AWS서비스**를 선택합니다.

1. **Target**(대상)에서 **Systems Manager Automation**을 선택합니다.

1. [**문서(Document)**]에서 대상이 호출될 때 사용할 실행서를 선택합니다.

1. **Configure automation parameter(s)**(자동화 파라미터 구성) 섹션에서 기본 파라미터 값을 유지하거나(사용 가능한 경우) 값을 직접 입력할 수 있습니다.
**참고**  
대상을 생성하려면 각 필수 파라미터에 대한 값을 지정해야 합니다. 그렇지 않으면 시스템에서 규칙이 생성되지만 실행되지 않습니다.

1. 여러 대상 유형에 대해 EventBridge에서는 대상에 이벤트를 보낼 권한이 필요합니다. 이 경우 EventBridge는 규칙 실행에 필요한 IAM 역할을 생성할 수 있습니다. 다음 중 하나를 수행하세요.
   + IAM 역할을 자동으로 생성하려면 **이 특정 리소스에 대해 새 역할 생성**을 선택합니다.
   + 이전에 생성한 IAM 역할을 사용하려면 **기존 역할 사용(Use existing role)**을 선택하고 드롭다운에서 기존 역할을 선택합니다. EventBridge를 포함하도록 IAM 역할에 대한 신뢰 정책을 업데이트해야 할 수도 있습니다. 다음은 예제입니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "",
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "{{events.amazonaws.com}}",
                       "ssm.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

1. **다음**을 선택합니다.

1. (선택 사항)규칙에 대해 하나 이상의 태그를 입력하세요. 자세한 내용은 *Amazon EventBridge User Guide*의 [Tagging Your Amazon EventBridge Resources](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-tagging.html)를 참조하세요.

1. **다음**을 선택합니다.

1. 규칙의 세부 정보를 검토하고 **규칙 생성**을 선택합니다.

## 실행서를 사용하는 EventBridge 이벤트 생성(명령줄)
<a name="automation-cwe-target-commandline"></a>

다음 절차에서는 AWS CLI(Linux 또는 Windows) 또는 AWS Tools for PowerShell을 사용하여 EventBridge 이벤트 규칙을 생성하고 실행서를 대상으로 구성하는 방법을 설명합니다.

**실행서를 EventBridge 이벤트 규칙의 대상으로 구성하려면**

1. 아직 하지 않은 경우 AWS CLI 또는 AWS Tools for PowerShell을 설치하고 구성합니다.

   자세한 내용은 [최신 버전의 AWS CLI 설치 또는 업데이트](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) 및 [AWS Tools for PowerShell 설치](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html)를 참조하세요.

1. 새 EventBridge 이벤트 규칙을 지정하기 위한 명령을 생성합니다. 각 {{example resource placeholder}}를 사용자의 정보로 바꿉니다.

   *일정을 기반으로 트리거*

------
#### [ Linux & macOS ]

   ```
   aws events put-rule \
   --name "{{rule name}}" \
   --schedule-expression "{{cron or rate expression}}"
   ```

------
#### [ Windows ]

   ```
   aws events put-rule ^
   --name "{{rule name}}" ^
   --schedule-expression "{{cron or rate expression}}"
   ```

------
#### [ PowerShell ]

   ```
   Write-CWERule `
   -Name "{{rule name}}" `
   -ScheduleExpression "{{cron or rate expression}}"
   ```

------

   다음 예에서는 매일 오전 9:00(UTC)에 트리거하는 EventBridge 이벤트 규칙을 생성합니다.

------
#### [ Linux & macOS ]

   ```
   aws events put-rule \
   --name "DailyAutomationRule" \
   --schedule-expression "cron(0 9 * * ? *)"
   ```

------
#### [ Windows ]

   ```
   aws events put-rule ^
   --name "DailyAutomationRule" ^
   --schedule-expression "cron(0 9 * * ? *)"
   ```

------
#### [ PowerShell ]

   ```
   Write-CWERule `
   -Name "DailyAutomationRule" `
   -ScheduleExpression "cron(0 9 * * ? *)"
   ```

------

   *이벤트를 기반으로 트리거*

------
#### [ Linux & macOS ]

   ```
   aws events put-rule \
   --name "{{rule name}}" \
   --event-pattern "{\"source\":[\"aws.{{service}}\"],\"detail-type\":[\"{{service event detail type}}\"]}"
   ```

------
#### [ Windows ]

   ```
   aws events put-rule ^
   --name "{{rule name}}" ^
   --event-pattern "{\"source\":[\"aws.{{service}}\"],\"detail-type\":[\"{{service event detail type}}\"]}"
   ```

------
#### [ PowerShell ]

   ```
   Write-CWERule `
   -Name "{{rule name}}" `
   -EventPattern '{"source":["aws.{{service}}"],"detail-type":["{{service event detail type}}"]}'
   ```

------

   다음 예에서는 리전의 EC2 인스턴스가 상태가 변경될 때 시작되는 EventBridge 이벤트 규칙을 생성합니다.

------
#### [ Linux & macOS ]

   ```
   aws events put-rule \
   --name "EC2InstanceStateChanges" \
   --event-pattern "{\"source\":[\"aws.ec2\"],\"detail-type\":[\"EC2 Instance State-change Notification\"]}"
   ```

------
#### [ Windows ]

   ```
   aws events put-rule ^
   --name "EC2InstanceStateChanges" ^
   --event-pattern "{\"source\":[\"aws.ec2\"],\"detail-type\":[\"EC2 Instance State-change Notification\"]}"
   ```

------
#### [ PowerShell ]

   ```
   Write-CWERule `
   -Name "{{EC2InstanceStateChanges}}" `
   -EventPattern '{"source":["aws.ec2"],"detail-type":["EC2 Instance State-change Notification"]}'
   ```

------

   이 명령은 다음과 비슷한 새 EventBridge 규칙의 세부 정보를 반환합니다.

------
#### [ Linux & macOS ]

   ```
   {
   "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/automationrule"
   }
   ```

------
#### [ Windows ]

   ```
   {
   "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/automationrule"
   }
   ```

------
#### [ PowerShell ]

   ```
   arn:aws:events:us-east-1:123456789012:rule/EC2InstanceStateChanges
   ```

------

1. 실행서를 2단계에서 생성한 EventBridge 이벤트 규칙의 대상으로 지정하기 위한 명령을 생성합니다. 각 {{example resource placeholder}}를 사용자의 정보로 바꿉니다.

------
#### [ Linux & macOS ]

   ```
   aws events put-targets \
   --rule {{rule name}} \
   --targets '{"Arn": " arn:aws:ssm:{{region}}:{{account ID}}:automation-definition/{{runbook name}}","Input":"{\"Message\":[\"{\\\"Key\\\":\\\"{{key name}}\\\",\\\"Values\\\":[\\\"{{value}}\\\"]}\"]}","Id": "{{target ID}}","RoleArn": "arn:aws:iam::{{123456789012}}:role/service-role/{{EventBridge service role}}"}'
   ```

------
#### [ Windows ]

   ```
   aws events put-targets ^
   --rule {{rule name}} ^
   --targets '{"Arn": "arn:aws:ssm:{{region}}:{{account ID}}:automation-definition/{{runbook name}}","Input":"{\"Message\":[\"{\\\"Key\\\":\\\"{{key name}}\\\",\\\"Values\\\":[\\\"{{value}}\\\"]}\"]}","Id": "{{target ID}}","RoleArn": "arn:aws:iam::{{123456789012}}:role/service-role/{{EventBridge service role}}"}'
   ```

------
#### [ PowerShell ]

   ```
   $Target = New-Object Amazon.CloudWatchEvents.Model.Target
   $Target.Id = "{{target ID}}"
   $Target.Arn = "arn:aws:ssm:{{region}}:{{account ID}}:automation-definition/{{runbook name}}"
   $Target.RoleArn = "arn:aws:iam::{{123456789012}}:role/service-role/{{EventBridge service role}}"
   $Target.Input = '{"{{input parameter}}":["{{value}}"],"AutomationAssumeRole":["arn:aws:iam::{{123456789012}}:role/{{AutomationServiceRole}}"]}'
   
   Write-CWETarget `
   -Rule "{{rule name}}" `
   -Target $Target
   ```

------

   다음 예에서는 실행서 `AWS-StartEC2Instance`를 사용하여 지정된 인스턴스 ID를 시작하는 EventBridge 이벤트 대상을 생성합니다.

------
#### [ Linux & macOS ]

   ```
   aws events put-targets \
   --rule DailyAutomationRule \
   --targets '{"Arn": "arn:aws:ssm:{{region}}:*:automation-definition/AWS-StartEC2Instance","Input":"{\"InstanceId\":[\"i-02573cafcfEXAMPLE\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationServiceRole\"]}","Id": "Target1","RoleArn": "arn:aws:iam::123456789012:role/service-role/AWS_Events_Invoke_Start_Automation_Execution_1213609520"}'
   ```

------
#### [ Windows ]

   ```
   aws events put-targets ^
   --rule DailyAutomationRule ^
   --targets '{"Arn": "arn:aws:ssm:{{region}}:*:automation-definition/AWS-StartEC2Instance","Input":"{\"InstanceId\":[\"i-02573cafcfEXAMPLE\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationServiceRole\"]}","Id": "Target1","RoleArn": "arn:aws:iam::123456789012:role/service-role/AWS_Events_Invoke_Start_Automation_Execution_1213609520"}'
   ```

------
#### [ PowerShell ]

   ```
   $Target = New-Object Amazon.CloudWatchEvents.Model.Target
   $Target.Id = "Target1"
   $Target.Arn = "arn:aws:ssm:{{region}}:*:automation-definition/AWS-StartEC2Instance"
   $Target.RoleArn = "arn:aws:iam::123456789012:role/service-role/AWS_Events_Invoke_Start_Automation_Execution_1213609520"
   $Target.Input = '{"InstanceId":["i-02573cafcfEXAMPLE"],"AutomationAssumeRole":["arn:aws:iam::123456789012:role/AutomationServiceRole"]}'
   
   Write-CWETarget `
   -Rule "DailyAutomationRule" `
   -Target $Target
   ```

------

   시스템은 다음과 같은 정보를 반환합니다.

------
#### [ Linux & macOS ]

   ```
   {
   "FailedEntries": [],
   "FailedEntryCount": 0
   }
   ```

------
#### [ Windows ]

   ```
   {
   "FailedEntries": [],
   "FailedEntryCount": 0
   }
   ```

------
#### [ PowerShell ]

   PowerShell에 대해 명령이 성공해도 결과는 없습니다.

------