

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

# 작업 API를 사용하여 AWS IoT 작업 구성 지정
<a name="job-configurations-api"></a>

[CreateJob](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html) 또는 [CreateJobTemplate](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html) API를 사용하여 다양한 작업 구성을 지정할 수 있습니다. 다음 섹션에서는 이러한 구성을 추가하는 방법을 설명합니다. 구성을 추가한 후 [JobExecutionSummary](https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionSummary.html) 및 [JobExecutionSummaryForJob](https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionSummaryForJob.html)을 사용하여 상태를 볼 수 있습니다.

다양한 구성 및 구성 작동 방식에 대한 자세한 내용은 [작업 구성 작동 방식](jobs-configurations-details.md) 섹션을 참조하세요.

## 롤아웃 구성
<a name="job-rollout-api"></a>

롤아웃 구성에 대해 상수 롤아웃 속도 또는 기하급수적 롤아웃 속도를 지정할 수 있습니다.
+ 

**상수 롤아웃 속도 설정**  
상수 롤아웃 속도를 설정하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionsRolloutConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionsRolloutConfig.html) 객체를 사용하여 `maximumPerMinute` 파라미터를 `CreateJob` 요청에 추가합니다. 이 파라미터는 작업 실행이 발생할 수 있는 속도의 상한을 지정합니다. 이 값은 선택 사항이며 범위는 1\$11,000입니다. 이 값을 설정하지 않으면 1,000이 기본값으로 사용됩니다.

  ```
      "jobExecutionsRolloutConfig": {
          "maximumPerMinute": 1000
      }
  ```
+ 

