Console 纳管 Elasticsearch 9(一):指标监控、数据管理、DSL 语句执行
2025-04-27
Elasticsearch 发布 9.0 版本了,测试 Console 管理维护 ES9 集群。
部署注册 #
使用 Docker 快速部署 ES9。
docker run --name es9 -p 9201:9200 -it -m 1GB docker.elastic.co/elasticsearch/elasticsearch:9.0.0
使用 Docker 部署 Console,请参考 文档。
docker run -d --name console -p 9001:9000 infinilabs/console:1.29.2-2008
将 ES9 注册到 Console,默认采集模式为 Agentless。
请求模拟 #
使用 Loadgen 模拟数据写入和查询。
env:
ES_USERNAME: elastic
ES_PASSWORD: CZ-FHm+M5cbfee_yMPZp
ES_ENDPOINT: https://192.168.0.101:9201
runner:
# total_rounds: 1
no_warm: true
valid_status_codes_during_warmup: [ 200,201,404 ]
# Whether to log all requests
log_requests: false
# Whether to log all requests with the specified response status
log_status_codes:
- 0
- 500
assert_invalid: false
assert_error: false
# Whether to reset the context, including variables, runtime KV pairs, etc.,
# before this test run.
reset_context: false
default_endpoint: $[[env.ES_ENDPOINT]]
default_basic_auth:
username: $[[env.ES_USERNAME]]
password: $[[env.ES_PASSWORD]]
variables:
- name: id
type: sequence
- name: uuid
type: uuid
- name: now_local
type: now_local
- name: now_unix
type: now_unix
- name: list
type: list
data:
- "medcl"
- "abc"
- "efg"
- "xyz"
requests:
- request: #prepare some docs
method: POST
url: /_bulk
body_repeat_times: 5000
body: |
{"index": {"_index": "infinilabs", "_id": "$[[uuid]]"}}
{"id": "$[[id]]", "field1": "$[[list]]", "now_local": "$[[now_local]]", "now_unix": "$[[now_unix]]"}
- request:
method: GET
url: infinilabs/_search
body: |
{"query":{"term":{"id":"$[[id]]"}}}
./loadgen-mac-amd64 -d 300
平台管理 #
平台概览 #
监控报表 #
- 指标概览
- 集群指标
- 节点指标
- 索引指标
- 节点线程指标
- 节点热力图
- 索引热力图
- 查看日志
日志采集需要安装 Agent,关于这块功能后续会进行介绍。
- 节点实时指标
- 索引实时指标
数据管理 #
开发工具 #
Console 可以纳管 ES9 集群,并进行指标监控、数据管理、DSL 语句执行。
关于 INFINI Console #
INFINI Console 是一款开源的非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管,企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。INFINI Console 还可以对集群内的索引及数据进行操作管理,可以配置灵活的告警规则,可以指定统一的安全策略,可以查看各个维度的日志和审计信息,真正实现企业级的搜索服务平台化建设和运营。
官网文档:
https://docs.infinilabs.com/console/main/
开源地址:
https://github.com/infinilabs/console