部署Prometheus + Grafana实现监控数据指标

news/2024/7/25 20:59:15/文章来源:https://blog.csdn.net/weixin_72583321/article/details/139242071

1.1 Prometheus安装部署

  • Prometheus监控服务

主机名IP地址系统配置作用
Prometheus192.168.110.27/24CentOS 7.94颗CPU 8G内存 100G硬盘Prometheus服务器
grafana192.168.110.28/24CentOS 7.94颗CPU 8G内存 100G硬盘grafana服务器
  • 监控机器

主机名IP地址系统配置
k8s-master-01192.168.110.21/24CentOS 7.94颗CPU 8G内存 100G硬盘

1.1.1 环境准备

  • 所有机器配置Hosts解析

cat >> /etc/hosts << EOF
192.168.110.21 k8s-master-01
192.168.110.27 Prometheus
192.168.110.28 grafana
EOF
  • 关闭防护墙和SElinux

  • 设置时间同步

sed -i '3,6 s/^/# /' /etc/chrony.conf
sed -i '6 a server ntp.aliyun.com iburst' /etc/chrony.conf
systemctl restart chronyd.service
chronyc sources

1.1.2 二进制方式安装Prometheus(二选一)

  • 从 Download | Prometheus 下载相应版本,安装到服务器上官网提供的是二进制版,解压就能用,不需要编译

[root@Prometheus ~]# wget -c https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
  • 解压软件

[root@Prometheus ~]# tar xf prometheus-2.52.0.linux-amd64.tar.gz -C /usr/local/
[root@Prometheus ~]# cd /usr/local/
[root@Prometheus local]# ln  -sv prometheus-2.52.0.linux-amd64/ prometheus
‘prometheus’ -> ‘prometheus-2.52.0.linux-amd64/’
  • 创建数据目录

[root@Prometheus ~]# mkdir /usr/local/prometheus/data
  • 创建服务运行用户

[root@Prometheus ~]# useradd prometheus -M -s /sbin/nologin
[root@Prometheus ~]# chown -R prometheus.prometheus /usr/local/prometheus/*
  • 创建服务运行脚本

[root@Prometheus ~]# vim /usr/lib/systemd/system/prometheus.service 
[Unit]
Description=prometheus
After=network.target
​
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/usr/local/prometheus/data
Restart=on-failure
ExecReload=/bin/kill -HUP $MAINPID
​
[Install]
WantedBy=multi-user.target
  • 启动服务

[root@Prometheus ~]# systemctl daemon-reload 
[root@Prometheus ~]# systemctl enable --now prometheus.service
[root@Prometheus ~]# systemctl is-active prometheus.service
active
[root@Prometheus ~]# ss -lunpt | grep 9090
tcp    LISTEN     0      128    [::]:9090               [::]:*                   users:(("prometheus",pid=2486,fd=7))
  • 访问 http://本机IP:9090 http://192.168.110.27:9090

image-20240527103638863

1.1.3 容器方式安装 Prometheus(二选一)

  • 安装Docker-ce

[root@Prometheus ~]# wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
[root@Prometheus ~]# sed -i 's+download.docker.com+mirrors.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
[root@Prometheus ~]# sed -i 's/$releasever/7Server/g' /etc/yum.repos.d/docker-ce.repo
[root@Prometheus ~]# mkdir -p /etc/docker
[root@Prometheus ~]# tee /etc/docker/daemon.json <<-'EOF'
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": [
"https://dbckerproxy.com",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://ccr.ccs.tencentyun.com"
]
}
EOF
​
[root@Prometheus ~]# systemctl daemon-reload
[root@Prometheus ~]# systemctl enable --now docker.service
[root@Prometheus ~]# docker --version
Docker version 20.10.21, build baeda1
  • 拉取Prometheus镜像

[root@Prometheus ~]# docker pull prom/prometheus
[root@Prometheus ~]# docker image ls
REPOSITORY        TAG       IMAGE ID       CREATED       SIZE
prom/prometheus   latest    ecb74a3b23a9   2 weeks ago   272MB
[root@Prometheus ~]# docker save -o prometheus.tar prom/prometheus:latest
[root@Prometheus ~]# ls
anaconda-ks.cfg  prometheus.tar
  • 直接使用官方的镜像启动,并映射prometheus.yml配置文件到本地进行管理

[root@Prometheus ~]# mkdir /data
[root@Prometheus ~]# vim /data/prometheus.yml
global:scrape_interval: 15s
​
scrape_configs:- job_name: 'local'metrics_path: '/metrics'scrape_interval: 5sstatic_configs:- targets: ['192.168.110.27:9090']
​
[root@Prometheus ~]# docker run -d --name prometheus -v /data:/data -p 9090:9090 prom/prometheus --config.file=/data/prometheus.yml
eb149926e5cb74c4a3f0641e82d40c590118647297676c862280b559213f3ca6

