Prometheus监控平台配置Elasticsearch

目录

1. 前言

2. 安装配置elasticsearch_exporter

3. Prometheus配置

4. Grafana配置


1. 前言

接上一篇Prometheus+Grafana监控部署,环境已经安装完成,本篇进行Prometheus的一些常用监控。

Dashboard模板下载(.json文件)

elasticsearch-prometheus-exporter是ES用于Prometheus exporter的插件,可以通过给elasticsearch安装这个插件并配置Prometheus来完成Prometheus监控elasticsearch。

版本:version 1.1.0

2. 安装配置elasticsearch_exporter

参考官方指南

2.1 下载

下载地址,也可以wget在线下载,这里我下载到了home目录下

# wget https://github.com/justwatchcom/elasticsearch_exporter/releases/download/v1.1.0/elasticsearch_exporter-1.1.0.linux-amd64.tar.gz

2.2 解压/usr/local目录下,并重命名

# tar -zxvf elasticsearch_exporter-1.1.0.linux-amd64.tar.gz -C /usr/local/

# cd /usr/local/

# mv elasticsearch_exporter-1.1.0.linux-amd64/   elasticsearch_exporter

2.3 启动

注意:只要设置不同的--web.listen-address监听端口,可启动多个实例,分别监控不同的ES集群。

前台启动,默认监听端口9114

# ./elasticsearch_exporter --web.listen-address=":9114" --es.uri http://172.20.32.218:9200                               

后台启动

# nohup ./elasticsearch_exporter --web.listen-address=":9114" --es.uri http://172.20.32.218:9200 &   

完整参数启动方式:

nohup ./elasticsearch_exporter --es.all --es.indices --es.cluster_settings --es.indices_settings --es.shards --es.snapshots --es.timeout=10s --web.listen-address=":9114" --web.telemetry-path="/metrics" --es.uri http://172.20.32.218:9200 &
参数说明:
--es.uri             默认http://localhost:9200,连接到的Elasticsearch节点的地址(主机和端口)。 这可以是本地节点(例如localhost:9200),也可以是远程 Elasticsearch服务器的地址
--es.all                默认flase,如果为true,则查询群集中所有节点的统计信息,而不仅仅是查询我们连接到的节点。
--es.cluster_settings   默认flase,如果为true,请在统计信息中查询集群设置
--es.indices            默认flase,如果为true,则查询统计信息以获取集群中的所有索引。
--es.indices_settings   默认flase,如果为true,则查询集群中所有索引的设置统计信息。
--es.shards             默认flase,如果为true,则查询集群中所有索引的统计信息,包括分片级统计信息(意味着es.indices = true)。
--es.snapshots          默认flase,如果为true,则查询集群快照的统计信息。

2.4 加入开机自启

cat > /etc/systemd/system/elasticsearch_exporter.service << "EOF"
[Unit]
Description=elasticsearch_exporter
After=local-fs.target network-online.target network.target
Wants=local-fs.target network-online.target network.target
 
[Service]
ExecStart=/usr/local/elasticsearch_exporter/elasticsearch_exporter \
	--es.all --es.indices \
	--es.cluster_settings \
	--es.indices_settings \
	--es.shards --es.snapshots \
	--web.listen-address ":9114" \
	--es.timeout 20s \
	--es.uri http://172.20.32.218:9200
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF

# systemctl daemon-reload

# systemctl enable elasticsearch_exporter

# systemctl start elasticsearch_exporter

# systemctl status elasticsearch_exporter

2.5 浏览器访问

 http://172.20.32.218:9114

 也可以通过http://172.20.32.218:9114/metrics,看抓取的指标信息。

3. Prometheus配置

3.1 进入prometheus安装目录,编辑prometheus.yml

# vim prometheus.yml      //加入prometheus监控中,targets可配置多个监控目标

  - job_name: 'elasticsearch'
    scrape_interval: 60s
    scrape_timeout:  30s
    metrics_path: "/metrics"
    static_configs:
    - targets: ['172.20.32.218:9114']

3.2 重启Prometheus

# systemctl restart prometheus

浏览器查看监控信息:http://172.20.32.218:9090/targets

注:State=UP,说明成功 

4. Grafana配置

浏览器访问:http://172.20.32.218:3000

导入官方模板 ,可在官方模板查看模板编号2322或者266其它,如果内网环境建议可下载后导入。

修改模板信息Prometheus

配置完之后,查看仪表盘,就能自动读取prometheus存储的数据 

 

一、prometheus简介 Prometheus是一个开源的系统监控和告警系统,现在已经加入到CNCF基金会,成为继k8s之后第二个在CNCF维护管理的项目,在kubernetes容器管理系统中,通常会搭配prometheus进行监控,prometheus支持多种exporter采集数据,还支持通过pushgateway进行数据上报,Prometheus再性能上可支撑上万台规模的集群。 二、prometheus架构图 三、prometheus组件介绍 1.Prometheus Server: 用于收集和存储时间序列数据。 2.Client Library: 客户端库,检测应用程序代码,当Prometheus抓取实例的HTTP端点时,客户端库会将所有跟踪的metrics指标的当前状态发送到prometheus server端。 3.Exporters: prometheus支持多种exporter,通过exporter可以采集metrics数据,然后发送到prometheus server端 4.Alertmanager: 从 Prometheus server 端接收到 alerts 后,会进行去重,分组,并路由到相应的接收方,发出报警,常见的接收方式有:电子邮件,微信,钉钉, slack等。 5.Grafana:监控仪表盘 6.pushgateway: 各个目标主机可上报数据到pushgatewy,然后prometheus server统一从pushgateway拉取数据。 四、课程亮点 五、效果图展示 六、讲师简介 先超(lucky):高级运维工程师、资深DevOps工程师,在互联网上市公司拥有多年一线运维经验,主导过亿级pv项目的架构设计和运维工作 主要研究方向: 1.云计算方向:容器 (kubernetes、docker),虚拟化(kvm、Vmware vSphere),微服务(istio),PaaS(openshift),IaaS(openstack)等2.系统/运维方向:linux系统下的常用组件(nginx,tomcat,elasticsearch,zookeeper,kafka等),DevOps(Jenkins+gitlab+sonarqube+nexus+k8s),CI/CD,监控(zabbix、prometheus、falcon)等 七、课程大纲
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页