

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

# 자동 업데이트 구성
<a name="update-configuration-options"></a>

사용`appsettings.json`구성 파일을 사용하여 Microsoft Windows용 Amazon Kinesis 에이전트와 Windows용 Kinesis 에이전트의 구성 파일을 자동으로 업데이트할 수 있습니다. 업데이트 동작을 제어하려면`Plugins`키 - 값 쌍은 다음과 같은 구성 파일의 동일한 수준에있다.`Sources`,`Sinks`, 및`Pipes`.

이`Plugins`키 - 값 쌍은 소스, 싱크 및 파이프의 범주에 특별히 해당하지 않는 사용할 추가 일반 기능을 지정합니다. 예를 들어 Windows용 Kinesis 에이전트를 업데이트하기 위한 플러그인이 있으며`appsettings.json`구성 파일을 입력합니다. 플러그인은 JSON 객체로 표현되며 항상`Type`키-값 페어를 입력합니다. 이`Type`플러그인에 대해 다른 키-값 페어를 지정할 수 있는지를 결정합니다. 지원되는 플러그인 유형은 다음과 같습니다.

`PackageUpdate`  
Windows용 Kinesis 에이전트가 패키지 버전 구성 파일을 주기적으로 확인하도록 지정합니다. 패키지 버전 파일에 다른 버전의 Windows용 Kinesis 에이전트가 설치되어야 한다고 표시되면 Windows용 Kinesis 에이전트가 해당 버전을 다운로드하여 설치합니다. 이`PackageUpdate`플러그인 키-값 페어는 다음과 같습니다.    
`Type`  
값은 문자열 이어야 합니다.`PackageUpdate`이며 필수입니다.  
`Interval`  
패키지 버전 파일에서 문자열로 표시되는 변경 사항을 분 단위로 확인하는 빈도를 지정합니다. 이 키-값 페어는 선택 사항입니다. 이 값을 지정하지 않으면 기본값은 60분입니다. 값이 1보다 작으면 업데이트 확인이 수행되지 않습니다.  
`PackageVersion`  
패키지 버전 JSON 파일의 위치를 지정합니다. 파일은 파일 공유에 있을 수 있습니다 (`file://`), 웹 사이트 (`http://`) 또는 Amazon S3 (`s3://`). 예를 들어 값`s3://mycompany/config/agent-package-version.json`는 Windows용 Kinesis 에이전트가`config/agent-package-version.json`파일의`mycompany`Amazon S3 버킷입니다. 해당 파일의 내용을 기반으로 업데이트를 수행해야합니다.  
의 값이`PackageVersion`키-값 쌍은 Amazon S3 경우 대/소문자를 구분합니다.
다음은 패키지 버전 파일의 내용을 보여주는 예제입니다.  