image-20240527105703939

1.1.4 主机数据展示

  • 通过http://服务器IP:9090/metrics可以查看到监控的数据

[root@Prometheus ~]# curl http://192.168.110.27:9090/metrics

1.1.5 Grafana安装部署

  • 下载地址:Download Grafana | Grafana Labs

[root@grafana ~]# yum install https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/Packages/grafana-8.0.4-1.x86_64.rpm -y
[root@grafana ~]# systemctl enable --now grafana-server
[root@grafana ~]# netstat -lnupt | grep 3000
tcp6       0      0 :::3000                 :::*                    LISTEN      13068/grafana-serve 
  • 使用grafana-cli 安装插件

[root@grafana ~]# grafana-cli plugins list-remote    # 列出所有可用的插件
[root@grafana ~]# grafana-cli plugins install grafana-worldmap-panel   # 安装世界地图插件
[root@grafana ~]# grafana-cli plugins install grafana-clock-panel   # 安装时间插件
[root@grafana ~]# grafana-cli plugins install grafana-piechart-panel   # 安装圆饼插件
[root@grafana ~]# grafana-cli plugins ls
installed plugins:
grafana-clock-panel @ 2.1.5
grafana-piechart-panel @ 1.6.4
grafana-worldmap-panel @ 1.0.6
Please restart Grafana after installing plugins. Refer to Grafana documentation for instructions if necessary.
​
[root@grafana ~]# systemctl restart grafana-server
  • 使用Grafana连接Prometheus

    • 登录grafana

    • 通过浏览器访问 http:// grafana服务器IP:3000就到了登录界面,使用默认的admin用户,admin密码就可以登陆了

    • 第一次需要修改admin密码,可以直接跳过,用户名密码都为admin

image-20240527153727191

image-20240527155608386

image-20240527155632935

image-20240527155747036

image-20240527155840658

image-20240527155918518

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1053401.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BIO/NIO学习

在传送文件的时候常常出现这么一个问题&#xff0c;就是当客户端的文件全部传送完了之后&#xff0c;服务器没有接收到客户端那边传过的停止信号&#xff0c;所以服务器也就跟着客户端停止运行了&#xff0c;我们可以使用 try {socket.shutdownOutput();} catch (IOException e…

2024 年科技裁员综合清单

推荐阅读&#xff1a; 独立国家的共同财富 美国千禧一代的收入低于父辈 创造大量就业机会却毁掉了财富 这四件事是创造国家财富的关键 全球财富报告证实联盟自始至终无能 美国人已陷入无休止债务循环中&#xff0c;这正在耗尽他们的财务生命 2024 年&#xff0c;科技行业…

鸿蒙OS开发:典型页面场景【一次开发,多端部署】(信息应用)案例

信息应用 简介 内容介绍 Mms应用是OpenHarmony中预置的系统应用&#xff0c;主要的功能包含信息查看、发送短信、接收短信、短信送达报告、删除短信等功能。 架构图 目录 /Mms/ ├── doc # 资料 ├── entry │ └── src │…

解决vue版本不一致导致不能正常编译

解决vue版本不一致导致不能正常编译 异常现象分析原因解决方案 异常现象 项目原本运行无异常&#xff0c;但安装了一个el-table-infinite-scroll的插件后&#xff0c;编译报错&#xff0c;截图如下 分析原因 vue版本与compile版本不一致&#xff0c;应该统一起来&#xff0…

【Tools】SpringBoot工程中,对于时间属性从后端返回到前端的格式问题

Catalog 时间属性格式问题一、需求二、怎么使用 时间属性格式问题 一、需求 对于表中时间字段&#xff0c;后端创建对应的实体类的时间属性需要设定格式&#xff08;默认的格式不方便阅读&#xff09;&#xff0c;再返回给前端。 二、怎么使用 导入jackson相关的坐标&#x…

【Python】 Python中__slots__的妙用:提升性能与内存管理

基本原理 在Python中&#xff0c;每个类默认都会继承自object类&#xff0c;而object类在Python中是一个动态类&#xff0c;允许动态地添加属性和方法。这种灵活性使得Python在某些情况下非常强大和灵活&#xff0c;但同时也带来了一些性能和内存使用上的开销。 为了解决这个…

Matlab读取Swarm球谐系数,并绘制EWH全球格网图(存在疑问)

ICGEM官网下载 COST-G发布的4040的球谐系数 close all; clearvars -except; % addpath(E:\Code\Tool\Function\GRACE_functions); dir_degree_1 E:\Code\GRACE_data\Degree_1\deg1_coef.txt; dir_c20 E:\Code\GRACE_data\Degree_2\C20_RL06.txt; myDir_Swarm E:…