**기하급수적 롤아웃 속도 설정**  
가변 작업 롤아웃 속도를 설정하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionsRolloutConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_JobExecutionsRolloutConfig.html) 객체를 사용합니다. `CreateJob` API 작업을 실행할 때 `ExponentialRolloutRate` 속성을 구성할 수 있습니다. 다음 예에서는 `exponentialRate` 파라미터를 사용하여 기하급수적 롤아웃 속도를 설정합니다. 파라미터에 대한 자세한 내용은 [https://docs.aws.amazon.com/iot/latest/apireference/API_ExponentialRolloutRate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_ExponentialRolloutRate.html) 섹션을 참조하세요.

  ```
  {
  ...
    "jobExecutionsRolloutConfig": {
      "exponentialRate": {
        "baseRatePerMinute": 50,
        "incrementFactor": 2,
        "rateIncreaseCriteria": {
          "numberOfNotifiedThings": 1000,
          "numberOfSucceededThings": 1000
        },
        "maximumPerMinute": 1000
      }
    }
  ...
  }
  ```

여기서 파라미터는 다음과 같습니다.

**baseRatePerMinute**  
`numberOfNotifiedThings` 또는 `numberOfSucceededThings` 임계값이 충족될 때까지 작업이 실행되는 속도를 지정합니다.

**incrementFactor**  
`numberOfNotifiedThings` 또는 `numberOfSucceededThings` 임계값이 충족된 후 롤아웃 속도 증가의 기준이 되는 지수 인자를 지정합니다.

**rateIncreaseCriteria**  
`numberOfNotifiedThings` 또는 `numberOfSucceededThings` 임계값을 지정합니다.

## Abort configuration(중단 구성)
<a name="job-abort-api"></a>

API를 사용하여 이 구성을 추가하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html) 또는 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html) API 작업을 실행할 때 [https://docs.aws.amazon.com/iot/latest/apireference/API_AbortConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_AbortConfig.html) 파라미터를 지정합니다. 다음 예제에서는 `CreateJob` API 작업에 지정된 대로 여러 번의 실패한 실행이 발생한 작업 롤아웃에 대한 중단 구성을 보여줍니다.

**참고**  
작업 실행 삭제는 완료된 전체 실행의 계산 값에 영향을 미칩니다. 작업이 중단되면 서비스는 자동화된 `comment` 및 `reasonCode`을 생성해 사용자 주도 취소를 작업 중단 취소와 구분합니다.

```
   "abortConfig": { 
      "criteriaList": [ 
         { 
            "action": "CANCEL",
            "failureType": "FAILED",
            "minNumberOfExecutedThings": 100,
            "thresholdPercentage": 20
         },
         { 
            "action": "CANCEL",
            "failureType": "TIMED_OUT",
            "minNumberOfExecutedThings": 200,
            "thresholdPercentage": 50
         }
      ]
    }
```

여기서 파라미터는 다음과 같습니다.

**action**  
중단 기준 충족 시 취할 조치를 지정합니다. 이는 필수 파라미터로, `CANCEL`이 유일하게 유효한 값입니다.

**failureType**  
작업 중단을 시작해야 하는 실패 유형을 지정합니다. 유효한 값은 `FAILED`, `REJECTED`, `TIMED_OUT` 및 `ALL`입니다.

**minNumberOfExecutedThings**  
작업 중단 기준이 충족되기 전에 발생해야 하는 완료된 작업 실행 수를 지정합니다. 이 예제에서 AWS IoT 는 100개 이상의 디바이스에서 작업 실행을 완료할 때까지 작업 중단이 발생해야 하는지 확인하지 않습니다.

**thresholdPercentage**  
작업 중단을 시작할 수 있는 작업이 실행된 총 사물 수를 지정합니다. 이 예제에서는 순차적으로를 AWS IoT 확인하고 임계값 백분율이 충족되면 작업 중단을 시작합니다. 100번의 실행이 완료된 후 전체 실행의 20% 이상이 실패하는 경우 작업 롤아웃이 취소됩니다. 이 기준이 충족되지 않으면 AWS IoT 는 완료된 실행의 50% 이상이 200회 실행이 완료된 후 시간 초과되었는지 확인합니다. 이 경우 작업 롤아웃이 취소됩니다.

## Scheduling configuration(예약 구성)
<a name="job-scheduling-api"></a>

API를 사용하여 이 구성을 추가하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html) 또는 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html) API 작업을 실행할 때 선택적 [https://docs.aws.amazon.com/iot/latest/apireference/API_SchedulingConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_SchedulingConfig.html)를 지정합니다.

```
    "SchedulingConfig": { 
      "endBehavior": string
      "endTime": string
      "maintenanceWindows": string
      "startTime": string
   }
```

여기서 파라미터는 다음과 같습니다.

startTime****  
작업이 시작될 날짜와 시간을 지정합니다.

**endTime**  
작업이 종료될 날짜와 시간을 지정합니다.

**maintenanceWindows**  
작업 문서를 대상 그룹의 모든 디바이스에 롤아웃하기 위해 예약된 작업에 대해 선택적 유지 관리 기간을 선택했는지를 지정합니다. `maintenanceWindow`의 문자열 형식은 날짜의 경우 YYYYY/MM/DD이고 시간의 경우 hh:mm입니다.

**endBehavior**  
`endTime`에 도달할 때 예약된 작업의 작업 동작을 지정합니다.

**참고**  
작업에 대한 선택적 `SchedulingConfig`는 [https://docs.aws.amazon.com/iot/latest/apireference/API_DescribeJob.html](https://docs.aws.amazon.com/iot/latest/apireference/API_DescribeJob.html) 및 [https://docs.aws.amazon.com/iot/latest/apireference/API_DescribeJobTemplate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_DescribeJobTemplate.html) API에서 볼 수 있습니다.

## 제한 시간 구성
<a name="job-timeout-api"></a>

API를 사용하여 이 구성을 추가하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html) 또는 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html) API 작업을 실행할 때 [https://docs.aws.amazon.com/iot/latest/apireference/API_TimeoutConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_TimeoutConfig.html) 파라미터를 지정합니다.

제한 시간 구성을 사용하려면

1. 작업 또는 작업 템플릿을 생성할 때 진행 중 타이머를 설정하려면 선택 사항인 [TimeoutConfig](https://docs.aws.amazon.com//iot/latest/apireference/API_TimeoutConfig.html) 객체의 `inProgressTimeoutInMinutes` 속성에 값을 설정합니다.

   ```
       "timeoutConfig": { 
         "inProgressTimeoutInMinutes": number
      }
   ```

1. 작업 실행을 위한 단계 타이머를 지정하려면 [UpdateJobExecution](https://docs.aws.amazon.com//iot/latest/apireference/API_iot-jobs-data_UpdateJobExecution.html)을 호출할 때 `stepTimeoutInMinutes`에 값을 설정합니다. 단계 타이머는 업데이트하는 작업 실행에만 적용됩니다. 작업 실행을 업데이트할 때마다 이 타이머에 대해 새 값을 설정할 수 있습니다.
**참고**  
`UpdateJobExecution`은 -1 값으로 새 단계 타이머를 생성함으로써 이미 생성된 단계 타이머를 폐기할 수 없습니다.

   ```
   {
      ... 
       "statusDetails": { 
         "string" : "string" 
      },
      "stepTimeoutInMinutes": number
   }
   ```

1. 새 단계 타이머를 생성하려면 [StartNextPendingJobExecution](https://docs.aws.amazon.com//iot/latest/apireference/API_iot-jobs-data_StartNextPendingJobExecution.html) API 작업을 호출할 수도 있습니다.

## 재시도 구성
<a name="job-retry-api"></a>

**참고**  
작업을 생성할 때 구성에 사용할 적절한 재시도 횟수를 고려합니다. 잠재적인 재시도 실패로 인해 과도한 비용이 발생하지 않도록 하려면 중단 구성을 추가합니다. 작업이 생성된 후에는 재시도 횟수를 업데이트할 수 없습니다. [UpdateJob](https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateJob.html) API 작업을 사용하여 재시도 횟수를 0으로만 설정할 수 있습니다.

API를 사용하여 이 구성을 추가하려면 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJob.html) 또는 [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateJobTemplate.html) API 작업을 실행할 때 [https://docs.aws.amazon.com/iot/latest/apireference/API_jobExecutionsRetryConfig.html](https://docs.aws.amazon.com/iot/latest/apireference/API_jobExecutionsRetryConfig.html) 파라미터를 지정합니다.

```
{
...
  "jobExecutionsRetryConfig": { 
      "criteriaList": [ 
         { 
            "failureType": "string",
            "numberOfRetries": number
         }
      ]
  }
...
}
```

여기서 **criteriaList**는 작업의 각 실패 유형에 대해 허용되는 재시도 횟수를 결정하는 기준 목록을 지정하는 배열입니다.