性能测试:k8s集群监控环境搭建(kube-prometheus)
选择kube-prometheus版本
k8s集群版本是1.22.x
5个节点
说明:如果你电脑配置低,也可以1个master节点,2个node节点
3个节点
Kube-Prometheus地址:https://github.com/prometheus-operator/kube-prometheus/
找到和自己Kubernetes版本对应的版本
选择0.9
克隆:git clone -b release-0.9 https://github.com/prometheus-operator/kube-prometheus.git
安装prometheus-operator
cd kube-prometheus/
cd manifests/
安装Prometheus Operator:kubectl create -f setup/
下面可以看到,ns是monitoring
查看Operator容器状态:kubectl get po -n monitoring
2/2才表示可用
为什么是两个容器呢?
cd setup
vim prometheus-operator-deployment.yaml
可以看到,是1个副本,一个pod里面两个容器
查看信息,镜像拉取失败
kubectl describe po prometheus-operator-75d9b475d9-wslbm -n monitoring
pod在master02上
可以在master02上,单独拉取
docker pull quay.io/prometheus-operator/prometheus-operator:v0.49.0
然后,自动变成running了
创建prometheus技术栈(部署prometheus)
kubectl create -f .
因为要下载镜像,这一步很耗时
image: quay.io/prometheus/alertmanager:v0.22.2
image: quay.io/prometheus/prometheus:v2.29.1
image: k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.1.1
image: quay.io/brancz/kube-rbac-proxy:v0.11.0
查看Prometheus容器状态
可以看到,每个节点上都有一个node-exporter,那是因为
vim node-exporter-daemonset.yaml
查看服务:kubectl get svc -n monitoring
暴露Prometheus端口
查看Prometheus的Service:kubectl get svc prometheus-k8s -n monitoring
将Prometheus的Service的type改成NodePort类型:kubectl edit svc prometheus-k8s -n monitoring
再次查看Prometheus的Service:kubectl get svc prometheus-k8s -n monitoring
对外暴露了一个端口32458
访问:http://192.168.117.142:32458
查询数据
暴露Grafana端口
查看Grafana的Service:kubectl get svc grafana -n monitoring
将Grafana的Service的type改成NodePort类型:kubectl edit svc grafana -n monitoring
再次查看Grafana的Service,对外暴露了一个端口32718
kubectl get svc grafana -n monitoring
安装了kube-proxy服务的节点都可以访问(grafana的pod必须是running状态):
http://192.168.117.142:32718/login
http://192.168.117.143:32718/login
http://192.168.117.144:32718/login
http://192.168.117.145:32718/login
http://192.168.117.146:32718/login
Grafana默认登录的账号密码为admin/admin
已经有数据源
监控效果图
监控node
监控指定命名空间下的pod,比如:kube-system
监控指定node下的pod
添加其它模板
5个节点
3个节点
gcr镜像拉取失败的解决方案
详见:
https://www.cnblogs.com/uncleyong/p/15405315.html
https://www.cnblogs.com/uncleyong/p/15399642.html
【性能项目实战:jmeter+k8s+微服务+skywalking+efk】汇总
详见:https://www.cnblogs.com/uncleyong/p/15475614.html
性能测试:k8s集群监控环境搭建(kube-prometheus)的更多相关文章
- 部署k8s集群之环境搭建和etcd单节点安装
环境搭建以及etcd 单节点安装过程 安装之前的环境搭建 在进行k8s安装之前先把虚拟机准备好,这里准备的是三台虚拟机 主机名 ip地址 角色 master 172.16.163.131 master ...
- centos 8 集群Linux环境搭建
一.集群Linux环境搭建 1. 注意事项 1.1 windows系统确认所有的关于VmWare的服务都已经启动 打开任务管理器->服务,查看五个VM选项是否打开. 1.2 确认好VmWare生 ...
- 基于 kubeadm 搭建高可用的kubernetes 1.18.2 (k8s)集群一 环境准备
本k8s集群参考了 Michael 的 https://gitee.com/pa/kubernetes-ha-kubeadm-private 这个项目,再此表示感谢! Michael的项目k8s版本为 ...
- k8s集群PHP环境使用
一.环境介绍 k8s版本: 1.15.2 存储: 阿里云NAS 测试代码: wordpress 二.下载wordpress和创建好数据库等 1.下载wordpress wget https://cn. ...
- 重磅!容器集群监控利器 阿里云Prometheus 正式免费公测
Prometheus 作为容器生态下集群监控的首选方案,是一套开源的系统监控报警框架.它启发于 Google 的 borgmon 监控系统,并于 2015 年正式发布.2016 年,Prometheu ...
- k8s集群监控(十一)--技术流ken
Weave Scope 在我之前的docker监控中<Docker容器监控(十)--技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 K ...
- hadoop学习笔记(六):hadoop全分布式集群的环境搭建
本文原创,如需转载,请注明作者以及原文链接! 一.前期准备: 1.jdk安装 不要用centos7自带的openJDK2.hostname 配置 配置位置:/etc/s ...
- k8s集群监控(十一)
Weave Scope 在我之前的docker监控中<Docker容器监控(十)–技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 Ku ...
- Dream------spark--spark集群的环境搭建
1.下载安装scala http://www.scala-lang.org/download/2.11.6.html 2.解压下载后的文件,配置环境变量:编辑/etc/profile文件,添加如下 ...
随机推荐
- Android官方文档翻译 十四 3.2Supporting Different Screens
Supporting Different Screens 支持不同的屏幕 This lesson teaches you to 这节课教给你 Create Different Layouts 创建不同 ...
- 【get√】golang新手理解了一点点gin框架的中间件
1.通过use()来使用多个中间件 router := gin.New() router.Use( middleware1, middleware2) 2.中间件的典型实现 func Logger() ...
- 【记录一个问题】linux + opencv + gpu视频解码,好不容易编译通过,运行又coredump了
1.首先编译了opencv + cuda 编译选项中使用了以下关于cuvid库的内容: //"nvcuvid" libraryCUDA_nvcuvid_LIBRARY:FILE ...
- manjaro20夜灯夜间模式开关
- Redis的几点积累
1.Redis比memcache快 Redis具有事务,持久化等机制,但是它还能做到高性能,原因包括如下: Libevent.和Memcached不同,Redis并没有选择libevent.Libev ...
- Servlet Filter(过滤器)
Servlet Filter 又称 Servlet 过滤器,它是在 Servlet 2.3 规范中定义的,能够对 Servlet 容器传给 Web 资源的 request 对象和 response 对 ...
- golang中的tcp编程
1. tcp server package main import ( "bufio" "fmt" "net" ) func main() ...
- Web开发底层是Servlet
SpringMVC:是基于spring的一个框架,实际上就是spring的一个模块,专门是做web开发. 可以理解成servlet是一个升级 web开发底层是servlet,框架是在servlet基础 ...
- 不难懂——th: 的常用标签
关键字> 功能介绍 > 案例 th:id 替换id <input th:id="'xxx' + ${collect.id}"/> ...
- 解决for循环中空格的问题
[root@node-01 ~]# cat 1 a b c ab cd 如果想按行循环遍历出文件中内容,直接使用for是有问题的,第一行按空格分隔的会有问题 [root@node-01 ~]# for ...