Cerebro是一款專為Elasticsearch設計的開源管理工具,體積小、啟動快,能夠直觀查看叢集健康狀態、管理索引資料和執行搜尋查詢,適合開發和營運人員快速檢查與管理ES叢集。
準備工作
擷取叢集串連地址
您可以通過VPC私網或公網地址串連到ES叢集。
VPC私網串連地址:通過VPC私網地址訪問ES叢集,延遲低,穩定性高。該地址在叢集建立成功後預設開啟。
公網串連地址:通過公網訪問ES叢集,需手動開啟。
如何開啟公網訪問:
登入ES控制台,進入執行個體基本資料頁面。
單擊左側導覽列 配置與管理>安全配置,開啟公網訪問。待叢集狀態由生效中變更為生效時,表示公網訪問已成功開啟。
重要公網地址會降低ES叢集的安全性,如果使用公網地址,請務必配置IP白名單,並在使用完畢後及時關閉公網訪問。
設定IP白名單
為保障叢集安全,您需要將待訪問裝置的IP地址加入ES叢集的VPC私網或者公網白名單,該IP地址所屬的裝置才能訪問ES叢集。
擷取待訪問裝置IP。
您可以參照以下情境,擷取待訪問裝置的IP地址。
情境
需擷取的IP地址
擷取方式
在本地裝置中串連ES叢集
本地裝置公網IP。
如果本地裝置位於區域網路(如家庭或公司網路)內,需將該區域網路的公網出口IP地址添加到ES叢集的公網白名單中。
通過
curl ipinfo.io/ip查詢本地裝置公網IP。在不同VPC的ECS執行個體中串連ES叢集
ECS執行個體的公網IP
登入ECS控制台,在執行個體列表查看。
在相同VPC的ECS執行個體中串連ES叢集
ECS執行個體的私網IP
登入ECS控制台,在執行個體列表查看。
將擷取到的IP地址添加到白名單分組中。
登入ES控制台,進入執行個體基本資料,單擊左側導覽列 配置與管理>安全配置,單擊修改在彈窗中設定VPC私網或者公網訪問白名單。

單擊default分組右側的配置 ,在彈出的對話方塊中添加VPC私網或者公網白名單。單個叢集最多可配置300個IP或者IP網段,多個IP或者IP網段之間用英文逗號隔開,且逗號前後不能有空格。
也可單擊新增IP白名單分組,自訂分組名稱。
白名單分組僅用於IP地址管理,不影響存取權限。所有分組內的IP地址許可權相同。

配置類別
格式和樣本值
重要注意事項
IPv4地址格式
單個IP:
192.168.0.1網段:
192.168.0.0/24
禁止訪問:
127.0.0.1允許所有訪問:
0.0.0.0/0重要存在高危風險,強烈建議不要配置
0.0.0.0/0。部分叢集版本(如7.16/8.5)和地區不支援
0.0.0.0/0,請以控制台介面或者報錯提示為準。
IPv6地址格式
(僅v2部署架構且所屬地區為杭州的叢集支援)
單個IP:
2401:XXXX:1000:24::5網段:
2401:XXXX:1000::/48
禁止所有訪問:
::1允許所有訪問
::/0重要存在高危風險,強烈建議不要配置
::/0。部分叢集版本不支援
::/0,請以控制台介面或者配置提示資訊為準。
配置完成後,單擊確認。

串連叢集
1. 安裝並配置Cerebro
以Linux系統為例串連ECS執行個體。
Cerebro運行在Java虛擬機器上,需要在ECS執行個體中安裝JDK,版本為1.8及以上,詳細步驟請參見手動部署OpenJDK。
下載並解壓Cerebro安裝包。
# 下載Cerebro v0.9.0 wget https://github.com/lmenezes/cerebro/releases/download/v0.9.0/cerebro-0.9.0.tgz # 解壓 tar -zxvf cerebro-0.9.0.tgz修改Cerebro設定檔,關聯待訪問的ES執行個體。
開啟設定檔application.conf。
vim cerebro-0.9.0/conf/application.conf按照以下說明配置hosts並儲存檔案。
說明支援關聯多個執行個體,多個執行個體之間用英文逗號(,)分隔。
參數
說明
host
準備工作中已擷取的叢集串連地址:
VPC私網串連地址:格式為
http://<ES執行個體的私網地址>:9200。公網串連地址:格式為
http://<ES執行個體的公網地址>:9200。
ES叢集預設開啟http協議,建議您開啟並使用https協議,確保資料轉送過程中的機密性、安全性和完整性。登入ES控制台進入執行個體基本資料,單擊左側導覽列 配置與管理>安全配置,開啟https協議。
重要啟用HTTPS協議前,請務必更新應用程式代碼以支援HTTPS串連方式。否則,現有使用HTTP協議的代碼將無法建立安全連線,導致串連失敗。
name
ES叢集ID,登入ES控制台在ES執行個體列表頁面擷取ID。
username
預設訪問使用者名稱為elastic,該使用者具有叢集最高許可權(可理解為管理員賬戶)。
出於安全考慮,不建議在生產環境中直接使用此預設管理員賬戶,您可以通過Elasticsearch X-Pack的RBAC(Role-based Access Control)機制,自訂角色並分配許可權,然後將角色指派給使用者,實現許可權精細化管控,具體操作請參見通過Elasticsearch X-Pack角色管理實現使用者權限管控。
password
UserName對應的密碼。
2. 啟動Cerebro服務
您可以根據需要選擇在前台或者後台來啟動Cerebro。
前台啟動(用於調試)
cd cerebro-0.9.0 bin/cerebro啟動成功後,返回如下結果。

後台啟動(推薦生產環境使用)
cd cerebro-0.9.0 nohup bin/cerebro > cerebro.log 2>&1 &您可以通過
tail -f cerebro.log查看日誌,通過pkill -f cerebro停止服務。
3. 訪問Cerebro並串連ES叢集
常見問題與故障排查
問題 1:無法啟動 Cerebro 服務
可能原因:JDK未安裝或版本過低、連接埠被佔用、檔案許可權不足。
解決方案:檢查
java -version,確保版本不低於1.8;在application.conf中修改http.port以更換連接埠;為bin/cerebro指令碼添加執行許可權chmod +x bin/cerebro。
問題 2:無法串連到 ES 叢集
可能原因:IP白名單未配置、ES地址或連接埠錯誤、ECS安全性群組未允許存取連接埠、使用者名稱或密碼錯誤。
解決方案:檢查阿里雲ES控制台的IP白名單配置;確認
application.conf中的host地址正確;檢查ECS安全性群組是否允許存取了ES連接埠(9200)和Cerebro連接埠(9000);確認使用者名稱和密碼無誤。


