elasticsearch5.0.0中CAT接口和打包接口的的變化 原

CAT API changes

使用Accept報頭指定響應的media類型

在精簡接口API的返回media類型中,以前的版本是通過Accept頭的Content-type字段來確定的,這和HTTP規範中的含義不一致,因此新版本刪除了這一特性。

_cat/nodes接口中host字段被移除。因爲這個字段和ip字段的內容是一樣的。

在recovery接口中增加了bytes_recovered和files_recovered字段,分別表示已恢復的字節數和文件的總數。

total_files 和total_bytes字段分別改名成爲files_total和bytes_total。

translog字段改名爲translog_ops_recovered,translog_total改名爲translog_ops,translog_percent改名爲translog_ops_percent,這三個字段的簡稱分別是tor,to,top。

Changes to cat nodes API

在nodes接口中,m代表master,d代碼data,i代表ingest節點類型,一個節點可以同時有多個角色,當節點沒有任何角色的時候表示這個節點是一個協調角色。當這個節點是集羣的主節點的時候,master列會顯示*。

Packaging

打包的變化

Apt/yum安裝下載地址發生了變化,從https://packages.elastic.co到 https://artifacts.elastic.co/.

新版本啓動時間會變長。在5.0版本中JVM啓動參數增加了-XX:+AlwaysPreTouch標誌,這個選項將在啓動的時候佔用JVM堆的所有內存頁,這樣在GC垃圾回收時間減少內存頁體提交的機會。但這將增加ES的啓動時間,同時增加ES的初始化內存空間。

JVM options

JAVA虛擬機選擇參數配置被放在了一個新的配置文件jvm.options中。

這意味着以前的通過環境變量的設置參數都被取消了,包括ES_MIN_MEM, ES_MAX_MEM, ES_HEAP_SIZE, ES_HEAP_NEWSIZE, ES_DIRECT_SIZE, ES_USE_IPV4, ES_GC_OPTS, ES_GC_LOG_FILE, and JAVA_OPTS.

當通過解壓ES包的時候,默認的位置在config/jvm.options中,通過Debain或者RPM包安裝後的默認配置路徑在/etc/elasticsearch/jvm.options中,也可以通過設置環境變量ES_JVM_OPTIONS來改變文件的路徑。

用於Windows服務的線程堆棧大小

在之前安裝成Windows服務時,安裝腳本會配置線程的堆棧大小(這是服務守護進程需要),但現在由於配置被移到了jvm.options文件中,則安裝腳本不在配置線程的堆棧大小。在新版本中,在安裝成Windows服務前需要修改jvm.options文件,在32位系統中添加 -Xss320k參數,在64位系統中添加-Xss1m參數。

/bin/bash文件被依賴

之前的版本,用來啓動ES和運行插件的命令腳本依賴Bourne-compatible shell。在5.0中,通過RPM和Debian包安裝需要依賴bash shell,bash shell的默認路徑是/bin/bash。

在之前配置ES環境變量有兩種方法,1是通過佔位符語法${env.ENV_VAR_NAME},2是沒有env前綴的語法 ${ENV_VAR_NAME},現在只保留了第二種寫法,第一種寫法被移除。

同樣,通過JVM系統參數設置的ES配置也被取消。

在之前的版本如果遇到內存溢出或者其他致命錯誤則ES不會停止工作,但這樣會可能會產生比較嚴重的問題,在5.0後,當遇到這些問題時候,會從新啓動ES。

本文由賽克 藍德(secisland)原創,轉載請標明作者和出處。

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