es5-00
ทาง Elastic เพิ่งปล่อย Elastic Stack 5.0 ออกมา
ซึ่งประกอบไปด้วย

  • Elasticsearch 5.0.0
  • Kibana 5.0.0
  • Logstash 5.0.0
  • Beats 5.0.0
  • X-Pack 5.0.0
  • ES-Hadoop 5.0.0

แน่นอนว่ามีการเปลี่ยนแปลงมากมาย
ทั้งความสามารถใหม่ ๆ และ breaking changes
โดยสิ่งที่ขอแนะนำคือ Elasticsearch Ingest Node
มาดูกันว่ามันคืออะไร ทำอะไรบ้าง ?

Elasticsearch Ingest Node คืออะไร ?

ตั้งแต่ Elasticseach 5.0 นั้นเราสามารถกำหนดขั้นตอนการจัดการข้อมูลได้เอง
หรือเป็น pre-process data
ก่อนที่นำผลลัพธ์ไปจัดเก็บใน Elasticsearch หรือ indexing ต่อไป
ซึ่งเป็นการทำงานที่คล้ายกับ Logstash นั่นเอง
โดยกระบวนการเหล่านี้เรียกว่า Ingest

เปรียบเทียบการทำงานดังรูป

es5-01

โดยค่า default ของ Elasticsearch นั้นทุก ๆ node จะเป็น Ingest node อยู่แล้ว
ดังนั้นสามารถปิดได้นะ ในไฟล์ elasticsearch.yml ดังนี้

node.ingest=false

ขั้นตอนการของ pre-process data ของ Ingest จะทำงานผ่าน Pipeline API

สามารถดู Ingest API เพิ่มเติมได้ ประกอบไปด้วย

  • Put Pipeline API
  • Get Pipeline API
  • Delete Pipeline API
  • Simulate Pipeline API

ปล.
ชีวิตน่าจะดีขึ้นนะครับ แต่ก็แอบ configuration ยากนิดหน่อย !!

และทาง Sematext ได้ทำ performance testing ระหว่าง Ingest กับ Logstash

ไว้อย่างน่าสนใจที่ Elasticsearch Ingest Node vs Logstash Performance

23-rules-logstash-up-cpu