性能测试: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文件,添加如下 ...
随机推荐
- 《剑指offer》面试题39. 数组中出现次数超过一半的数字
问题描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 你可以假设数组是非空的,并且给定的数组总是存在多数元素. 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, ...
- 自从学会了VBA字典,VLOOKUP都不那么香了
上篇博文中,小爬曾多次为VBA字典带货.鼓励多用字典,可以让我们的VBA脚本工具执行更快.今天小爬来细聊一下VBA字典的具体应用!如果你有一定VBA基础,那么看完你一定会对VBA字典有全新的认识:如果 ...
- [STM32F4xx 学习] 如何在RAM中调试程序
在RAM中调试程序指的是将程序下载到RAM里面(而不是Flash里面),然后在RAM中执行程序.调试. 为什么要在RAM中调试程序?总结起来有以下两点原因: 1. Flash 擦写次数有限,STM32 ...
- elasticsearch之请求处理流程(Rest/RPC )
.Action概述 ES提供client供集群节点或java客户端访问集群用.client模块通过代理模式,将所有的操作都集成到client接口中.这样外部调用只需要初始化client就能够完成所有的 ...
- gin中从reader读取数据数据
package main import ( "fmt" "github.com/gin-gonic/gin" "net/http" &quo ...
- ARTS Week 22
Algorithm 本周的 LeetCode 题目为 297. 二叉树的序列化与反序列化 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也 ...
- java内部类概述和修饰符
1 package face_09; 2 /* 3 * 内部类访问特点: 4 * 1,内部类可以直接访问外部类的成员. 5 * 2,外部类要访问内部类,必须建立内部类的对象. 6 * 7 * 一把用于 ...
- 集合框架-HashSet存储自定义对象
1 package cn.itcast.p4.hashset.test; 2 3 import java.util.HashSet; 4 import java.util.Iterator; 5 6 ...
- Java反射机制及原理
一.概念 java程序运行时动态的创建类并调用类的方法和属性 二.原理简介 Class<?> clz = Class.forName("java.util.ArrayList ...
- 如何在pyqt中实现平滑滚动的QScrollArea
平滑滚动的视觉效果 Qt 自带的 QScrollArea 滚动时只能在两个像素节点之间跳变,看起来很突兀.刚开始试着用 QPropertyAnimation 来实现平滑滚动,但是效果不太理想.所以直接 ...