[TOC]
# Converting Ingest Node Pipelines
> <font color=#DC143C size=4>NOTE</font>:注,標題不知道怎么翻譯,不過關于Ingest Node的信息可以參考下<https://cloud.tencent.com/developer/article/1354027>這篇文章。簡單說來Ingest Node是Elasticsearch5.0之后的一個新特性,可以在文檔(數據)存入Elasticsearch之前進行處理。功能和Logstash有重合,但可以簡化ELK架構。即可以采用輕量級的Beats+Ingest Node+Elasticsearch+Kibana的架構。
在使用[ingest](<https://www.elastic.co/guide/en/elasticsearch/reference/6.5/ingest.html>)解析你的數據之后,你可能會決定要利用Logstash中更豐富的轉換功能 。比如,如果你可能需要使用Logstash替換掉ingest pipelines如果你想要:
+ 從更多的inputs獲取。Logstash原生支持從多種源如TCP,UDP,syslog和關系型數據庫獲取數據。
+ 使用多個outputs。Ingest node被設計為只支持Elasticsearch作為output,但你可能想要使用不止一個output。比如,你可能想將你的數據歸檔到S3同時索引到Elasticsearch。
+ 利用Logstash中更豐富的轉換功能,例如外部查找。
+ 使用持久化隊列來處理高峰數據(從Beats或其他源)
為了更方便的遷移你的配置,Logstash提供了一個ingest pipeline轉換工具。轉換工具將ingest pipeline定義為input,并且,可能的話,創建等效的Logstash配置作為output。
查看完整的[限制](https://www.elastic.co/guide/en/logstash/6.5/ingest-converter.html#ingest-converter-limitations)列表
# 運行工具
你可以在Logstash安裝目錄中的`bin`目錄中找到轉換工具。在[Logstash 目錄布局](https://www.elastic.co/guide/en/logstash/6.5/dir-layout.html)來找到自己系統上`bin`目錄的位置。
使用下面的命令來運行轉換工具:
```bash
bin/ingest-convert.sh --input INPUT_FILE_URI --output OUTPUT_FILE_URI [--append-stdio]
```
Where:
+ `INPUT_FILE_URI`是定義ingest node pipeline的JSON文件的完整路徑的文件URI。
+ `OUTPUT_FILE_URI`是由工具生成的Logstash DSL文件的文件URI。
+ `--append-stdio`是一個可選標志,它將stdin和stdout部分添加到配置中,而不是添加默認的Elasticsearch輸出。
這個命令需要一個文件URI,所以確保使用的斜線并且指定的文件的完整路徑。
示例:
```bash
bin/ingest-convert.sh --input file:///tmp/ingest/apache.json --output file:///tmp/ingest/apache.conf
```
# 限制
+ 不支持無痛腳本轉換。
+ 只有支持的processors的子集可以被轉換。對于不支持的processors,轉換工具將會產生一個警告并嘗試轉換。
# 支持的Processors
下面的ingest node processors目前支持轉換工具:
+ Append
+ Convert
+ Date
+ GeoIP
+ Grok
+ Gsub
+ Json
+ Lowercase
+ Rename
+ Set
- Emmm
- Logstash簡介
- 開始使用Logstash
- 安裝Logstash
- 儲存你的第一個事件
- 通過Logstash解析日志
- 多個輸入和輸出插件的混合使用
- Logstash是如何工作的
- 執行模型Execution Model
- 設置并運行Logstash
- Logstash目錄布局
- Logstash配置文件
- logstash.yml
- Secrets keystore for secure settings
- 從命令行運行Logstash
- 以服務的方式運行Logstash
- 在Docker中運行Logstash
- 配置容器版Logstash
- Logging
- 關閉Logstash
- 安裝X-Pack
- 設置X-Pack
- 升級Logstash
- 使用包管理升級
- 直接下載進行升級
- 升級至6.0
- Upgrading with the Persistent Queue Enabled
- 配置Logstash
- 管道配置文件的結構
- 訪問配置中的事件數據和字段
- 在配置中使用環境變量
- Logstash配置示例
- 多管道
- 管道間通信(beta)
- 重載配置文件
- 管理多行事件
- Glob Pattern Support
- Converting Ingest Node Pipelines
- Logstash間通信
- 配置集中式管道管理
- X-Pack Monitoring
- X-Pack Security
- X-Pack Settings
- Field References Deep Dive(深入字段引用)
- 管理Logstash
- 集中式管道管理
- 使用Logstash模塊
- 使用Elastic Cloud
- Logstash ArcSight模塊