```
{
    "Name": "AWSKinesisTap",
    "Version": "1.0.0.106",
    "PackageUrl": "https://s3-us-west-2.amazonaws.com/kinesis-agent-windows/downloads/AWSKinesisTap.{Version}.nupkg"
}
```
이`Version`키-값 쌍은 아직 설치되지 않은 경우 설치할 Kinesis 에이전트의 버전을 지정합니다. 이`{Version}`변수 참조의`PackageUrl`는 사용자가 지정한 값을 해결합니다.`Version`키-값 페어를 입력합니다. 이 예제에서 변수는 문자열`1.0.0.106`. 이 변수 해상도는 패키지 버전 파일에 원하는 특정 버전이 저장되는 단일 위치가있을 수 있도록 제공됩니다. 여러 패키지 버전 파일을 사용하여 더 큰 배포 전에 새 버전의 유효성을 검사하기 위해 Windows용 Kinesis Agent의 새 버전을 롤아웃하는 속도를 제어할 수 있습니다. Windows용 Kinesis 에이전트 배포를 롤백하려면 하나 이상의 패키지 버전 파일을 변경하여 사용자 환경에서 작동하는 것으로 알려진 Windows용 Kinesis 에이전트의 이전 버전을 지정합니다.  
의 값이`PackageVersion`키 - 값 쌍은 다른 패키지 버전 파일의 자동 선택을 용이하게하기 위해 변수 대체의 영향을받습니다. 변수 대체에 대한 자세한 내용은 단원을 참조하세요.[싱크 변수 대체 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-sink-variable-substitution).  
`AccessKey`  
Amazon S3 패키지 버전 파일에 대한 액세스를 인증할 때 사용할 액세스 키를 지정합니다. 이 키-값 페어는 선택 사항입니다. 이 키-값 페어를 사용하는 것은 권장하지 않습니다. 권장되는 대체 인증 방법은[인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication).  
`SecretKey`  
Amazon S3 패키지 버전 파일에 대한 액세스를 인증할 때 사용할 비밀 키를 지정합니다. 이 키-값 페어는 선택 사항입니다. 이 키-값 페어를 사용하는 것은 권장하지 않습니다. 권장되는 대체 인증 방법은[인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication).  
`Region`  
Amazon S3 에서 패키지 버전 파일에 액세스할 때 사용할 리전 엔드포인트를 지정합니다. 이 키-값 페어는 선택 사항입니다.  
`ProfileName`  
Amazon S3 패키지 버전 파일에 대한 액세스를 인증할 때 사용할 보안 프로필을 지정합니다. 자세한 내용은 [인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication) 섹션을 참조하세요. 이 키-값 페어는 선택 사항입니다.  
`RoleARN`  
교차 계정 시나리오에서 Amazon S3 패키지 버전 파일에 대한 액세스를 인증할 때 위임할 역할을 지정합니다. 자세한 내용은 [인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication) 섹션을 참조하세요. 이 키-값 페어는 선택 사항입니다.
그렇지 않은 경우`PackageUpdate`플러그인이 지정되면 업데이트가 필요한지 확인하기 위해 패키지 버전 파일이 검사되지 않습니다.

