k8s部署prometheus和grafana监控pod和机器资源(11)

之前咱们有讲过k8s的网络模式,一定要多练习
今天我们来讲解一下监控
具体的yaml我已经放到百度网盘了,大家可以直接下载使用
链接:https://pan.baidu.com/s/16LLvtAM5EJaiy0AnmMTjjQ
提取码:xw54

grafana这个工具是一个图形化的界面,主要负责展示信息,功能非常强大,可以结合prometheus、zabbix、进行收集暂时,另外包括mysql,zk、etcd,nginx这些数据都可以收集展示
prometheus是一个时序的数据库,什么是时序的数据库,就是对之前的数据进行存放,但是不能进行删除修改等系列的操作,热切prometheus对数据是先落到内存,然后定期给磁盘中写入,这个在prometheus的配置文件中有定义,可以自行修改,
另外prometheus主要走的是http协议去通过pull模式拉取数据到agent上面
另外还有一种是push模式,这种模式主要用于数据比较短暂的收集,主要是agent给Pushgateway进行push操作,接收,然后prometheus去pull,pushgateway组件上面的数据,另外prometheus通过收集的数据通过AlertManager组件,进行报警操作,这里定义的报警媒介也比较多,短信,微信、钉钉都是可以的。
我们这里先介绍的是收集和展示后面会有报警通过企业微信

开始部署了:



k8s集群的所有节点上下载所需要的image

docker pull prom/node-exporter
docker pull prom/prometheus:v2.0.0
docker pull grafana/grafana:4.2.0
这里的node-exporter是收集物理机node节点的资源信息,网卡流量,cpu。内存,磁盘等信息

因为node-export是收集物理机的信息,所以每个机器都要有,可以用我们之前的DaemonSet控制器,保证每个机器都存在

然后启动
启动之后可以查看是否每个机器上面都存在


每个节点上都有了



部署prometheus组件

这里部署需要rbac安全认证,所以需要先创建认证


接下来以configmap的形式管理prometheus组件的配置文件
configmap :就是为了让镜像 和 配置文件解耦,以便实现镜像的可移植性和可复用性,简单知道就行,后面会介绍到哈





现在搭建先看,会用,等后面会介绍这个,这个是个比较重要的知识点

接下来创建rbac和configmap

创建的方式kubectl apply -f xxx.yaml 的格式,固定的

查看一下




接下来开始部署prometheus组件


这里存储使用的是emptyDir模式,可以使用hostpath,或者nfs,动态存储pv也可以

在创建svc文件对外可以访问


k8s当中svc和pod关联都是通过lable,ingress也是标签,集群基本都是标签进行关联的,这个比较重要哈

创建一些prometheus和svc


访问查看一下


这些数据都是pull过来的

sum by (pod_name)( rate(container_cpu_usage_seconds_total{image!="", pod_name!=""}[1m] ) )
查询pod的语句

这里prometheus的图形不好,也不够高大上,所以需要开源的grafana进行展示

也是两部分,grafana部署和svc


接下来是svc

这里没有指定固定端口哈
是随机分配的

当然也可以部署一个域名,方便访问,我们可以使用之前的ingress

创建这三个 yaml

启动查看效果


域名要是没有可以绑定hosts

admin;admin账号密码

配置prometheus源

可以直接输入模板编号315在线导入,比较省事,也可以导入json模板




是不是比之前的prometheus效果要好呢,
好了今天就讲解到这里,大家可以直接使用我的yaml进行配置,有问题欢迎私信或者评论

原文地址:https://blog.51cto.com/xiaorenwutest/2485060

时间: 2024-11-07 22:58:36

k8s部署prometheus和grafana监控pod和机器资源(11)的相关文章

使用Helm部署Prometheus和Grafana监控Kubernetes

使用Helm部署Prometheus和Grafana监控Kubernetes [TOC] 1. 环境说明 可用的kubernetes集群 可用的持久化存储 可用的helm 这里我们使用kubeapps管理charts. 2. 安装chart 安装时,适当修改values.yaml里的参数以适应自身的环境.我是设置持久化存储.ingress和证书secret. 安装Prometheus 安装成功后,注意提示页面的提示.同一namespace里,引用域名可只使用前面一段. 同理,安装stable/m

利用Prometheus和Grafana监控MySQL

一. Prometheus 是一个开源的服务监控系统和时间序列数据库.: 官方GitHub地址为:https://github.com/prometheus/prometheus 官方地址:https://prometheus.io/ 官方拓扑图如下 特性: 高维度数据模型 自定义查询语言 可视化数据展示 高效的存储策略 易于运维 提供各种客户端开发库 警告和报警 数据导出 二.安装Prometheus(服务器环境为Centos7.2,本实验服务端跟被监控MySQL在同一台服务器) 前提条件请关

基于k8s集群部署prometheus监控etcd

目录 基于k8s集群部署prometheus监控etcd 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署prometheus监控etcd 1.背景和环境概述 本文中涉及到的环境中.prometheus监控和grafana基本环境已部署好.etcd内置了metrics接口供收集数据,在etcd集群任意一台节点上可通过ip:2379/metrics检查是否能正常收集数据. curl -L http://localhost:237

Prometheus+Grafana监控部署实践

参考文档: Prometheus github:https://github.com/prometheus grafana github:https://github.com/grafana/grafana Prometheus getting_started:https://prometheus.io/docs/prometheus/latest/getting_started/ Prometheus node_exporter:https://github.com/prometheus/no

docker stack 部署容器监控方案(cAdvisor、Prometheus、Grafana)

=============================================== 2018/7/8_第1次修改                       ccb_warlock =============================================== 最近正式业务终于开始上容器,虽然前期通过swarm解决了服务部署和扩展等问题,但是针对容器监控方面缺乏经验甚至是无从入手,因为没有监控数据我根本不知道目前给的资源限制是否合理,业务量激增的时候资源是否可以支撑负

Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群

目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + Grafana 1.Prometheus & Grafana 介绍 Prometheus 是一套开源的系统监控.报警.时间序列数据库的组合,Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而通过 Exporter Http 接口输出这些被监控的组件信息,而且已经有很多 E

Prometheus+Node_exporter+Grafana+Alertmanager 监控部署

一.Prometheus 安装及配置 1.下载及解压安装包 cd /usr/local/src/ export VER="2.13.1" wget https://github.com/prometheus/prometheus/releases/download/v${VER}/prometheus-${VER}.linux-amd64.tar.gz mkdir -p /data0/prometheus groupadd prometheus useradd -g prometheu

centos7下部署 Prometheus+Grafana超炫监控

1.环境说明 监控主机 被监控主机 192.168.0.66 192.168.0.67 运维主机 MySQL 2.主机安装Prometheus 下载:https://prometheus.io/download/ 上传到主机[[email protected] ~]# yum -y ×××tall vim lrzsz 3.安装go [[email protected] ~]# yum -y ×××tall epel-release [[email protected] ~]# yum -y ××

普罗米修斯+grafana监控k8s

其实现原理有点类似ELK.node-exporter组件负责收集节点上的metrics监控数据,并将数据推送给prometheus, prometheus负责存储这些数据,grafana将这些数据通过网页以图形的形式展现给用户. grafana+普罗米修斯全部集成在k8s内部的方式,用pod和svc的方式去暴露服务和端口以及登陆web界面. 普罗米修斯登陆界面:http://192.168.43.35:30003 grafana登陆界面:http://192.168.43.35:31000 普罗