通过Cerebro连接集群

Cerebro是一款开源的ES轻量级可视化管理工具,用于监控集群状态、管理索引和执行查询。本文介绍如何在ECS中部署Cerebro并通过Cerebro连接ES集群。

准备工作

  • 创建ECS实例(本文示例操作系统选择Linux)用于部署Cerebro。

    • VPC连接(本文以此为示例)

      ECSES在同一VPC时,可通过VPC地址连接ES集群,具备延迟低,稳定性高的优势,适用于生产环境,推荐作为首选连接方式。

    • 公网连接

      ECSESVPC或本地部署Cerebro时,需使用公网地址连接ES集群。

  • ECS实例IP地址添加到ES白名单。

    为保障集群安全,您需要将待访问设备的IP地址加入ES VPC私网或者公网白名单,白名单配置完成后,立即生效,无需重启集群。

    登录ECS控制台在实例列表查看实例的公网或者私网IP地址,然后登录阿里云ES控制台,在安全配置页面,单击修改设置VPC私网或者公网访问白名单。

    image

  • Cerebro运行在Java虚拟机上,需要在ECS实例中安装JDK,版本为1.8及以上,具体操作步骤请参见部署OpenJDK

操作步骤

  1. 连接ECS实例。

    具体操作步骤请参见ECS远程连接方式

    说明

    本文档以普通用户权限为例。

  2. 下载Cerebro安装包并解压。

    • 下载

      wget https://github.com/lmenezes/cerebro/releases/download/v0.9.0/cerebro-0.9.0.tgz
    • 解压

      tar -zxvf cerebro-0.9.0.tgz
  3. 修改Cerebro配置文件,关联待访问的ES实例。

    1. 打开配置文件application.conf。

      vim cerebro-0.9.0/conf/application.conf
    2. 按照以下说明配置hosts

      配置cerebro

      说明

      支持关联多个实例,多个实例之间用英文逗号(,)分隔。

      参数

      说明

      host

      • ECSES在同一VPC中时,请配置ES的私网访问地址,格式为http://<ES实例的私网地址>:9200

      • ECSES不在同一VPC中(本示例为此场景)时,或在本机安装Cerebro时,请配置为ES的公网地址,格式为http://<ES实例的公网地址>:9200

      image

      重要

      访问协议默认使用http协议。为保障集群安全性,建议使用https协议,需手动开启https协议后才能使用。

      image

      name

      ES实例的ID,可从控制台 -> 基本信息页面获取。

      username

      访问用户名,固定为elastic

      重要

      生产环境中不建议使用elastic用户,这样会降低系统安全性。建议使用自建用户,并给予自建用户分配相应的角色和权限,详情请参见通过Elasticsearch X-Pack角色管理实现用户权限管控

      password

      创建集群时设置的用户密码,支持重置密码

    3. 保存文件后,启动Cerebro服务。服务默认在前台启动,并监听本地9000端口。

      cd cerebro-0.9.0
      bin/cerebro

      启动成功后,返回如下结果。cerebro启动成功

  4. 通过Cerebro连接ES。

    1. 配置ECS实例的安全组,在入方向中,添加待访问设备的IP地址并开放9000端口,具体操作步骤请参见添加安全组规则

      配置安全组

    2. 在浏览器中输入http://<ECS的外网IP地址>:9000。

    3. Cerebro登录页面,单击您要访问的ES实例ID。

      image

    4. Cerebro控制台中,查看集群状态以及索引、分片和文档数量等,并根据业务进行相关操作,更多Cerebro的使用方法请参见Cerebro

      image