项目实战 Prometheus环境搭建
项目摘要:
本文是搭建一套prometheus环境的教程。
前期准备:准备三台虚拟机,本文以centos7为例。
项目具体实施:
分别进入每台虚拟机设置hostname:
# hostnamectl set-hostname prometheus.demo
# hostnamectl set-hostname agent.demo
# hostnamectl set-hostname grafana.demo
在每台虚拟机的/etc/hosts文件中加入如下内容(ip改成真实的ip地址):
ip agent.demo
ip grafana.demo
ip prometheus.demo
每台虚拟机同步时间(前两条命令不一定需要):
# mount /dev/sr0/mnt
# yum install ntpdate -y
# ntpdate -u cn.pool.ntp.org
每台禁用SELINUX
# vim /etc/selinux/config
将SELINUX=enforcing 修改为:SELINUX=disabled
每台关闭防火墙
# systemctl stop firewalld
# systemctl disable firewalld
# iptables -F
安装prometheus(登录到prometheus主机)
下载后,解压就能用,不需要编译。
下载:
# wget https://github.com/prometheus/prometheus/releases/download/v2.5.0/prometheus-2.5.0.linux-amd64.tar.gz
解压、移动/重命名:
# tar xf prometheus-2.5.0.linux-amd64.tar.gz -C /usr/local
# mv /usr/local/prometheus-2.5.0.linux-amd64/ /usr/local/prometheus
# mkdir /etc/prometheus
# cp /usr/local/prometheus/prometheus.yml /etc/prometheus/
启动:
# /usr/local/prometheus/prometheus --config.file=" /etc/prometheus/
/prometheus.yml" &
解释:&:表示后台运行
默认端口是9090
查看端口占用情况:
# lsof -i:9090 或者 ss -naltp | grep 9090
此时,浏览器输入http://ip:9090即可访问到prometheus的主界面:
安装node_exporter监控远程Linux主机(登录到agent机器)
下载:
# wget https://github.com/prometheus/node_exporter/releases/download/v0.16.0/node_exporter-0.16.0.linux-amd64.tar.gz
解压:# tar xf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/
重命名: # mv /usr/local/node_exporter-0.16.0.linux-amd64/ /usr/local/node_exporter
启动:# nohup /usr/local/node_exporter/node_exporter &
查看启动情况:# lsof -i:9100
打开浏览器输入:http://ip:9100/metrics即可看到监控信息。
将该监控添加到prometheus监控软件,登录到prometheus机器。
修改prometheus.yml
# vim /etc/prometheus/prometheus.yml
末尾添加如下内容:
- job_name: 'agent'
static_configs:
- targets: ['ip:9100']
# ps -aux | grep prome
# kill -HUP 进程号
去控制台查看。(选择statusàtargets查看)
在agent机器添加一个mysql监控
下载:
# wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz
解压:tar xf mysqld_exporter-0.11.0.linux-amd64.tar.gz -C /usr/local/重命名:# mv /usr/local/mysqld_exporter-0.11.0.linux-amd64/ /usr/local/mysqld_exporter
安装mysql数据库:
参考:https://www.jianshu.com/p/fe476f511485
创建一个mysql配置文件,写上连接的用户名与密码(和上面的授权的用户名 和密码要对应)
# vim /usr/local/mysqld_exporter/.my.cnf
[client]
user=用户名
password=密码
# nohup /usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf &
确认端口(9104)
# lsof -i:9104
浏览器输入:http://ip:9104/metrics即可看到监控信息。
将该监控添加到prometheus监控软件,登录到prometheus机器。
编辑如下内容:
# vim /etc/prometheus/prometheus.yml
末尾添加如下内容:
- job_name: 'agent_mysql'
static_configs:
- targets: ['ip:9104']
# kill -HUP 进程号
再次去浏览器页面观察是否添加成功。
安装grafana
下载:# wget https://dl.grafana.com/oss/release/grafana-5.3.4-1.x86_64.rpm
安装:# rpm -ivh grafana-5.3.4-1.x86_64.rpm
启动:
# systemctl start grafana-server
# systemctl enable grafana-server
检查端口: # lsof -i:3000
打开浏览器输入:http://ip:3000查看是否成功运行。
至此,环境搭建完成。
项目实战 Prometheus环境搭建的更多相关文章
- OpenDaylight开发hello-world项目之开发环境搭建
OpenDaylight开发hello-world项目之开发环境搭建 OpenDaylight开发hello-world项目之开发工具安装 OpenDaylight开发hello-world项目之代码 ...
- node 项目中 koa2 环境搭建 以及项目发布
环境搭建: 1.Koa 必须使用 7.6 以上的版本.如果你的版本低于这个要求,就要先升级 Node. 查看node版本方法:node -v 2.使用koa-generator生成器生成项目 安装ko ...
- Android内核漏洞利用技术实战:环境搭建&栈溢出实战
前言 Android的内核采用的是 Linux 内核,所以在Android内核中进行漏洞利用其实和在 一般的 x86平台下的 linux 内核中进行利用差不多.主要区别在于 Android 下使用的是 ...
- Activiti实战02_环境搭建
1:下载Activiti 访问:https://www.activiti.org/download-bpm 可以下载Activiti相关文档和历史版本压缩包,在 https://www.activit ...
- 基于Flask框架的Python web程序的开发实战 <一> 环境搭建
最近在看<Flask Web开发基于Python的Web应用开发实战>Miguel Grinberg著.安道译 这本书,一步步跟着学习Flask框架的应用,这里做一下笔记 电脑只安装一个P ...
- 【一】Swift 3.0 新浪微博项目实战 -整体框架搭建
最近要接手swift,所以找了个视频跟着做一下实战项目,在此记录一下过程和心得 框架搭建和目录拆分 关键词:MVVM 架构,桥接文件 桥接文件用于引入OC的头文件,Swift就可以正常使用(宏除外). ...
- 【JAVAWEB学习笔记】网上商城实战:环境搭建和完成用户模块
网上商城实战 今日任务 完成用户模块的功能 1.1 网上商城的实战: 1.1.1 演示网上商城的功能: 1.1.2 制作目的: 灵活运用所学知识完成商城实战. 1.1.3 ...
- 1、手把手教React Native实战之环境搭建
React Native 的宗旨是,学习一次,高效编写跨平台原生应用. 在Windows下搭建React Native Android开发环境 1.安装jdk 2.安装sdk 在墙的环境下,为了 ...
- Spring cloud微服务安全实战-7-3prometheus环境搭建
Prmetheus 主要用来做来Metrics的监控和报警,这张图是官方的架构图. 这是他的核心 它的作用是根据我们的配置去完成数据的采集.服务的发现,以及数据的存储. 这是服务的发现,通过Servi ...
随机推荐
- rabbitMQ重复消费(结合死循环重发那一篇看)
/** * 重复消费逻辑判断与处理 */ @Component public class RepeatMqConsumer { /** * 服务对象 */ private int count=1; @ ...
- 关于通用Mapper new Example使用记录
关于通用MapperExample使用记录 环境准备 需要集成 mybatis 的 generator 插件,方便自动生成 实体类和 mapper 类,还可以生成xml,不过一般我们都不用 xml b ...
- springboot系列总结(一)---初识springboot
Spring Boot是一个简化Spring开发的框架.用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用. 一说springboot ,Java ...
- openwrt开发笔记二:树莓派刷openwrt
前言及准备 本笔记适用于第一次给树莓派刷openwrt系统的玩家,对刷机过程及注意事项进行了记录,刷机之后对openwrt进行一些简单配置. 使用openwrt源码制作固件需要花费一点时间. 平台环境 ...
- Jenkins持续集成接口压测
步骤 自动化压测- jmeter + shell Jenkins与jmeter压测,环境要求 自动压测运行逻辑 Jmeter输出压力测试报告 压测报告与Jenkins集成 Jenkins任务:源码同步 ...
- Identity角色管理三(创建角色)
首先创建视图模型 using System.ComponentModel; using System.ComponentModel.DataAnnotations; namespace Shop.Vi ...
- bean的作用域和生命周期
一.Bean作用域 二.生命周期 其中,这个类实现各种接口重写各种方法,会按bean的声明周期按序执行: 其中,自定义的初始化和自定义销毁的方法不是实现接口重写,而是成员方法,并且在装配bean即在x ...
- 文件流转换为url
/** * 文件流转换为url * @param {} data //文件流 */ export function getObjectURL(data) { var url = null ...
- CodeForce-810B Summer sell-off (结构体排序)
http://codeforces.com/problemset/problem/810/B 已知n天里,已知第i天的供货量和需求量,给定一个f,可以在n天之中选f天促销使得供货量翻倍. 问选择其中f ...
- PTA——c++基本输入输出
1.使用提取符(<<)可以输出各种基本数据类型的变量的值,也可以输出指针值.(T) 2.预定义的插入符从键盘上接收数据是不带缓冲区的.(F) 3.使用操作符setw对数据进行格式输出时,需 ...