

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

# 레거시 구독 라우터
<a name="legacy-subscription-router-component"></a>

레거시 구독 라우터(`aws.greengrass.LegacySubscriptionRouter`)는 Greengrass 코어 디바이스에서 구독을 관리합니다. 구독은 Lambda 함수가 코어 디바이스에서 MQTT 메시징에 사용할 수 있는 주제를 정의하는 AWS IoT Greengrass V1의 기능입니다. 자세한 내용은 *AWS IoT Greengrass V1 개발자 안내서*의 [MQTT 메시징 워크플로의 관리형 구독](https://docs.aws.amazon.com/greengrass/v1/developerguide/gg-sec.html#gg-msg-workflow)을 참조하세요.

이 구성 요소를 사용하여 AWS IoT Greengrass 코어 SDK를 사용하는 커넥터 구성 요소 및 Lambda 함수 구성 요소에 대한 구독을 활성화할 수 있습니다.

**참고**  <a name="legacy-subscription-router-requirement-note"></a>
레거시 구독 라우터 구성 요소는 Lambda 함수가 AWS IoT Greengrass 코어 SDK의 `publish()` 함수를 사용하는 경우에만 필요합니다. Lambda 함수 코드를 업데이트하여 AWS IoT Device SDK V2의 프로세스 간 통신(IPC) 인터페이스를 사용하는 경우 레거시 구독 라우터 구성 요소를 배포할 필요가 없습니다. 자세한 내용은 다음 [프로세스 간 통신](interprocess-communication.md) 서비스를 참조하세요.  
[로컬 메시지 게시/구독](ipc-publish-subscribe.md)
[AWS IoT Core MQTT 메시지 게시/구독](ipc-iot-core-mqtt.md)

**Topics**
+ [버전](#legacy-subscription-router-component-versions)
+ [Type](#legacy-subscription-router-component-type)
+ [운영 체제](#legacy-subscription-router-component-os-support)
+ [요구 사항](#legacy-subscription-router-component-requirements)
+ [종속성](#legacy-subscription-router-component-dependencies)
+ [구성](#legacy-subscription-router-component-configuration)
+ [로컬 로그 파일](#legacy-subscription-router-component-log-file)
+ [Changelog](#legacy-subscription-router-component-changelog)

## 버전
<a name="legacy-subscription-router-component-versions"></a>

이 구성 요소에는 다음과 같은 버전이 있습니다.
+ 2.1.x
+ 2.0.x

## Type
<a name="legacy-subscription-router-component-type"></a>

<a name="public-component-type-generic"></a>이 <a name="public-component-type-generic-phrase"></a>구성 요소는 일반 구성 요소(`aws.greengrass.generic`)입니다. [Greengrass nucleus](greengrass-nucleus-component.md)는 구성 요소의 수명 주기 스크립트를 실행합니다.

<a name="public-component-type-more-information"></a>자세한 내용은 [구성 요소 유형](develop-greengrass-components.md#component-types) 단원을 참조하십시오.

## 운영 체제
<a name="legacy-subscription-router-component-os-support"></a>

이 구성 요소는 Linux 코어 디바이스에만 설치할 수 있습니다.

## 요구 사항
<a name="legacy-subscription-router-component-requirements"></a>

이 구성 요소의 요구 사항은 다음과 같습니다.
+ 레거시 구독 라우터는 VPC에서 실행할 수 있습니다.

## 종속성
<a name="legacy-subscription-router-component-dependencies"></a>

구성 요소를 배포할 때는 호환되는 버전의 종속성 AWS IoT Greengrass 도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 섹션에는 이 구성 요소의 [릴리스된 버전](#legacy-subscription-router-component-changelog)에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. [AWS IoT Greengrass 콘솔](https://console.aws.amazon.com//greengrass)에서도 각 구성 요소 버전에 대한 종속성을 볼 수 있습니다. 구성 요소 세부 정보 페이지에서 **종속성** 목록을 찾습니다.

------
#### [ 2.1.15 ]

다음 표에는이 구성 요소의 버전 2.1.15에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.17.0 | 소프트 | 

------
#### [ 2.1.14 ]

다음 표에는이 구성 요소의 버전 2.1.14에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.16.0 | 소프트 | 

------
#### [ 2.1.13 ]

다음 표에는이 구성 요소의 버전 2.1.13에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.15.0 | 소프트 | 

------
#### [ 2.1.12 ]

다음 표에는 이 구성 요소의 버전 2.1.12에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.14.0 | 소프트 | 

------
#### [ 2.1.11 ]

다음 표에는 이 구성 요소의 버전 2.1.11에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 소프트 | 

------
#### [ 2.1.10 ]

다음 표에는 이 구성 요소의 버전 2.1.10에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 소프트 | 

------
#### [ 2.1.9 ]

다음 표에는 이 구성 요소의 버전 2.1.9에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 소프트 | 

------
#### [ 2.1.8 ]

다음 표에는 이 구성 요소의 버전 2.1.8에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 소프트 | 

------
#### [ 2.1.7 ]

다음 표에는 이 구성 요소의 버전 2.1.7에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 소프트 | 

------
#### [ 2.1.6 ]

다음 표에는 이 구성 요소의 버전 2.1.6에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 소프트 | 

------
#### [ 2.1.5 ]

다음 표에는 이 구성 요소의 버전 2.1.5에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 소프트 | 

------
#### [ 2.1.4 ]

다음 표에는 이 구성 요소의 버전 2.1.4에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 소프트 | 

------
#### [ 2.1.3 ]

다음 표에는 이 구성 요소의 버전 2.1.3에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 소프트 | 

------
#### [ 2.1.2 ]

다음 표에는 이 구성 요소의 버전 2.1.2에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 소프트 | 

------
#### [ 2.1.1 ]

다음 표에는 이 구성 요소의 버전 2.1.1에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 소프트 | 

------
#### [ 2.1.0 ]

다음 표에는 이 구성 요소의 버전 2.1.0에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 소프트 | 

------
#### [ 2.0.3 ]

다음 표에는 이 구성 요소의 버전 2.0.3에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0 | 소프트 | 

------

구성 요소 종속성에 대한 자세한 내용은 [구성 요소 레시피 참조](component-recipe-reference.md#recipe-reference-component-dependencies)를 참조하세요.

## 구성
<a name="legacy-subscription-router-component-configuration"></a>

이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.

------
#### [ v2.1.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(선택 사항) 코어 디바이스에서 활성화할 구독입니다. 이는 객체이며, 여기서 각 키는 고유한 ID이고 각 값은 해당 커넥터의 구독을 정의하는 객체입니다. V1 커넥터 구성 요소 또는 AWS IoT Greengrass 코어 SDK를 사용하는 Lambda 함수를 배포할 때 구독을 구성해야 합니다.  
각 구독 객체에는 다음 정보가 포함되어 있습니다.    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
이 구독의 고유한 ID입니다. 이 ID는 이 구독 객체의 키와 일치해야 합니다.  
`source`  
 AWS IoT Greengrass 코어 SDK를 사용하여에서 지정한 주제에 MQTT 메시지를 게시하는 Lambda 함수입니다`subject`. 다음 중 하나를 지정하세요.  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>코어 디바이스에서 Lambda 함수 구성 요소의 이름입니다. **component:com.example.HelloWorldLambda**와 같이 `component:` 접두사를 사용하여 구성 요소 이름을 지정합니다.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>코어 디바이스에서 Lambda 함수의 Amazon 리소스 이름(ARN)입니다.
**중요**  <a name="legacy-subscription-router-function-version-requirement"></a>
Lambda 함수 버전이 변경되면 함수의 새 버전을 사용하여 구독을 구성해야 합니다. 그렇지 않으면 이 구성 요소는 버전이 구독과 일치할 때까지 메시지를 라우팅하지 않습니다.  
가져올 함수의 버전이 포함된 Amazon 리소스 이름(ARN)을 지정해야 합니다. `$LATEST`같은 버전 별칭을 사용할 수 없습니다.
V1 커넥터 구성 요소에 대한 구독을 배포하려면 구성 요소의 이름 또는 커넥터 구성 요소의 Lambda 함수의 ARN을 지정합니다.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
소스와 대상이 메시지를 게시하고 수신할 수 있는 MQTT 주제 또는 주제 필터입니다. 이 값에서는 `+` 및 `#` 주제 와일드카드가 지원됩니다.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>`subject`에서 지정하는 주제에 대한 MQTT 메시지를 수신하는 대상입니다. 구독은 `source` 함수가 코어 디바이스의 Lambda 함수에 MQTT 메시지를 게시 AWS IoT Core 하도록 지정합니다. 다음 중 하나를 지정하세요.  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. `source` 함수는 MQTT 메시지를에 게시합니다 AWS IoT Core.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>코어 디바이스에서 Lambda 함수 구성 요소의 이름입니다. **component:com.example.HelloWorldLambda**와 같이 `component:` 접두사를 사용하여 구성 요소 이름을 지정합니다.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>코어 디바이스에서 Lambda 함수의 Amazon 리소스 이름(ARN)입니다.
**중요**  <a name="legacy-subscription-router-function-version-requirement"></a>
Lambda 함수 버전이 변경되면 함수의 새 버전을 사용하여 구독을 구성해야 합니다. 그렇지 않으면 이 구성 요소는 버전이 구독과 일치할 때까지 메시지를 라우팅하지 않습니다.  
가져올 함수의 버전이 포함된 Amazon 리소스 이름(ARN)을 지정해야 합니다. `$LATEST`같은 버전 별칭을 사용할 수 없습니다.
기본값: 구독 없음

**Example 구성 업데이트 예제(에 대한 구독 정의 AWS IoT Core)**  
다음 예제에서는 `com.example.HelloWorldLambda` Lambda 함수 구성 요소가 `hello/world` 주제의 AWS IoT Core 에 MQTT 메시지를 게시하도록 지정합니다.  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_cloud": {
      "id": "Greengrass_HelloWorld_to_cloud",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "cloud"
    }
  }
}
```

**Example 예제 구성 업데이트(다른 Lambda 함수 구독 정의)**  
다음 예제에서는 `com.example.HelloWorldLambda` Lambda 함수 구성 요소가 `hello/world` 주제에 대한 MQTT 메시지를 `com.example.MessageRelay` Lambda 함수 구성 요소에 게시하도록 지정합니다.  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_MessageRelay": {
      "id": "Greengrass_HelloWorld_to_MessageRelay",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "component:com.example.MessageRelay"
    }
  }
}
```

------
#### [ v2.0.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(선택 사항) 코어 디바이스에서 활성화할 구독입니다. 이는 객체이며, 여기서 각 키는 고유한 ID이고 각 값은 해당 커넥터의 구독을 정의하는 객체입니다. V1 커넥터 구성 요소 또는 AWS IoT Greengrass 코어 SDK를 사용하는 Lambda 함수를 배포할 때 구독을 구성해야 합니다.  
각 구독 객체에는 다음 정보가 포함되어 있습니다.    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
이 구독의 고유한 ID입니다. 이 ID는 이 구독 객체의 키와 일치해야 합니다.  
`source`  
 AWS IoT Greengrass 코어 SDK를 사용하여에서 지정한 주제에 MQTT 메시지를 게시하는 Lambda 함수입니다`subject`. 다음을 지정합니다.  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>코어 디바이스에서 Lambda 함수의 Amazon 리소스 이름(ARN)입니다.
**중요**  <a name="legacy-subscription-router-function-version-requirement"></a>
Lambda 함수 버전이 변경되면 함수의 새 버전을 사용하여 구독을 구성해야 합니다. 그렇지 않으면 이 구성 요소는 버전이 구독과 일치할 때까지 메시지를 라우팅하지 않습니다.  
가져올 함수의 버전이 포함된 Amazon 리소스 이름(ARN)을 지정해야 합니다. `$LATEST`같은 버전 별칭을 사용할 수 없습니다.
V1 커넥터 구성 요소에 대한 구독을 배포하려면 커넥터 구성 요소의 Lambda 함수의 ARN을 지정합니다.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
소스와 대상이 메시지를 게시하고 수신할 수 있는 MQTT 주제 또는 주제 필터입니다. 이 값에서는 `+` 및 `#` 주제 와일드카드가 지원됩니다.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>`subject`에서 지정하는 주제에 대한 MQTT 메시지를 수신하는 대상입니다. 구독은 `source` 함수가 코어 디바이스의 Lambda 함수에 MQTT 메시지를 게시 AWS IoT Core 하도록 지정합니다. 다음 중 하나를 지정하세요.  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. `source` 함수는 MQTT 메시지를에 게시합니다 AWS IoT Core.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>코어 디바이스에서 Lambda 함수의 Amazon 리소스 이름(ARN)입니다.
**중요**  <a name="legacy-subscription-router-function-version-requirement"></a>
Lambda 함수 버전이 변경되면 함수의 새 버전을 사용하여 구독을 구성해야 합니다. 그렇지 않으면 이 구성 요소는 버전이 구독과 일치할 때까지 메시지를 라우팅하지 않습니다.  
가져올 함수의 버전이 포함된 Amazon 리소스 이름(ARN)을 지정해야 합니다. `$LATEST`같은 버전 별칭을 사용할 수 없습니다.
기본값: 구독 없음

**Example 구성 업데이트 예제(에 대한 구독 정의 AWS IoT Core)**  
다음 예제에서는 `Greengrass_HelloWorld` 함수가 `hello/world` 주제의 AWS IoT Core 에 MQTT 메시지를 게시하도록 지정합니다.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_cloud": {
    "id": "Greengrass_HelloWorld_to_cloud",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "cloud"
  }
}
```

**Example 예제 구성 업데이트(다른 Lambda 함수 구독 정의)**  
다음 예제에서는 `Greengrass_HelloWorld` 함수가 `hello/world` 주제에 대한 MQTT 메시지를 `Greengrass_MessageRelay`에 게시하도록 지정합니다.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_MessageRelay": {
    "id": "Greengrass_HelloWorld_to_MessageRelay",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_MessageRelay:5"
  }
}
```

------

## 로컬 로그 파일
<a name="legacy-subscription-router-component-log-file"></a>

이 구성 요소는 로그를 출력하지 않습니다.

## Changelog
<a name="legacy-subscription-router-component-changelog"></a>

다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.


|  버전  |  변경 사항  | 
| --- | --- | 
| 2.1.16 | Greengrass nucleus 버전 2.17.0 릴리스의 구성 요소 버전을 업데이트합니다. | 
| 2.1.15 | Greengrass nucleus 버전 2.16.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.14 | Greengrass nucleus 버전 2.15.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.13 | Greengrass nucleus 버전 2.14.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.12 | Greengrass nucleus 버전 2.13.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.11 | Greengrass nucleus 버전 2.12.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.10 | Greengrass nucleus 버전 2.11.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.9 | Greengrass nucleus 버전 2.10.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.8 | Greengrass nucleus 버전 2.9.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.7 | Greengrass nucleus 버전 2.8.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.6 | Greengrass nucleus 버전 2.7.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.5 | Greengrass nucleus 버전 2.6.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.4 | Greengrass nucleus 버전 2.5.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.3 | Greengrass nucleus 버전 2.4.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.2 | Greengrass nucleus 버전 2.3.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.1 | Greengrass nucleus 버전 2.2.0 릴리스용으로 업데이트된 버전입니다. | 
| 2.1.0 |  <a name="changelog-legacy-subscription-router-2.1.0"></a>[See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/legacy-subscription-router-component.html)  | 
| 2.0.3 | 초기 버전입니다. | 