

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

# Elasticsearch
<a name="elasticsearch-rule-action"></a>

Elasticsearch(`elasticsearch`) 작업을 사용하여 MQTT 메시지의 데이터를 Amazon OpenSearch Service 도메인에 전송합니다. 그런 다음 OpenSearch 대시보드와 같은 도구를 사용하여 OpenSearch Service에서 데이터를 쿼리하고 시각화할 수 있습니다.

**주의**  
`Elasticsearch` 작업은 기존 규칙 작업에서만 사용할 수 있습니다. 새 규칙 작업을 생성하거나 기존 규칙 작업을 업데이트하려면 대신 `OpenSearch` 규칙 작업을 사용합니다. 자세한 내용은 [OpenSearch](opensearch-rule-action.md) 단원을 참조하십시오.

## 요구 사항
<a name="elasticsearch-rule-action-requirements"></a>

이 규칙 작업은 다음 요구 사항을 충족해야 합니다.
+ `es:ESHttpPut` 작업을 수행하기 위해가 맡을 AWS IoT 수 있는 IAM 역할입니다. 자세한 내용은 [AWS IoT 규칙에 필요한 액세스 권한 부여](iot-create-role.md) 단원을 참조하십시오.

   AWS IoT 콘솔에서가이 규칙 작업을 수행하도록 허용하는 역할을 선택하거나 생성할 수 AWS IoT 있습니다.
+ 고객 관리형 AWS KMS key (KMS 키)를 사용하여 OpenSearch에서 저장 데이터를 암호화하는 경우 호출자를 대신하여 KMS 키를 사용할 수 있는 권한이 서비스에 있어야 합니다. 자세한 내용은 *Amazon OpenSearch Service 개발자 안내서*의 [Amazon OpenSearch Service의 저장 시 데이터 암호화](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html)를 참조하세요.

## 파라미터
<a name="elasticsearch-rule-action-parameters"></a>

이 작업을 사용하여 AWS IoT 규칙을 생성할 때 다음 정보를 지정해야 합니다.

`endpoint`  
서비스 도메인의 엔드포인트입니다.  
[대체 템플릿](iot-substitution-templates.md) 지원: API 및 AWS CLI 만 해당

`index`  
데이터를 저장할 인덱스입니다.  
[대체 템플릿](iot-substitution-templates.md) 지원: 예

`type`  
저장 중인 문서의 유형입니다.  
[대체 템플릿](iot-substitution-templates.md) 지원: 예

`id`  
각 문서의 고유 식별자입니다.  
[대체 템플릿](iot-substitution-templates.md) 지원: 예

`roleARN`  
OpenSearch 도메인에 대한 액세스를 허용하는 IAM 역할입니다. 자세한 내용은 [요구 사항](#elasticsearch-rule-action-requirements) 단원을 참조하십시오.  
[대체 템플릿](iot-substitution-templates.md) 지원: 아니오

## 예제
<a name="elasticsearch-rule-action-examples"></a>

다음 JSON 예제에서는 AWS IoT 규칙에서 Elasticsearch 작업을 정의하고 `elasticsearch` 작업에 대한 필드를 지정하는 방법을 정의합니다. 자세한 내용은 [ElasticsearchAction](https://docs.aws.amazon.com/iot/latest/apireference/API_ElasticsearchAction.html) 섹션을 참조하세요.

```
{
    "topicRulePayload": {
        "sql": "SELECT *, timestamp() as timestamp FROM 'iot/test'",
        "ruleDisabled": false,
        "awsIotSqlVersion": "2016-03-23",
        "actions": [
            {
                "elasticsearch": {
                    "endpoint": "https://my-endpoint",
                    "index": "my-index",
                    "type": "my-type",
                    "id": "${newuuid()}",
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_es"
                }
            }
        ]
    }
}
```

다음 JSON 예제에서는 AWS IoT 규칙에서 대체 템플릿을 사용하여 Elasticsearch 작업을 정의합니다.

```
{
    "topicRulePayload": {
        "sql": "SELECT * FROM 'some/topic'",
        "ruleDisabled": false,
        "awsIotSqlVersion": "2016-03-23",
        "actions": [
            {
                "elasticsearch": {
                    "endpoint": "https://my-endpoint",
                    "index": "${topic()}",
                    "type": "${type}",
                    "id": "${newuuid()}",
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_es"
                }
            }
        ]
    }
}
```

## 다음 사항도 참조하세요.
<a name="elasticsearch-rule-action-see-also"></a>
+ [OpenSearch](opensearch-rule-action.md)
+ [Amazon OpenSearch Service란 무엇입니까?](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/)