控與管理平臺的部署、配置與運(yùn)維實(shí)戰(zhàn))
運(yùn)維觀測后端【免費(fèi)下載鏈接】elasticsearch-HQMonitoring and Management Web Application for ElasticSearch instances and clusters.項(xiàng)目地址https://gitcode.com/gh_mirrors/el/elasticsearch-HQ點(diǎn)擊查看免費(fèi)下載導(dǎo)讀ElasticHQ 是一款面向 Elasticsearch 實(shí)例與集群的簡化監(jiān)控與管理 Web 應(yīng)用覆蓋集群健康、節(jié)點(diǎn)、索引、分片等核心指標(biāo)的實(shí)時監(jiān)控并提供索引創(chuàng)建、Mapping 復(fù)制、Reindex、REST/cat API 一鍵訪問與查詢等日常運(yùn)維能力。本文以倉庫根目錄 README.md 為主線結(jié)合 docs/_sources/installation.txt 的安裝文檔與倉庫源碼完整講解 Docker 部署、源碼安裝、命令行參數(shù)、環(huán)境變量、SSL、生產(chǎn)化部署與故障排查幫助你快速搭建一套可用的 Elasticsearch 運(yùn)維控制臺。需要提前說明的是README 明確標(biāo)注本項(xiàng)目已不再維護(hù)no longer maintained使用需自擔(dān)風(fēng)險。項(xiàng)目作者在 README 中說明由于 Elasticsearch 版本變化頻繁、向后兼容性問題以及上游 Python 庫的改動已難以繼續(xù)維護(hù)。因此本文內(nèi)容均以當(dāng)前倉庫實(shí)際代碼與文檔為準(zhǔn)若在生產(chǎn)環(huán)境使用請務(wù)必評估版本兼容性與維護(hù)成本。一、項(xiàng)目概述與核心功能ElasticHQ 的定位是簡化的 Elasticsearch 集群監(jiān)控與管理README 原文Simplified Monitoring and Management for ElasticSearch clusters以 Apache 2.0 協(xié)議開源發(fā)布。根據(jù) docs/_sources/index.txt 與 README 中的 Key Features 列表其核心能力可歸納為多版本兼容支持 Elasticsearch 2.x、5.x、6.x、7.x 及當(dāng)時的當(dāng)前版本。多集群同時監(jiān)控可同時接入并監(jiān)控多個 ES 集群連接信息持久化保存在內(nèi)置 SQLite 數(shù)據(jù)庫中重啟后自動恢復(fù)連接。多維度監(jiān)控覆蓋集群整體指標(biāo)、節(jié)點(diǎn)、索引、分片、別名等對象的監(jiān)控與管理。索引運(yùn)維創(chuàng)建索引、查看與復(fù)制 Mapping、執(zhí)行 Reindex重建索引、打開/關(guān)閉/刪除索引等。一鍵 API 訪問通過 Web UI 一鍵訪問常用 ES REST 端點(diǎn)與 cat API 端點(diǎn)無需記憶復(fù)雜命令。查詢能力內(nèi)置易用的 Query 查詢界面支持向指定索引提交查詢 DSL。實(shí)時監(jiān)控圖表基于 WebSocket 推送的實(shí)時監(jiān)控圖表。節(jié)點(diǎn)診斷通過預(yù)設(shè)的診斷規(guī)則Diagnostics Rules對節(jié)點(diǎn)進(jìn)行體檢提示內(nèi)存、文件系統(tǒng)、緩存等指標(biāo)的健康狀態(tài)。倉庫的技術(shù)棧從 requirements.txt 與 package.json 可以清晰看出后端為 Python 3 Flask Flask-RESTful Flask-SocketIO SQLAlchemy前端為 AngularJS 1.x webpack 構(gòu)建構(gòu)建產(chǎn)物見 elastichq/static/。下圖是 README 頂部展示的主儀表盤界面二、Docker 快速開始Docker 鏡像是 ElasticHQ 官方推薦的部署方式之一鏡像托管在 Docker Hub 的elastichq/elasticsearch-hq倉庫下。2.1 一條命令啟動按 README 的 Quickstart 說明啟動只需一條命令docker run -p 5000:5000 elastichq/elasticsearch-hq隨后在瀏覽器中訪問http://localhost:5000即可打開 HQ 控制臺。2.2 鏡像內(nèi)部結(jié)構(gòu)從倉庫根目錄的 Dockerfile 可以看出鏡像的構(gòu)建細(xì)節(jié)基礎(chǔ)鏡像為python:3.6-alpine3.7安裝 supervisord、bash 等基礎(chǔ)組件隨后pip3 install -U -r requirements.txt將 deployment/supervisord.conf、deployment/gunicorn.conf、deployment/logging.conf 復(fù)制到鏡像內(nèi)相應(yīng)位置暴露 5000 端口最終以supervisord拉起 gunicorn 進(jìn)程。也就是說Docker 鏡像內(nèi)部默認(rèn)以 gunicorneventlet worker在生產(chǎn)模式下運(yùn)行這與生產(chǎn)環(huán)境建議使用多線程服務(wù)器的官方建議一致。容器內(nèi)的應(yīng)用目錄為/src應(yīng)用日志位于/src/application.log。2.3 通過環(huán)境變量傳參使用 Docker 啟動時可以通過-e標(biāo)志傳入環(huán)境變量完成初始配置詳見 docs/_sources/installation.txtdocker run -p 5000:5000 elastichq/elasticsearch-hq \ -e HQ_DEFAULT_URLhttp://aa.com:1212 \ -e HQ_ENABLE_SSLFalse完整的受支持環(huán)境變量清單見本文第四節(jié)。2.4 讓 SQLite 數(shù)據(jù)庫跨容器重啟保留installation.txt 的 Troubleshooting 一節(jié)給出了一套方案通過 volume 掛載 啟動前改寫數(shù)據(jù)庫路徑將elastichq.db持久化到宿主目錄源自倉庫 issue #409docker run --detach \ --restartalways \ --net host \ --volume elastichq:/src/db \ --name elastichq \ elastichq/elasticsearch-hq \ sh -x -c sed -i -r -e s/_sqlalchemy_database_uri .*/_sqlalchemy_database_uri sqlite:/// os.path.join(BASEPATH, db , elastichq.db)/ /src/elastichq/config/settings.py exec supervisord -c /etc/supervisor/supervisord.conf注意latest標(biāo)簽對應(yīng)最新的穩(wěn)定版本develop分支則對應(yīng)不穩(wěn)定的開發(fā)版本README 與安裝文檔均如此說明。三、從源碼安裝3.1 環(huán)境要求Python 3.6README 要求安裝文檔 docs/_sources/installation.txt 寫作時標(biāo)注為 Python 3.4兩者均以 Python 3 為準(zhǔn)待監(jiān)控的 Elasticsearch 集群2.x、5.x、6.x、7.x網(wǎng)絡(luò)可達(dá)HQ 服務(wù)器需要能夠通過 HTTP 訪問到 ES 集群的 REST 端口。3.2 安裝步驟按 README 的 Source Installation 說明# 1. 下載或克隆倉庫 git clone https://gitcode.com/gh_mirrors/el/elasticsearch-HQ # 2. 進(jìn)入倉庫根目錄安裝 Python 依賴 pip install -r requirements.txt # 3. 啟動服務(wù)兩種方式任選其一 python3 application.py # 或 ./manage.py runserver # 4. 瀏覽器訪問 # http://localhost:50003.3 依賴說明requirements.txt 列出了完整依賴核心組件包括Flask 0.12.4、Flask-restful 0.3.6、Flask-Script 2.0.6Web 框架與 CLI 管理Flask-SocketIO 3.1.0 eventlet負(fù)責(zé)指標(biāo)數(shù)據(jù)的 WebSocket 實(shí)時推送SQLAlchemy 1.2.0 Flask-SQLAlchemy Flask-Migrate持久化集群連接信息dogpile.cache 0.6.5指標(biāo)緩存apscheduler 3.5.0調(diào)度輪詢?nèi)蝿?wù)gunicorn 19.7.1生產(chǎn)環(huán)境 WSGI 服務(wù)器。3.4 manage.py 管理命令manage.py 提供了若干管理命令./manage.py runserver # 啟動 Socket.IO Web 服務(wù)器默認(rèn) 0.0.0.0:5000 ./manage.py clean-db # 清空數(shù)據(jù)庫下次啟動時重建 ./manage.py run-tests # 運(yùn)行全部單元測試要求所配置的集群都在運(yùn)行 ./manage.py run-tests -E 7 # 針對指定 ES 版本2/5/6/7運(yùn)行 es_versions 測試 ./manage.py db migrate # 生成數(shù)據(jù)庫遷移腳本 ./manage.py db upgrade # 執(zhí)行數(shù)據(jù)庫升級 DDL其中run-tests使用 pytest-docker-compose 拉起對應(yīng)版本的 ES 容器執(zhí)行測試測試配置位于 tests/pytest.ini 與各v{2,5,6,7}_docker-compose.ymltests/ 目錄這從側(cè)面印證了項(xiàng)目對 2.x~7.x 多版本的支持。四、啟動參數(shù)與環(huán)境變量配置ElasticHQ 支持兩套等價配置途徑命令行參數(shù)application.py啟動腳本與環(huán)境變量Docker 場景二者均在啟動時合并處理。4.1 命令行參數(shù)application.py 使用optparse定義了如下參數(shù)同時 docs/_sources/installation.txt 給出了完整的參數(shù)表參數(shù)默認(rèn)值說明--host/-H0.0.0.0HQ 服務(wù)監(jiān)聽的地址--port/-P5000HQ 服務(wù)監(jiān)聽端口--debug/-dFalse開啟后向 UI 暴露調(diào)試數(shù)據(jù)并在代碼變更時觸發(fā)重載--url/-uhttp://localhost:9200初始連接頁默認(rèn)顯示的 ES 地址--enable-ssl/-sFalse傳入即啟用 SSL 證書連接--ca-certs/-c無CA 證書路徑啟用 SSL 時必須指定--verify_certs/-vTrue是否校驗(yàn)證書使用自簽名證書時需設(shè)為 False--client_cert/-x無客戶端證書文件路徑--client_key/-X無客戶端私鑰文件路徑示例docs/_sources/installation.txt 原文python -m application \ --enable-ssl \ --ca-certs /path/to/your/ca.crt4.2 環(huán)境變量在 application.py 的啟動邏輯中配置優(yōu)先讀取環(huán)境變量未設(shè)置時才使用命令行選項(xiàng)或默認(rèn)值環(huán)境變量默認(rèn)值說明HQ_DEFAULT_URLhttp://localhost:9200初始連接頁默認(rèn)顯示的 ES 地址HQ_ENABLE_SSLFalse是否啟用 SSL 證書連接HQ_CA_CERTS無CA 證書路徑HQ_VERIFY_CERTSTrue是否校驗(yàn)證書自簽名證書場景設(shè)為 FalseHQ_DEBUGFalse開啟調(diào)試級別日志True時加載logger_debug.jsonCLIENT_KEY/CLIENT_CERT無客戶端密鑰 / 證書代碼中同樣支持Docker 場景示例docker run -p 5000:5000 elastichq/elasticsearch-hq \ -e HQ_DEFAULT_URLhttp://aa.com:1212 \ -e HQ_ENABLE_SSLFalse4.3 連接參數(shù)在源碼中的處理在 elastichq/service/ConnectionService.py 的create_connection方法中verify_certs與enable_ssl會先經(jīng)string_to_bool歸一化然后按是否 Basic Auth / 是否 SSL / 是否校驗(yàn)證書組合出不同的連接分支校驗(yàn)證書時把ca_certs傳給 requests 的verify參數(shù)與 ES 客戶端的ca_certs參數(shù)不校驗(yàn)時顯式傳verifyFalse。這解釋了為什么自簽名證書場景下必須將verify_certs置為 False 才能建立連接。五、連接 Elasticsearch 集群5.1 連接地址格式ElasticHQ 通過 URL 表單連接集群登錄頁輸入框接受http://DOMAIN:PORT格式docs/_sources/installation.txt 的 Initial Login 一節(jié)支持http與https兩種 scheme需要 Basic Auth 時使用內(nèi)嵌憑據(jù)格式http://USERNAME:PASSWORDDOMAIN:PORT。在 elastichq/api/clusters.py 的ClusterConnection資源中POST/api/clusters/_connect接受如下 JSON 請求體{ ip: 127.0.0.1, port: 9200, use_ssl: false }可選字段還包括username與password。連接成功后集群信息cluster_name、cluster_ip、cluster_port、cluster_scheme、cluster_connected、cluster_host、cluster_version會被保存到 SQLite 數(shù)據(jù)庫同時加入內(nèi)存中的全局連接池CONNECTIONS定義于 elastichq/globals.py供后續(xù)所有 API 調(diào)用復(fù)用。5.2 初始登錄頁截圖安裝文檔中提供了初始登錄頁示意docs 靜態(tài)資源中的login.png六、SSL 與安全連接SSL 支持是社區(qū)貢獻(xiàn)的功能README 引用的 issue #376啟用方式python -m application --enable-ssl --ca-certs /path/to/your/ca.crt關(guān)鍵注意事項(xiàng)docs/_sources/installation.txt 原文要點(diǎn)CA 文件必須是簽發(fā) ES 節(jié)點(diǎn)證書的同一簽發(fā)方HQ 才能以可信來源身份連接使用自簽名證書時必須關(guān)閉證書校驗(yàn)將verify_certs設(shè)為 False需要雙向 TLS 時可通過--client_cert/--client_key指定客戶端證書application.py 中已實(shí)現(xiàn)并透傳給連接創(chuàng)建邏輯。可在 HQ 實(shí)例上直接用 curl 驗(yàn)證證書鏈路是否正常curl -u admin:password --ca-certs /path/to/ca.crt https://localhost:9200/_cluster/settings?pretty七、數(shù)據(jù)庫與外部配置文件7.1 SQLite 數(shù)據(jù)庫ElasticHQ 內(nèi)置 SQLite 存儲已連接集群等元信息默認(rèn)數(shù)據(jù)庫文件為倉庫根目錄下的elastichq.db對應(yīng) elastichq/config/settings.py 中ProdSettings的_sqlalchemy_database_uri sqlite:/// ... elastichq.db。安裝文檔說明如需重置直接刪除elastichq.db文件下次啟動會自動重建數(shù)據(jù)庫結(jié)構(gòu)變更升級則通過./manage.py db upgrade完成。7.2 settings.json 外部配置安裝文檔說明HQ 啟動時會按以下順序查找名為settings.json的外部配置文件查找邏輯實(shí)現(xiàn)在 elastichq/utils.py 的find_config中/etc/elastic-hq/settings.json~/settings.json用戶主目錄當(dāng)前工作目錄/settings.json當(dāng)前工作目錄/elastichq/settings.json當(dāng)前工作目錄/config/settings.json當(dāng)前支持的參數(shù)為SQLALCHEMY_DATABASE_URI用于指定數(shù)據(jù)庫文件位置{ SQLALCHEMY_DATABASE_URI: sqlite:////SOME/PATH/TO/DB_NAME.db }elastichq/config/settings.py 的BaseSettings會優(yōu)先讀取用戶配置未配置時才回退到內(nèi)置默認(rèn)值方便用戶在升級時保留自定義設(shè)置。7.3 集群級配置每個集群的監(jiān)控行為由.elastichq內(nèi)部索引doc_id 為hqsettings中的設(shè)置文檔控制HQ_CLUSTER_SETTINGSelastichq/config/settings.py配置項(xiàng)默認(rèn)值說明store_metricsTrue是否存儲被輪詢的指標(biāo)數(shù)據(jù)websocket_interval5秒輪詢集群指標(biāo)數(shù)據(jù)并推送 WebSocket 的間隔historic_poll_interval60測試/300生產(chǎn)秒檢索并存儲歷史指標(biāo)的輪詢間隔historic_days_to_store7天歷史指標(biāo)的保留天數(shù)show_dot_indicesTrue是否在列表中展示以點(diǎn)開頭的索引這些設(shè)置可通過 API 讀取與部分更新GET/PUT/DELETE /api/hq/cluster_name/_settings見 elastichq/api/hq.pyPUT 支持只傳部分字段例如{ websocket_interval: 15, historic_days_to_store: 10 }歷史指標(biāo)數(shù)據(jù)默認(rèn)寫入.elastichq_metrics索引METRICS_INDEX_NAME。八、生產(chǎn)環(huán)境部署8.1 為什么需要 gunicorn安裝文檔明確指出Flask 自帶服務(wù)器是單線程進(jìn)程在較大負(fù)載下不應(yīng)直接用于生產(chǎn)環(huán)境建議使用多線程服務(wù)器運(yùn)行 WSGI 應(yīng)用。Docker Hub 上的鏡像已預(yù)配置 gunicorn。8.2 手動運(yùn)行 gunicorn若不用容器可先安裝 gunicornpip install gunicorn然后啟動安裝文檔給出的命令gunicorn -w 1 -b :5000 --worker-class eventlet application:application應(yīng)用將可通過http://127.0.0.1:5000訪問。安裝文檔特別強(qiáng)調(diào)Metrics 模塊要能通過 WebSocket 廣播gunicorn 必須設(shè)置為 1 個 worker。這與 deployment/supervisord.conf 中-w 1 --worker-class eventlet的配置完全一致也與 application.py 中在 gunicorn 下禁用 reloader 以避免重復(fù)初始化的邏輯相互印證。Eventlet worker 與 Flask-SocketIO 的 eventlet 異步模式elastichq/globals.py 中async_mode eventlet配套使用。8.3 日志配置默認(rèn)日志輸出到控制臺和文件倉庫根目錄application.logDocker 場景下位于/src/application.log。高級用戶可以修改 elastichq/config/logger.json 控制日志行為該配置定義了 RotatingFileHandler單文件最大 100MB、備份 2 份以及elastichq、sqlalchemy、elasticsearch、requests等 logger 的級別。九、升級指南項(xiàng)目遵循語義化版本Semantic Versioning只要主版本號未變化升級通常順暢。安裝文檔給出的升級流程下載或克隆倉庫 master 分支執(zhí)行數(shù)據(jù)庫升級python manage.py db upgrade重啟服務(wù)python application.py訪問http://localhost:5000。HQ 會在啟動時通過訪問 elastichq.org 的currversion.json獲取最新穩(wěn)定版本號實(shí)現(xiàn)于 elastichq/service/HQService.py 的get_status并在頁面頁腳展示版本對比結(jié)果。結(jié)合當(dāng)前倉庫狀態(tài)提示由于項(xiàng)目已停止維護(hù)升級與版本追蹤請以實(shí)際倉庫與自身環(huán)境為準(zhǔn)建議在測試環(huán)境先行驗(yàn)證。十、故障排查以下要點(diǎn)整理自 docs/_sources/installation.txt 的 Troubleshooting 章節(jié)Basic Auth 缺失若在連接 URL 中未攜帶憑據(jù)HQ 會連接失敗。正確格式為http://USERNAME:PASSWORDDOMAIN:PORT。X-Pack License 過期X-Pack 的 license 會靜默過期可能引發(fā)連接問題建議購買 license 或卸載 X-Pack。無法路由到 ES 集群確認(rèn) HQ 服務(wù)器與 ES 網(wǎng)絡(luò)可達(dá)可在 HQ 所在主機(jī)上執(zhí)行curl -XGET http://DOMAIN:PORT驗(yàn)證。CERTIFICATE_VERIFY_FAILED日志中出現(xiàn)該錯誤通常意味著使用了自簽名證書卻未關(guān)閉證書校驗(yàn)需將verify_certs置為 False。X-Pack安全認(rèn)證X-Pack 開啟認(rèn)證后連接 URL 必須使用http://USERNAME:PASSWORDDOMAIN:PORT格式HQ 會將憑據(jù)存入數(shù)據(jù)庫以便重連。需注意憑據(jù)以明文存儲安裝文檔中的 warning 明確說明請?jiān)u估相應(yīng)安全風(fēng)險。查看日志源碼安裝場景日志位于安裝路徑下的application.logDocker 場景位于/src/application.log。十一、基于源碼的功能縱深REST API 一覽除 Web UI 外ElasticHQ 對外暴露了完整的 REST API路由定義見 elastichq/api/endpoints.py詳細(xì)接口文檔可參考 docs/rest-api.html主要端點(diǎn)包括端點(diǎn)方法功能/api/clustersGET列出所有在線/離線集群連接/api/clusters/_connectPOST / DELETE創(chuàng)建 / 刪除集群連接/api/clusters/name/_health、_state、_stats、_summary、_pending_tasks、_settingsGET集群健康 / 狀態(tài) / 統(tǒng)計 / 摘要 / 待處理任務(wù) / 設(shè)置/api/clusters/name/_settingsPUT修改集群設(shè)置/api/clusters/name/diagnostics/_summaryGET節(jié)點(diǎn)診斷匯總elastichq/api/diagnostics.py/api/rest/cluster_name/commandGETES REST / cat API 通用透傳elastichq/api/rest.py/api/query/cluster_name/index_namePOST向指定索引提交查詢 DSLelastichq/api/query.py/api/hq/cluster_name/_settingsGET/PUT/DELETEHQ 集群監(jiān)控設(shè)置其中通用透傳端點(diǎn)支持大量_cat_*命令_cat_aliases、_cat_allocation、_cat_count、_cat_health、_cat_indices、_cat_nodes、_cat_shards等見 elastichq/api/rest.py這正是 README 中One-Click access to ES API and cat API endpoints的底層實(shí)現(xiàn)。此外elastichq/service/IndicesService.py 實(shí)現(xiàn)了索引的創(chuàng)建、刪除、打開/關(guān)閉、刷新、清緩存、別名管理、Mapping 復(fù)制copy_mapping與 Reindexreindex等操作elastichq/service/DiagnosticsService.py 則基于 elastichq/service/DiagnosticsRules.py 中定義的 cache/fs/action/memory/network 五類規(guī)則對每個節(jié)點(diǎn)執(zhí)行閾值判斷輸出 PASS / WARN / DANGER 狀態(tài)對應(yīng) README 中Diagnostics check-up helps alert to specific nodes having issues這一特性。所有 API 響應(yīng)均使用統(tǒng)一信封結(jié)構(gòu)data、status_code、message、response_time見 elastichq/common/api_response.py便于上層應(yīng)用與腳本消費(fèi)。十二、OpenShift 部署簡介倉庫提供了在 OpenShift 上部署的模板與說明openshift/README.md思路是通過一個 nginx 反向代理openshift/proxy/nginx.conf將 ElasticHQ 暴露到http://localhost:8080實(shí)現(xiàn)對 OpenShift 內(nèi)置 Elasticsearch 日志集群的內(nèi)部監(jiān)控。核心步驟# 導(dǎo)入鏡像到 logging 命名空間 oc import-image nginx-114-rhel7 --fromregistry.access.redhat.com/rhscl/nginx-114-rhel7 -n openshift-logging --confirm oc import-image elastic-hq-proxy --fromelastichq/elasticsearch-hq -n openshift-logging --confirm # 在 logging 命名空間處理并創(chuàng)建應(yīng)用 oc project openshift-logging oc process -f openshift/elastic-hq-template.yaml -p LOGGING_NAMESPACEopenshift-logging | oc apply -f -具體命名空間參數(shù)與 nginx 配置調(diào)整細(xì)節(jié)以 openshift/README.md 為準(zhǔn)。結(jié)語ElasticHQ 以簡化為設(shè)計出發(fā)點(diǎn)把 Elasticsearch 集群最常見的監(jiān)控與管理訴求收斂到一個 Web 控制臺里多集群接入、實(shí)時指標(biāo)圖表、節(jié)點(diǎn)診斷、索引運(yùn)維、API 透傳與查詢一應(yīng)俱全。本文基于倉庫 README 與官方安裝文檔結(jié)合 application.py、elastichq/config/settings.py、elastichq/service/ConnectionService.py 等源碼完整還原了從 Docker/源碼部署到參數(shù)配置、SSL、生產(chǎn)化與排障的完整鏈路。請?jiān)俅瘟粢忭?xiàng)目當(dāng)前處于不再維護(hù)狀態(tài)落地使用時需結(jié)合自身的 Elasticsearch 版本與實(shí)際網(wǎng)絡(luò)/安全環(huán)境進(jìn)行充分驗(yàn)證。贊分享運(yùn)維觀測后端【免費(fèi)下載鏈接】elasticsearch-HQMonitoring and Management Web Application for ElasticSearch instances and clusters.項(xiàng)目地址https://gitcode.com/gh_mirrors/el/elasticsearch-HQ點(diǎn)擊查看免費(fèi)下載相關(guān)推薦Gopeed下載器一站式實(shí)操指南HTTP、BT磁力與ED2K全搞定還免費(fèi)開源Gopeed下載器一站式實(shí)操指南HTTP、BT磁力與ED2K全搞定還免費(fèi)開源 Gopeed 下載器是一款基于 Golang Flutter 開發(fā)的免費(fèi)開網(wǎng)絡(luò)CLI后端終極指南如何使用ElasticHQ簡化Elasticsearch集群的監(jiān)控與管理終極指南如何使用ElasticHQ簡化Elasticsearch集群的監(jiān)控與管理 ElasticHQ是一款強(qiáng)大的開源工具專為簡化Elasticsearch集運(yùn)維觀測后端ElasticHQ簡化Elasticsearch集群的監(jiān)控與管理ElasticHQ簡化Elasticsearch集群的監(jiān)控與管理 項(xiàng)目介紹 ElasticHQ是一款專為Elasticsearch集群設(shè)計的監(jiān)控與管理工具。盡運(yùn)維觀測后端上一篇three.js DotScreenPass 實(shí)戰(zhàn)3 個參數(shù)調(diào)出復(fù)古網(wǎng)點(diǎn)濾鏡下一篇終極指南用Wand-Enhancer免費(fèi)解鎖Wand專業(yè)版完整功能創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考