0x00 概述
由於Elastic大版本7中xpack已經開源,可以直接配置使用,考慮將Elasticsearch6的集群全部升級為7;
0x01 過程
集群升級過程不表,容器日志是使用filebeat采集的,filebeat的docker鏡像版本是6.8.5,發現pod日志直接報錯,ES7的集群一直沒收到pod發送過來的日志,報錯日志如下:
# INFO pipeline/output.go:93 Attempting to reconnect to backoff(elasticsearch(http://192.28.254.21:29200)) with 9 reconnect attempt(s)
日志級別是INFO,github上也有類似的issue,初步懷疑是ES升級到7.8,對應的filebeat容器鏡像也需要升級到7.8;
直接從國內鏡像源拉取最新的filebeat7.8,docker push到repository,同時記得在如下配置加上ES7配置的賬戶和密碼:
output.elasticsearch: hosts: ["192.25.254.21:19200","192.25.254.22:19200"] username: "zhelishiyonghuming" password: "zhelishimima"
建議直接清除logging名稱空間內的ds,cm,filebeat pod,用更新的yaml文件重新啟動filebeat7.8;
啟動后,容器日志傳輸正常。
0x02 總結
根據Elastic的尿性,要升級應該進行全部組件升級,跨大版本的升級會出現各種莫名其妙的問題;
謹記,elastic生態圈版本升級,盡量所有組件一起升級,不要心存僥幸。