选择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

添加其它模板

1 Node Exporter for Prometheus Dashboard CN v20201010
中文
英文

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)的更多相关文章

  1. 部署k8s集群之环境搭建和etcd单节点安装

    环境搭建以及etcd 单节点安装过程 安装之前的环境搭建 在进行k8s安装之前先把虚拟机准备好,这里准备的是三台虚拟机 主机名 ip地址 角色 master 172.16.163.131 master ...

  2. centos 8 集群Linux环境搭建

    一.集群Linux环境搭建 1. 注意事项 1.1 windows系统确认所有的关于VmWare的服务都已经启动 打开任务管理器->服务,查看五个VM选项是否打开. 1.2 确认好VmWare生 ...

  3. 基于 kubeadm 搭建高可用的kubernetes 1.18.2 (k8s)集群一 环境准备

    本k8s集群参考了 Michael 的 https://gitee.com/pa/kubernetes-ha-kubeadm-private 这个项目,再此表示感谢! Michael的项目k8s版本为 ...

  4. k8s集群PHP环境使用

    一.环境介绍 k8s版本: 1.15.2 存储: 阿里云NAS 测试代码: wordpress 二.下载wordpress和创建好数据库等 1.下载wordpress wget https://cn. ...

  5. 重磅!容器集群监控利器 阿里云Prometheus 正式免费公测

    Prometheus 作为容器生态下集群监控的首选方案,是一套开源的系统监控报警框架.它启发于 Google 的 borgmon 监控系统,并于 2015 年正式发布.2016 年,Prometheu ...

  6. k8s集群监控(十一)--技术流ken

    Weave Scope   在我之前的docker监控中<Docker容器监控(十)--技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 K ...

  7. hadoop学习笔记(六):hadoop全分布式集群的环境搭建

    本文原创,如需转载,请注明作者以及原文链接! 一.前期准备: 1.jdk安装        不要用centos7自带的openJDK2.hostname    配置       配置位置:/etc/s ...

  8. k8s集群监控(十一)

    Weave Scope   在我之前的docker监控中<Docker容器监控(十)–技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 Ku ...

  9. Dream------spark--spark集群的环境搭建

    1.下载安装scala http://www.scala-lang.org/download/2.11.6.html   2.解压下载后的文件,配置环境变量:编辑/etc/profile文件,添加如下 ...

随机推荐

  1. 《剑指offer》面试题39. 数组中出现次数超过一半的数字

    问题描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 你可以假设数组是非空的,并且给定的数组总是存在多数元素. 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, ...

  2. 自从学会了VBA字典,VLOOKUP都不那么香了

    上篇博文中,小爬曾多次为VBA字典带货.鼓励多用字典,可以让我们的VBA脚本工具执行更快.今天小爬来细聊一下VBA字典的具体应用!如果你有一定VBA基础,那么看完你一定会对VBA字典有全新的认识:如果 ...

  3. [STM32F4xx 学习] 如何在RAM中调试程序

    在RAM中调试程序指的是将程序下载到RAM里面(而不是Flash里面),然后在RAM中执行程序.调试. 为什么要在RAM中调试程序?总结起来有以下两点原因: 1. Flash 擦写次数有限,STM32 ...

  4. elasticsearch之请求处理流程(Rest/RPC )

    .Action概述 ES提供client供集群节点或java客户端访问集群用.client模块通过代理模式,将所有的操作都集成到client接口中.这样外部调用只需要初始化client就能够完成所有的 ...

  5. gin中从reader读取数据数据

    package main import ( "fmt" "github.com/gin-gonic/gin" "net/http" &quo ...

  6. ARTS Week 22

    Algorithm 本周的 LeetCode 题目为 297. 二叉树的序列化与反序列化 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也 ...

  7. java内部类概述和修饰符

    1 package face_09; 2 /* 3 * 内部类访问特点: 4 * 1,内部类可以直接访问外部类的成员. 5 * 2,外部类要访问内部类,必须建立内部类的对象. 6 * 7 * 一把用于 ...

  8. 集合框架-HashSet存储自定义对象

    1 package cn.itcast.p4.hashset.test; 2 3 import java.util.HashSet; 4 import java.util.Iterator; 5 6 ...

  9. Java反射机制及原理

    一.概念 java程序运行时动态的创建类并调用类的方法和属性   二.原理简介 Class<?> clz = Class.forName("java.util.ArrayList ...

  10. 如何在pyqt中实现平滑滚动的QScrollArea

    平滑滚动的视觉效果 Qt 自带的 QScrollArea 滚动时只能在两个像素节点之间跳变,看起来很突兀.刚开始试着用 QPropertyAnimation 来实现平滑滚动,但是效果不太理想.所以直接 ...