ElasticSearch 6.3 升級 6.6.1
Contents
ElasticSearch 做版本升級時,最怕的不是指令本身,而是升級後才發現資料、外掛或設定彼此不相容。尤其從 6.3 升到 6.6.1 這種同大版本下的小升級,看起來跨度不大,但實務上還是不能直接當作覆蓋檔案就結束。
升級前先想清楚三件事
- 資料要怎麼備份。
- 外掛有沒有對應版本。
- 現有設定能不能沿用。
如果這三件事沒有先確認,升級很容易變成邊修邊救火。
升級前的基本動作
最基本的就是先備份原本的安裝目錄與資料:
|
|
若環境允許,更建議先做完整 snapshot 或其他資料備援,不要只靠一份目錄複製就覺得安全。
常見升級流程
1. 先停服務
|
|
2. 替換核心程式內容
一般會更新像 bin、lib、modules 這些核心目錄,但不要隨便動到既有的 data 和正式使用中的 config。
3. 檢查外掛
這一步很關鍵。像 elasticsearch-sql 這類協力廠商外掛,版本不對就可能直接起不來。可以先列出現有外掛:
|
|
需要時先移除舊版,再安裝對應版本。
4. 啟動後驗證
升級完不是能啟動就算成功,還要看叢集狀態、索引狀態和應用查詢是否正常。
|
|
升級時容易忽略的點
1. 小版本升級不代表零風險
雖然不是跨大版,但外掛和某些設定還是可能有差異。
2. 先看應用有沒有綁死舊行為
有些系統其實不是 ES 升不了,而是你上層應用把某些查詢或欄位格式綁得太死。
3. 維護時段要預留
不要預設這類升級一定一次成功。外掛重裝、啟動驗證、回滾判斷都需要時間。
小結
ElasticSearch 6.3 升到 6.6.1 看似只是小升級,但仍然要把備份、外掛相容性和啟動後驗證當成重點。比起追求最快升級,真正重要的是能不能安全升上去、出問題時能不能退回來。