升級ELK到最新版本

線上ELK運行一段時間了,但是各種小問題不斷,logstash經常掛掉,kibana查詢緩慢等等,現在決定升級ELK組件到最新版本,看看效果。


一 升級Elasticsearch

Elasticsearch原來的版本是1.7.1,Elasticsearch最新版本是2.3.3

在升級之前首先查看的就是官方文檔關於升級的注意事項

1.查看Breaking Changes說明

Elasticsearch的升級總體原則就是:

  大版本升級需要重啓整個Elasticsearch集羣

  小版本升級可以一次升級一個集羣節點

由於我們這次升級的版本跨度比較大,所以需要詳細地瞭解版本變更


2.使用elasticsearch-migration插件幫助診斷升級

elasticsearch-migration這個插件可以幫助檢查是否可以直接升級當前版本到下一個版本,或者是否在升級之前對現有的數據或者集羣做一些更改。

目前遇到一個需要更改的,Elasticsearch2.0之後不能使用帶" ." 的字段,例如nginx.client這種字段是不能再用了,可以改成nginx_clent這種形式。


Elasticsearch2.0以下版本安裝插件

./bin/plugin -i migration -u https://github.com/elastic/elasticsearch-migration/releases/download/v1.18/elasticsearch-migration-1.18.zip


通過http://xxxx:9200/_plugin/migration/

這種url訪問,然後根據提示操作


3.升級之前備份數據


4.升級新版本,重啓整個Elasticsearch


在升級的過程中注意查看日誌,看看是否有報錯信息,對於每個報錯信息搜索相應的解決辦法.








二 升級Logstash

Logstash由版本1.5.5升級到2.3.3

新版本增加了些有用的功能,修復了之前的一些BUG,詳細的可以查看官方文檔

可以動態加載配置文件

從Logstash2.3開始可以設置Logstash自動檢查和加載配置文件

bin/logstash -f apache.config --auto-reload

Logstash默認會每隔3秒檢查配置變更,可以通過 --reload-interval 指定檢查間隔時間

如果想要強制重新加載可以使用SIGHHUP信號


可以在配置文件中引用變量

input {
  tcp {
    port => "${TCP_PORT:54321}"
  }
}


核心組件使用Java重寫,性能得到提升

wKioL1dsHxvBrNdoAAHwyoeEoPk240.png-wh_50

wKiom1dsHvLxwbExAAHFXyETu9o175.png-wh_50



使用bin/logstash-plugin替代bin/plugin



三 升級Kibana

wget https://download.elastic.co/kibana/kibana/kibana-4.5.1-linux-x64.tar.gz








升級完後,再也沒有收到logstash 掛掉的報警了









參考文檔:

https://www.elastic.co/guide/en/elasticsearch/reference/2.3/setup-upgrade.html

https://www.elastic.co/guide/en/elasticsearch/reference/2.3/breaking-changes.html

https://github.com/elastic/logstash/blob/2.3/CHANGELOG.md#233-june-14-2016

https://github.com/elastic/elasticsearch-migration/tree/1.x


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章