本站和网页 https://mp.weixin.qq.com/s/AU1pW9icOLl5F_vPQt2-Aw 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

ES 集群管理工具--cerebro
原创
yangyidba
yangyidba
yangyidba
微信号
yangyidba
功能介绍
记录工作,生活的地方。
发表于
收录于合集
前言因为公司技术方面的需求,前一段时间折腾了一下elasticsearch,总体技术水平能够达到简历上的“熟悉”的程度。有管理ES集群经验的朋友肯定都知道elasticsearch的head插件能够实现对es集群的查看,索引分片,展示数据分布等功能,但是在页面美观上有点欠缺。本文介绍一款es集群管理平台--cerebro。cerebro简介cerebro算是一款"绿色"软件,只要有标准的java环境,下载解压之后即可使用。在功能上cerebro支持节点状态监控 服务器磁盘空间,cpu,load,索引数量大小 ,数据分布位置等监控。 支持查询。安装wget "https://github.com/lmenezes/cerebro/releases/download/v0.8.1/cerebro-0.8.1.tgz"tar -zxf cerebro-0.8.1.tgz解压之后其实只有四个文件夹,我们只需要关注bin 和conf目录,bin有可执行文件 cerebo ,conf里面有需要访问es集群的配置文件。[root# /opt/cerebro]
# ls
bin cerebro.db conf lib logs README.md编辑配置文件vim conf/application.confhosts = [
host = "http://localhost:9200"
name = "es-test"
# Example of host with authentication
#{
# host = "http://some-authenticated-host:9200"
# name = "Secured Cluster"
# auth = {
# username = "username"
# password = "secret-password"
# }
#}
]这里我们选择不带用户权限校验的方式。启动cd /opt/cerebro
nohup ./bin/cerebro -Dhttp.port=8800 -Dhttp.address=0.0.0.0 &界面展示功能能满足我们对es集群的日常管理维护 ,还是直接上图比较直观。支持索引创建删除,修改集群配置参数 等等,其他功能有需要的可以多研究研究。需要注意的是 delete index 命令在生产环境切勿乱执行,要慎重。运维因为现在公司已经在正式环境中使用cerebro,为了标准化程序管理,我写了一个小脚本支持启动关闭查看状态。该工具默认 cerebro 是安装在/opt/cerebro 目录 。当然也推荐把cerebro的程序交给supervisor管理。#!/bin/sh## chkconfig: 2345 86 14# description: cerebro agent daemon# processname: cerebro## nohup ./bin/cerebro -Dhttp.port=9000 -Dhttp.address=0.0.0.0 >> /tmp/cerebro.log &# Source function library.. /etc/rc.d/init.d/functionsif [ -x /opt/cerebro ]; then exec=/opt/cerebro/bin/cerebroelse exit 5fiprog=${exec##*/}cerebro="/opt/cerebro/bin/cerebro"conf_file="/opt/cerebro/conf/application.conf"pidfile="/var/run/cerebro.pid"timeout=2lockfile=/var/lock/subsys/$proglogdir="/data/logs/cerebro.log"## "cd /opt/yz-falcon-agent/; $exec -c $conf >>$logdir/stdout.log 2>>$logdir/stderr.log &"start(){ echo "Starting cerebro: " daemon --user root --pidfile $pidfile " $cerebro -Dhttp.port=9000 -Dhttp.address=0.0.0.0 >>/data/logs/cerebro.log 2>/dev/null &" RETVAL=$? [ $RETVAL -eq 0 ] && touch $lockfile [ $RETVAL -eq 0 -a ! -f $pidfile ] && pidof java > $pidfile pid=`cat $pidfile` echo "start $prog, pid is $pid" return $RETVAL}stop(){ echo -n $"Shutting down cerebro: " killproc -p $pidfile -d $timeout $prog rv=$? echo [ $rv -eq 0 ] && rm -f $lockfile return $rv}restart(){ stop start}case "$1" in start|stop|restart) $1 ;; status) status -p $pidfile $prog ;; *) echo $"Usage: $0 {start|stop|status|restart}" exit 2 ;;esac启动查看状态关闭推荐阅读 https://mp.weixin.qq.com/s/BE8LrpviJNXGV41bhzGFTwsupervisor 工具介绍
预览时标签不可点
微信扫一扫关注该公众号
知道了
微信扫一扫使用小程序
取消
允许
取消
允许
视频
小程序
,轻点两下取消赞
在看
,轻点两下取消在看