

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

# 자습서: 반복 실험 예약
<a name="fis-tutorial-recurring-experiment"></a>

 AWS Fault Injection Service(AWS FIS)를 사용하면 워크로드에서 오류 주입 실험을 수행할 수 있습니다 AWS . 이러한 실험은 지정된 대상에서 실행할 하나 이상의 작업이 포함된 템플릿에서 실행됩니다. 또한를 사용하면 실험을 일회성 작업 또는 반복 작업으로 예약할 Amazon EventBridge수 있습니다.

이 자습서를 사용하여 5분마다 AWS FIS 실험 템플릿을 실행하는 EventBridge 일정을 생성합니다.

**Topics**
+ [사전 조건](#recurring-experiment-prerequisites)
+ [1단계: IAM 역할 및 정책 생성](#recurring-experiment-step1)
+ [2단계: Amazon EventBridge 스케줄러 생성](#recurring-experiment-step2)
+ [3단계: 실험 확인](#recurring-experiment-step3)
+ [4단계: 정리](#recurring-experiment-step4)

## 사전 조건
<a name="recurring-experiment-prerequisites"></a>

이 자습서를 시작하기 전에 에는 일정에 따라 실행하려는 AWS FIS 실험 템플릿이 있어야 합니다. 이미 제대로 작동하는 실험 템플릿이 있다면 템플릿 ID 및 AWS 리전을 메모해 두세요. 그렇지 않으면 [자습서: AWS FIS를 사용하여 인스턴스 중지 및 시작 테스트](fis-tutorial-stop-instances.md)의 지침에 따라 템플릿을 만든 다음 이 자습서로 돌아갈 수 있습니다.

## 1단계: IAM 역할 및 정책 생성
<a name="recurring-experiment-step1"></a>



**IAM 역할 및 정책을 생성하려면**

1. IAM 콘솔([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))을 엽니다.

1. 왼쪽 탐색 창에서 **역할**을 선택한 후 **역할 생성**을 선택합니다.

1. **사용자 지정 신뢰 정책을** 선택한 다음 다음 코드 조각을 삽입하여 Amazon EventBridge 스케줄러가 사용자를 대신하여 역할을 수임하도록 허용합니다.

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

****  

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

------

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

1. **권한 추가**, **정책 생성**을 선택합니다.

1. **JSON**을 선택하고 다음 정책을 삽입합니다. *your-experiment-template-id* 값을 사전 조건 단계에 있는 실험의 템플릿 ID로 바꾸세요.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "fis:StartExperiment",
               "Resource": [
                   "arn:aws:fis:*:*:experiment-template/your-experiment-template-id",
                   "arn:aws:fis:*:*:experiment/*"
               ]
           }
       ]
   }
   ```

------

   특정 태그 값이 있는 AWS FIS 실험 템플릿만 실행하도록 스케줄러를 제한할 수 있습니다. 예를 들어 다음 정책은 모든 AWS FIS 실험에 대한 `StartExperiment` 권한을 부여하지만 스케줄러가 태그가 지정된 실험 템플릿만 실행하도록 제한합니다`Purpose=Schedule`.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "fis:StartExperiment",
               "Resource": "arn:aws:fis:*:*:experiment/*"
           },
           {
               "Effect": "Allow",
               "Action": "fis:StartExperiment",
               "Resource": "arn:aws:fis:*:*:experiment-template/*",
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceTag/Purpose": "Schedule"
                   }
               }
           }
       ]
   }
   ```

------

   **다음: 태그**를 선택합니다.

1. **다음: 검토**를 선택합니다.

1. **정책 검토**에서 정책 이름을 `FIS_RecurringExperiment`로 지정한 다음 **정책 생성**을 선택합니다.

1. **권한 추가**에서 새 `FIS_RecurringExperiment` 정책을 역할에 추가하고 **다음**을 선택합니다.

1. **이름 지정, 검토 및 생성** 아래에서 역할 이름에 `FIS_RecurringExperiment_role`을 입력하고 **역할 생성**을 선택합니다.

## 2단계: Amazon EventBridge 스케줄러 생성
<a name="recurring-experiment-step2"></a>



**Amazon EventBridge 스케줄러를 생성하려면**

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

1. 왼쪽 탐색 창에서 **일정**을 선택합니다.

1.  AWS FIS 실험 템플릿 AWS 리전 과 동일한에 있는지 확인합니다.

1. **일정 생성**을 선택하고 다음 필드를 입력합니다.
   + **일정 이름** 아래에 다음을 입력합니다. `FIS_recurring_experiment_tutorial` 
   + **일정 패턴**에서 **반복 일정**을 선택합니다.
   + **일정 유형**에서 **요금 기반 일정**을 선택합니다.
   + **rate 표현식**에서 **5분**을 선택합니다.
   + **유연한 기간** 아래에서 **끄기**를 선택합니다.
   + (선택 사항) **기간** 아래에서 시간대를 선택합니다.
   + **다음**을 선택합니다.

1. **대상 선택**에서 **모든 API**를 선택한 다음 **AWS FIS**를 검색합니다.

1. **AWS FIS**를 선택한 다음 **StartExperiment**를 선택합니다.

1. **입력**에 다음 JSON 페이로드를 삽입합니다. *your-experiment-template-id* 값을 실험의 템플릿 ID로 바꾸세요. `ClientToken`는 스케줄러의 고유 식별자입니다. 이 자습서에서는 Amazon EventBridge 스케줄러에서 허용하는 컨텍스트 키워드를 사용합니다. 자세한 내용은 *Amazon EventBridge* 사용 설명서의 [컨텍스트 속성 추가](https://docs.aws.amazon.com/scheduler/latest/UserGuide/managing-schedule-context-attributes.html)를 참조하세요.

   ```
   {
       "ClientToken": "<aws.scheduler.execution-id>",
       "ExperimentTemplateId": "your-experiment-template-id"
   }
   ```

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

1. (선택 사항) **설정**에서 **재시도 정책**, **DLQ(Dead Letter Queue)** 및 **암호화** 설정을 지정할 수 있습니다. 또는 기본값 을 그대로 유지합니다.

1. **권한** 아래에서 **기존 역할 사용**을 선택한 다음 `FIS_RecurringExperiment_role`을 검색합니다.

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

1. **일정 검토 및 생성**에서 스케줄러 세부 정보를 검토한 다음 **일정 생성**을 선택합니다.

## 3단계: 실험 확인
<a name="recurring-experiment-step3"></a>

**AWS FIS 실험이 일정에 따라 실행되었는지 확인하려면**

1. [https://console.aws.amazon.com/fis/](https://console.aws.amazon.com/fis/) AWS FIS 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **실험**을 선택합니다.

1. 일정을 만든 후 5분이 지나면 실험이 진행 중인 것을 확인할 수 있습니다.

## 4단계: 정리
<a name="recurring-experiment-step4"></a>

**Amazon EventBridge 스케줄러를 비활성화하려면**

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

1. 왼쪽 탐색 창에서 **일정**을 선택합니다.

1. 새로 만든 스케줄러를 선택한 다음 **비활성화**를 선택합니다.