pyinstaller打包提示“文件所在的卷已被外部更改,因此打开的文件不再有效。”

环境 anaconda : 24.1.2python : 3.7.13pyinstaller : 5.13.0 问题描述 之前使用pyintaller执行spec文件打包都是能成功&#xff0c;今天打包报了“文件所在的卷已被外部更改&#xff0c;因此打开的文件不再有效。”的错误 Traceback (most recent call last):File "C…

广场舞团|基于SprinBoot+vue的广场舞团系统(源码+数据库+文档)

广场舞团系统 目录 基于SprinBootvue的广场舞团系统 一、前言 二、系统设计 三、系统功能设计 1 系统功能模块 2 后台登录模块 5.2.1管理员功能模块 5.2.2社团功能模块 5.2.3用户功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推…

【Python编程实战】基于Python语言实现学生信息管理系统

&#x1f3a9; 欢迎来到技术探索的奇幻世界&#x1f468;‍&#x1f4bb; &#x1f4dc; 个人主页&#xff1a;一伦明悦-CSDN博客 ✍&#x1f3fb; 作者简介&#xff1a; C软件开发、Python机器学习爱好者 &#x1f5e3;️ 互动与支持&#xff1a;&#x1f4ac;评论 &…

SpringCloud的Config配置中心,为什么要分Server服务端和Client客户端?

SpringCloud的Config配置中心&#xff0c;为什么要分Server服务端和Client客户端&#xff1f; 在SpringCloud的Config配置中心中分了Server服务端和Client客户端&#xff0c;为什么需要这样分呢&#xff1f;它的思想是所有微服务的配置文件都放到git远程服务器上&#xff0c;让…

01 一文理解,Prometheus详细介绍

01 一文理解&#xff0c;Prometheus详细介绍 介绍 大家好&#xff0c;我是秋意零。 Prometheus 是一个开源的系统监控和报警工具包&#xff0c;最初由SoundCloud开发&#xff0c;并在2012年作为开源项目发布。Prometheus 目前由Cloud Native Computing Foundation&#xff08…

Leecode热题100---二分查找---搜索插入位置

题目&#xff1a; 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 nums 为 无重复元素 的 升序 排列数组 常规思路&#xff1a; class Solution { public:int f…

如何克隆非默认分支

直接git clone下来的我们知道是默认分支&#xff0c;那如何克隆其他分支呢&#xff1a; 比如这个&#xff0c;我们想克隆AdvNet。 我们可以在本地文件夹打开Git Bash 依次输入&#xff1a; git clone --branch AdvNet https://github.com/wgcban/SemiCD.git cd SemiCD git b…

阻塞、非阻塞、同步与异步IO的区别

IO读取数据的过程 如图所示&#xff0c;进程读取数据的过程主要分为两个步骤 1.内核将数据准备好到内核缓冲区 2.内核将数据拷贝到用户态 在上述这两个过程里&#xff0c;进程首先和内核打交道&#xff0c;之后内核再和硬件&#xff08;如网卡&#xff09;打交道 阻塞IO 如图所…

C++的第一道门坎:类与对象(二)

一.类中生成的默认成员函数详解 0.类的6个默认成员函数 编译器会给类生成六个默认成员函数&#xff0c;在类中即使我们什么都不做&#xff0c;也会自动生成。 默认成员函数&#xff1a;用户没有显式实现&#xff0c;编译器会自动生成的成员函数称为默认成员函数。 下面我们逐…

音视频集市应用融合平台方案

音视频应用即有深度又有广度&#xff0c;如何让一个平台拥有更多功能更灵活的拓展能力&#xff0c;从单体模块化&#xff0c;多插件到微服务都有大量的实践。 笔者在实际开发过程也同样面对这些纷繁复杂而又必须共容共通需求的挑战。 在实战开发了大量从服务端到设备端再到浏览…

装饰模式:鸡腿堡

文章目录 UML类图目录结构Humburger.javaChickenBurger.javaCondiment.javaChuilli.javaLettuce.javaTest.java深度理解test怎么写 UML类图 目录结构 我们从指向最多的开始写 Humburger.java package zsms;public abstract class Humburger {protected String name;public S…

GTD时间管理法

Part 1. What is GTD? | 什么是GTD&#xff1f; GTD is a framework that enhances focus and productivity. Through techniques such as capturing all tasks in a trusted system and breaking down complex projects into actionable items, GTD allows individuals to co…

Web Server项目实战2-Linux上的五种IO模型

上一节内容的补充&#xff1a;I/O多路复用是同步的&#xff0c;只有调用某些API才是异步的 Unix/Linux上的五种IO模型 a.阻塞 blocking 调用者调用了某个函数&#xff0c;等待这个函数返回&#xff0c;期间什么也不做&#xff0c;不停地去检查这个函数有没有返回&#xff0c…