

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

# MQTT 3.1.1 브로커(Moquette)
<a name="mqtt-broker-moquette-component"></a>

EMQX MQTT 브로커 구성 요소(`aws.greengrass.clientdevices.mqtt.Moquette`)는 클라이언트 디바이스와 Greengrass 코어 디바이스 간의 MQTT 메시지를 처리합니다. 이 구성 요소는 [Moquette MQTT 브로커](https://github.com/moquette-io/moquette)의 수정된 버전을 제공합니다. 경량 MQTT 브로커를 실행하려면 이 MQTT 브로커를 배포합니다. MQTT 브로커를 선택하는 방법에 대한 자세한 내용은 [MQTT 브로커 선택](choose-local-mqtt-broker.md) 섹션을 참조하세요.

이 브로커는 MQTT 3.1.1 프로토콜을 구현합니다. 이 프로토콜에는 QoS 0, QoS 1, QoS 2 보존된 메시지, 유언 메시지 및 영구 세션에 대한 지원이 포함됩니다.

**참고**  <a name="client-device-component-context"></a>
클라이언트 디바이스는 Greengrass 코어 디바이스에 연결되어 처리할 MQTT 메시지와 데이터를 보내는 로컬 IoT 디바이스입니다. 자세한 내용은 [로컬 IoT 디바이스와 상호 작용](interact-with-local-iot-devices.md) 단원을 참조하십시오.

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

## 버전
<a name="mqtt-broker-moquette-component-versions"></a>

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

## 유형
<a name="mqtt-broker-moquette-component-type"></a>

<a name="public-component-type-plugin-para1"></a>이 구성 요소는 플러그인 구성 요소(`aws.greengrass.plugin`)입니다. [Greengrass nucleus는](greengrass-nucleus-component.md) 이 구성 요소를 nucleus와 동일한 Java 가상 머신(JVM)에서 실행합니다. 코어 디바이스에서 구성 요소의 버전을 변경하면 nucleus가 다시 시작됩니다.

<a name="public-component-type-plugin-para2"></a>이 구성 요소에서는 Greengrass nucleus와 동일한 로그 파일이 사용됩니다. 자세한 내용은 [AWS IoT Greengrass 로그 모니터링](monitor-logs.md) 단원을 참조하십시오.

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

## 운영 체제
<a name="mqtt-broker-moquette-component-os-support"></a>

이 구성 요소는 다음 운영 체제를 실행하는 코어 디바이스에 설치할 수 있습니다.
+ Linux
+ Windows

## 요구 사항
<a name="mqtt-broker-moquette-component-requirements"></a>

이 구성 요소의 요구 사항은 다음과 같습니다.
+ 코어 디바이스는 MQTT 브로커가 작동하는 포트에서 연결을 허용할 수 있어야 합니다. 이 구성 요소는 기본적으로 포트 8883에서 MQTT 브로커를 실행합니다. 이 구성 요소를 구성할 때 다른 포트를 지정할 수 있습니다.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>다른 포트를 지정하고 [MQTT 브리지 구성 요소](mqtt-bridge-component.md)를 사용하여 MQTT 메시지를 다른 브로커에 릴레이하는 경우 MQTT 브리지 v2.1.0 이상을 사용해야 합니다. 이 구성 요소에서 MQTT 브로커가 작동하는 포트를 사용하도록 구성합니다.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>다른 포트를 지정하고 [IP 감지기 구성 요소](ip-detector-component.md)를 사용하여 MQTT 브로커 엔드포인트를 관리하는 경우 IP 감지기 v2.1.0 이상을 사용해야 합니다. 이 구성 요소에서 MQTT 브로커가 작동하는 포트를 보고하도록 구성합니다.
+ Moquette MQTT 브로커 구성 요소는 VPC에서 실행할 수 있습니다.

## 종속성
<a name="mqtt-broker-moquette-component-dependencies"></a>

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

------
#### [ 2.3.7 ]

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.2.0 <2.6.0 | 하드 | 

------
#### [ 2.3.2 – 2.3.6 ]

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.2.0 <2.5.0 | 하드 | 

------
#### [ 2.3.0 and 2.3.1 ]

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.2.0 <2.4.0 | 하드 | 

------
#### [ 2.2.0 ]

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.2.0 <2.3.0 | 하드 | 

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

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.0.0 <2.2.0 | 하드 | 

------
#### [ 2.0.0 - 2.0.2 ]

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


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [클라이언트 디바이스 인증](client-device-auth-component.md) | >=2.0.0 <2.1.0 | 하드 | 

------

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

## 구성
<a name="mqtt-broker-moquette-component-configuration"></a>

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

`moquette`  
(선택 사항) 사용할 [Moquette MQTT 브로커](https://github.com/moquette-io/moquette) 구성입니다. 이 구성 요소에서 Moqeutte 구성 옵션의 하위 집합을 구성할 수 있습니다. 자세한 내용은 [Moquette 구성 파일](https://github.com/moquette-io/moquette/blob/main/distribution/src/main/resources/moquette.conf) 의 인라인 설명을 참조하세요.  
이 객체에는 다음 정보가 포함되어 있어야 합니다.    
`ssl_port`  
(선택 사항) MQTT 브로커가 작동하는 포트입니다.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>다른 포트를 지정하고 [MQTT 브리지 구성 요소](mqtt-bridge-component.md)를 사용하여 MQTT 메시지를 다른 브로커에 릴레이하는 경우 MQTT 브리지 v2.1.0 이상을 사용해야 합니다. 이 구성 요소에서 MQTT 브로커가 작동하는 포트를 사용하도록 구성합니다.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>다른 포트를 지정하고 [IP 감지기 구성 요소](ip-detector-component.md)를 사용하여 MQTT 브로커 엔드포인트를 관리하는 경우 IP 감지기 v2.1.0 이상을 사용해야 합니다. 이 구성 요소에서 MQTT 브로커가 작동하는 포트를 보고하도록 구성합니다.
기본값: `8883`  
`host`  
(선택 사항) MQTT 브로커가 바인딩되는 인터페이스입니다. 예를 들어 MQTT 브로커가 특정 로컬 네트워크에만 바인딩되도록 이 파라미터를 변경할 수 있습니다.  
기본값: `0.0.0.0`(모든 네트워크 인터페이스에 바인딩됨)

startupTimeoutSeconds  
(선택 사항) 구성 요소가 시작되는 최대 시간(초)입니다. 이 제한 시간이 초과되면 구성 요소의 상태가 `BROKEN`으로 변경됩니다.  
기본값: `120`

**Example 예: 구성 병합 업데이트**  
다음 예제 구성에서는 포트 443에서 MQTT 브로커를 작동하도록 지정합니다.  

```
{
  "moquette": {
    "ssl_port": "443"
  }
}
```

## 로컬 로그 파일
<a name="mqtt-broker-moquette-component-log-file"></a>

이 구성 요소는 [Greengrass nucleus](greengrass-nucleus-component.md) 구성요소와 동일한 로그 파일을 사용합니다.

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

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

```
C:\greengrass\v2\logs\greengrass.log
```

------

**이 구성 요소의 로그를 보려면**
+ 코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다. `/greengrass/v2` 또는 *C:\$1greengrass\$1v2*를 AWS IoT Greengrass 루트 폴더의 경로로 바꿉니다.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="mqtt-broker-moquette-component-changelog"></a>

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


|  **버전**  |  **변경 사항**  | 
| --- | --- | 
|  2.3.7  |  [클라이언트 디바이스 인증](client-device-auth-component.md) 버전 2.5.0 릴리스에 대한 버전이 업데이트되었습니다.  | 
|  2.3.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.3  |  <a name="changelog-mqtt-broker-moquette-2.3.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.2  |  [클라이언트 디바이스 인증](client-device-auth-component.md) 버전 2.4.0 릴리스에 대한 버전이 업데이트되었습니다.  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.0  |  인증서 체인에 대한 지원을 추가합니다.  | 
|  2.2.0  |  [클라이언트 디바이스 인증](client-device-auth-component.md) 버전 2.2.0 릴리스에 대한 버전이 업데이트되었습니다.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.1  |  Greengrass nucleus 버전 2.4.0 릴리스용으로 업데이트된 버전입니다.  | 
|  2.0.0  |  초기 버전입니다.  | 