`ConfigUpdate`  
Windows용 Kinesis 에이전트가 업데이트된`appsettings.json`구성 파일을 파일 공유, 웹 사이트 또는 Amazon S3. 업데이트된 구성 파일이 있는 경우 Windows용 Kinesis 에이전트에서 다운로드하여 설치합니다.`ConfigUpdate`키-값 페어는 다음과 같습니다.    
`Type`  
값은 문자열 이어야 합니다.`ConfigUpdate`이며 필수입니다.  
`Interval`  
새 구성 파일을 확인하는 빈도를 문자열로 표시되는 분 단위로 지정합니다. 이 키 - 값 쌍은 선택 사항이며 지정되지 않은 경우 기본값은 5 분입니다. 값이 1보다 작으면 구성 파일 업데이트가 확인되지 않습니다.  
`Source`  
업데이트된 구성 파일을 찾을 위치를 지정합니다. 파일은 파일 공유에 있을 수 있습니다 (`file://`), 웹 사이트 (`http://`) 또는 Amazon S3 (`s3://`). 예를 들어 값`s3://mycompany/config/appsettings.json`는 Windows용 Kinesis 에이전트가`config/appsettings.json`파일의`mycompany`Amazon S3 버킷입니다.  
의 값이`Source`키-값 쌍은 Amazon S3 경우 대/소문자를 구분합니다.
의 값이`Source`키 - 값 쌍은 다른 구성 파일의 자동 선택을 용이하게하기 위해 변수 대체에 의해 영향을받습니다. 변수 대체에 대한 자세한 내용은 단원을 참조하세요.[싱크 변수 대체 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-sink-variable-substitution).  
`Destination`  
로컬 시스템에서 구성 파일을 저장할 위치를 지정합니다. 상대 경로, 절대 경로 또는 다음과 같은 환경 변수 참조가 포함 된 경로 일 수 있습니다.`%PROGRAMDATA%`. 경로가 상대 경로인 경우 Windows용 Kinesis 에이전트가 설치된 위치에 상대적입니다. 일반적으로 값은 다음과 같아야 합니다.`.\appsettings.json`. 이 키-값 페어가 필수입니다.  
`AccessKey`  
Amazon S3 구성 파일에 대한 액세스를 인증할 때 사용할 액세스 키를 지정합니다. 이 키-값 페어는 선택 사항입니다. 이 키-값 페어를 사용하는 것은 권장하지 않습니다. 권장되는 대체 인증 방법은[인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication).  
`SecretKey`  
Amazon S3 구성 파일에 대한 액세스를 인증할 때 사용할 비밀 키를 지정합니다. 이 키-값 페어는 선택 사항입니다. 이 키-값 페어를 사용하는 것은 권장하지 않습니다. 권장되는 대체 인증 방법은[인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication).  
`Region`  
Amazon S3 에서 구성 파일에 액세스할 때 사용할 리전 엔드포인트를 지정합니다. 이 키-값 페어는 선택 사항입니다.  
`ProfileName`  
Amazon S3 구성 파일에 대한 액세스를 인증할 때 사용할 보안 프로필을 지정합니다. 자세한 내용은 [인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication) 섹션을 참조하세요. 이 키-값 페어는 선택 사항입니다.  
`RoleARN`  
교차 계정 시나리오에서 Amazon S3 구성 파일에 대한 액세스를 인증할 때 위임할 역할을 지정합니다. 자세한 내용은 [인증 구성](sink-object-declarations.md#configuring-kinesis-agent-windows-authentication) 섹션을 참조하세요. 이 키-값 페어는 선택 사항입니다.
그렇지 않은 경우`ConfigUpdate`플러그인이 지정되면 구성 파일 업데이트가 필요한지 여부를 확인하기 위해 구성 파일이 검사되지 않습니다.

다음은 예제입니다.`appsettings.json`사용 방법을 보여 주는 구성 파일`PackageUpdate`및`ConfigUpdate`플러그인입니다. 이 예제에서는 패키지 버전 파일이 있는`mycompany`이라는 Amazon S3 버킷의 이름이`config/agent-package-version.json`. 이 파일은 약 2시간마다 변경 사항을 확인합니다. 다른 버전의 Windows용 Kinesis 에이전트가 패키지 버전 파일에 지정된 경우 지정된 에이전트 버전이 패키지 버전 파일의 지정된 위치에서 설치됩니다.

또한, 이`appsettings.json`구성 파일에 저장된`mycompany`이라는 Amazon S3 버킷의 이름이`config/appsettings.json`. 약 30분마다 해당 파일이 현재 구성 파일과 비교됩니다. 서로 다른 경우 업데이트된 구성 파일이 Amazon S3 에서 다운로드되고`appsettings.json`구성 파일을 입력합니다.

```
{
  "Sources": [
    {
      "Id": "ApplicationLogSource",
      "SourceType": "DirectorySource",
      "Directory": "C:\\LogSource\\",
      "FileNameFilter": "*.log",
      "RecordParser": "SingleLine"
    }
  ],
  "Sinks": [
    {
       "Id": "ApplicationLogKinesisFirehoseSink",
       "SinkType": "KinesisFirehose",
       "StreamName": "ApplicationLogFirehoseDeliveryStream",
       "Region": "us-east-1"
    }  
    ],
  "Pipes": [
    {
      "Id": "ApplicationLogSourceToApplicationLogKinesisFirehoseSink",
      "SourceRef": "ApplicationLogSource",
      "SinkRef": "ApplicationLogKinesisFirehoseSink"
    }
  ],
  "Plugins": [
    {
      "Type": "PackageUpdate"
      "Interval": "120",
      "PackageVersion": "s3://mycompany/config/agent-package-version.json"
    },
    {
      "Type": "ConfigUpdate",
      "Interval": "30", 
      "Source": "s3://mycompany/config/appsettings.json",
      "Destination": ".\appSettings.json"      
    }
  ]
}
```