监控神器-普罗米修斯Prometheus的安装
最近看了些AIOPS的资料,对于里面提及的一个普罗米修斯Prometheus起了兴趣,首先是联想到异形,哈哈。去看了一下,普罗米修斯还真是厉害,而且还是开源的,真是搬砖党的福音。
功能:
- 在业务层用作埋点系统
Prometheus支持多种语言(Go,java,python,ruby官方提供客户端,其他语言有第三方开源客户端)。我们可以通过客户端方面的对核心业务进行埋点。如下单流程、添加购物车流程。
- 在应用层用作应用监控系统
一些主流应用可以通过官方或第三方的导出器,来对这些应用做核心指标的收集。如redis,mysql。
- 在系统层用作系统监控
除了常用软件, prometheus也有相关系统层和网络层exporter,用以监控服务器或网络。 - 集成其他的监控
prometheus还可以通过各种exporte,集成其他的监控系统,收集监控数据,如AWS CloudWatch,JMX,Pingdom等等
Prometheus架构:
prometheus是一个用Go编写的时序数据库,可以支持多种语言客户端,架构如下:
下面说一下这个开源软件的安装实践过程,目标如下:
- 安装go 语言环境
- 在监控服务器上安装prometheus
- 在被监控环境上安装export
- 安装grafana
具体安装过程如下:
步骤1:安装go 语言环境
由于Prometheus 是用golang开发的,所以首先安装一个go环境,Go语言是跨平台,支持Windows、Linux、Mac OS X等系统,还提供有源码,可编译安装
Windows :go1.8.3.windows-amd64.msi (78MB)
Linux :go1.8.3.linux-amd64.tar.gz (86MB)
Mac :go1.8.3.darwin-amd64.tar.gz (85MB) (推荐)
Source: go1.8.3.src.tar.gz (15MB)
由于国内需要翻墙:所以我是通过某些国内资源下载的:https://download.csdn.net/download/cuipuke/10048498
下载后,上传到要部署的服务器(部署服务器和外网隔离,所以转了一道)。解压缩然后修改配置文件
[root@archive soft]# tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gz
[root@archive soft]# vim /etc/profile
在文件的最后添加如下内容:
export PATH=$PATH:/usr/local/go/bin
保存退出后,接着让配置文件立刻生效:
[root@archive aiops]# source /etc/profile
验证一下是否成功,用go version 来验证
[root@archive aiops]# go version
go version go1.8.3 linux/amd64
步骤2:在监控服务器上安装prometheus
开始安装prometheus,首先先去官网下载对应系统的版本:https://prometheus.io/download/,如下图:
下载后上传到部署的服务器,在服务上执行如下命令解压(root用户,解压到 /usr/local):
tar -vxf prometheus-2.3.2.linux-amd64.tar.gz -C /usr/local/
为了以后进入目录方便,做了一个软连接:
ln -sv /usr/local/prometheus-2.3.2.linux-amd64/ /usr/local/Prometheus
接着要配置一下监控的配置文件:prometheus.yml
配置完成后,只需要运行起来这个软件:
[root@archive prometheus]# ./prometheus
通过如下URL可以打开prometheus的自带监控界面: IP:9090,点击targets 跳转到监控目标,这里展现了多个监控对象。红框的表示部署的prometheus
说明:上图中117 显示蓝色是因为,117已经安装了export,其他未安装的显示为红色。
步骤3:在系统层用作系统监控exporter
以在159这台主机为例,安装exporter ,这台linux环境是centos,因此用的监控export是node_exporter-0.16.0.linux-amd64.tar.gz ,首先在官网下载这个文件,然后上传到被监控的主机(作为部署服务的主机上也需要安装 export),因此下载并部署后,执行如下命令:
tar xvf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/
nohup /usr/local/node_exporter-0.16.0.linux-amd64/node_exporter &
执行后,我们回到prometheus查看监控目标,可以看到159主机也显示为蓝色了。
启动后,可以看到159主机已经变成蓝色,正常up 状态。其他几台116,117,118 主机也通过先安装go环境,再安装export的方式,进行监控起来。
接下来说一下oracle主机115的监控,Oracle的监控,需要用到第三方写的export。prometheus是开源软件提供了多种语言支持,因此有很多第三方的exporter实现,https://prometheus.io/docs/instrumenting/exporters/ 官网这里有介绍一些第三方的链接:
通过这个可以找oracle的第三方exporter,这是一个git工程https://github.com/iamseth/oracledb_exporter
这里面,找到
通过releases找到适合自己的版本,我直接用的是二进制文件,图中执行这里标红色,参数语法有问题,具体应该如下:
./oracledb_exporter.linux-amd64 -log.level error -web.listen-address IP:9161
下面看一下具体情况:
上传下面文件到部署的服务器(需要有安装oracle客户端,这样才能连的上数据库,这里因为已经安装了oracle客户端,略了客户端安装)
[oracle@localhost soft]$ ls -ltr
总用量 93296
-rw-r--r-- 1 oracle dba 90029041 9月 5 13:57 go1.8.3.linux-amd64.tar.gz
-rwxr-xr-x 1 oracle dba 5502288 9月 5 13:57 oracledb_exporter.linux-amd64
1、首先安装go 环境,与上面相同,这里略过
2、接着将二进制文件运行起来,步骤如下:
修改执行权限
[root@localhost soft]# chmod +x oracledb_exporter.linux-amd64
再设置执行的环境变量,命令行直接执行如下命令export:
export DATA_SOURCE_NAME=用户名/密码@ 数据库服务名
启动服务
./oracledb_exporter.linux-amd64 -log.level error -web.listen-address IP:9161
步骤4:给prometheus换一个面板
下面给监控换一个dashboard,这里用的是grafana,下载地址https://grafana.com/grafana/download,
如果部署的服务器可以联网可以直接执行下面命令:
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.3-1.x86_64.rpm
sudo yum localinstall grafana-5.2.3-1.x86_64.rpm
如果不能,只能先下载再部署。rpm包的安装也很简单,执行如下命令
[root@archive soft]# rpm -i grafana-5.2.3-1.x86_64.rpm
接着把grafana加入到系统服务,将服务启动
[root@archive soft]# sudo /sbin/chkconfig --add grafana-server
[root@archive soft]# sudo service grafana-server start
Starting Grafana Server: ...
启动后,打开如下URL,端口采用默认的3000,http://10.1.4.159:3000/
输入默认的admin/admin
进去后会要求修改密码,然后点击add datasource,选中 Prometheus 2.0 Stats后,就可以呈现如下的监控面板了:
有同事说比较丑。好吧,美丑自在人心,哈哈。
监控神器-普罗米修斯Prometheus的安装相关推荐
- 普罗米修斯 软件_监控神器-普罗米修斯Prometheus的安装
搬砖党的福音:普罗米修斯-监控神器 功能: 在业务层用作埋点系统 Prometheus支持多种语言(Go,java,python,ruby官方提供客户端,其他语言有第三方开源客户端).我们可以通过客户 ...
- 监控神器普罗米修斯Prometheus安装配置
一.基础环境 环境/组件 版本 下载地址 操作系统 CentOS 7.3 http://archive.kernel.org/centos-vault/7.3.1611/isos/x86_64/Cen ...
- 监控神器-普罗米修斯Prometheus
什么是Prometheus? Prometheus使用Go语言开发,是Google BorgMon监控系统的开源版本. Prometheus是监控平台,通过HTTP实时查看系统各项性能指标.足够支撑上 ...
- 普罗米修斯prometheus的安装与监控linux
golang的安装 普罗米修斯是go开发的,所以需要安装go环境. 先下载golang,下载地址:https://studygolang.com/dl, 这里选择的是:https://studygol ...
- 普罗米修斯 mysql监控_普罗米修斯Prometheus监控MySQL
普罗米修斯Prometheus监控MySQL 添加数据库用户 CREATE USER monitor_prometheus@'192.168.245.%' IDENTIFIED BY 'Abcde@1 ...
- 普罗米修斯Prometheus的安装及Grafana使用
首先安装运行环境go 如果有网络 使用命令 yum install go -y 如果没有网络使用离线安装包 下载:Linux :go1.8.3.linux-amd64.tar.gz [root@bob ...
- 普罗米修斯Prometheus监控神器
文章目录 一.普罗米修斯Prometheus监控系统 1.1实验环境 1.2安装普罗米修斯 1.3访问prometheus界面(web) 1.4主机数据显示 1.5普罗米修斯监控图像 1.6普罗米修斯 ...
- 监控之星-普罗米修斯Prometheus搭建
监控之星-普罗米修斯Prometheus搭建 导图 #mermaid-svg-JxDWZpg7w4fUYZee {font-family:"trebuchet ms",verdan ...
- 普罗米修斯 监控_完美的分布式监控系统——普罗米修斯
DevOps工程师或SRE工程师,可能都知道Prometheus普罗米修斯.Prometheus于2012年由SoundCloud创建,目前已经已发展为最热门的分布式监控系统.Prometheus完全 ...
最新文章
- 2021年大数据HBase(七):Hbase的架构!【建议收藏】
- Block 底层值__Block修饰符
- C/C++存储区划分
- (60)逆向分析 KiSwapThread —— 找就绪线程和空闲线程
- 弱类型、强类型、动态类型、静态类型语言的区别
- TensorFlow2-卷积神经网络
- NGINX-RTMP复杂度分析
- HDU 2818 Building Block
- 重学TCP协议(6) 四次挥手
- 虚拟局域网(VLAN)的管理
- JavaScript学习总结(15)——十大经典排序算法的JS版
- gorilla websocket无法跨域_聊聊浏览器同源策略与跨域方案详解
- [转载] 七龙珠第一部——第112话 能恢复年轻吗 比克大魔王
- mars java安卓视频教程下载_mars老师[Android开发视频教学].01_18 文件下载 源码
- ps图像放大后变清晰和文字模糊变清晰
- .NET 6 RC2 版本发布
- 2022年全国职业技能大赛-网络系统管理竞赛-网络模块-Ruijie-AC-SSH
- 学校的计算机是作文,未来的电脑学校作文
- 计算 11+12+13+...+m python
- matplotlib——画布分辨率和尺寸