如何通过开源项目搭建私有云平台--第四步下:安装rancher 监控

news2024/11/29 4:53:05

第四步下:安装rancher 监控,缺告警

本来想监控与告警一起写,但最近几天研究了rancher的告警,按照文档说法,配置了但没有触发,网上找了一些资料,有的在rancer 2.6成功的,但我用同样的方法在2.7.1和2.7.2配置了,都没有触发成功。我还专门在rancher github上留了贴 Can not send alert email · Issue #41274 · rancher/rancher · GitHub,希望后面的版本有改进,所以本文先以监控为主要内容

具体部署环境与第四步上一样

服务器IP用途环境说明
10.10.10.5 部署ranchercentos 8 安装docker
10.10.10.6 k8s-master1 ,etcdcentos 8 安装docker
10.10.10.7k8s-master2 ,etcdcentos 8 安装docker
10.10.10.8k8s-master3,etcdcentos 8 安装docker
10.10.10.9k8s-node1,workercentos 8 安装docker
10.10.10.10k8s-node2,workercentos 8 安装docker

这里要注意,由于安装监控的时候,启动了持久化,所以一定要先安装longhorn后才能安装告警

1、安装监控

在rancher管理界面进入某个集群,点击 “应用--->charts--->Monitoring”,具体如下图: 

2、设置prometheus和grafna持久化,设置存储类型为longhorn,使用longhorn来进行持久化,具体如下图:

 

3、如果安装成功,会看到监控选项,点击能看到prometheus和grafana的入口,longhorn能看到prometheus和grafana的volumn,具体如下图:

 注意:可以使用  用户名:admin 密码:prom-operator来登录grafana

4、设置监控指标输出地址

  1)、预先准备了一个go gin的应用程序,并加入了prometheus指标的输出,默认指标输出地址是 /metrics,然后把该程序打包成镜像,部署到k8s,建立了一个service名字叫hellworld,具体代码和dockerfile如下:

package main
import (
	"github.com/prometheus/client_golang/prometheus/promhttp"
	"net/http"
    "github.com/gin-gonic/gin"
)
// prometheus metircs
func PromHandler(handler http.Handler) gin.HandlerFunc {
	return func(c *gin.Context) {
		handler.ServeHTTP(c.Writer, c.Request)
	}
}
func setupRouter() *gin.Engine {
	// 初始化 Gin 框架默认实例,该实例包含了路由、中间件以及配置信息
	r := gin.Default()
   // Ping 测试路由
	r.GET("/hi", func(c *gin.Context) {
		c.String(http.StatusOK, "hello world!")
	})
    r.GET("metrics", PromHandler(promhttp.Handler()))
    return r
}

func main() {
	// 设置路由信息
	r := setupRouter()
	// 启动服务器并监听 8080 端口
	r.Run(":8080")
}
FROM golang:1.20.2 
# AS build
ENV GO111MODULE=on \
    GOPROXY=https://goproxy.cn,direct
RUN mkdir -p /api
WORKDIR /api
COPY . .
RUN go mod download
RUN GOOS=linux CGO_ENABLED=1 GOARCH=amd64 go build   -o ./app
CMD ["./app"]

2)、 在helloworld服务加上  app =hellowrold标签,具体如下图:

3)、建立 ServiceMonitor yaml,具体如下图,

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: helloworldsm
  namespace: test
spec:
  endpoints:
    - port: helloworldport
  selector:
    matchLabels:
      app: hellowrold

 注意如下内容:

 matchLabels:
      app: hellowrold   

 #这里是第2)步加入的service标签

 endpoints:
    - port: helloworldport

   #这里是在部署deployment的时候指定端口映射时起的名字,具体见下面第三幅图片

4)、如果一切正常,能在prometheus 目标里面看到监控指标的地址,并显示up,具体如下图:

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

09 【Sass语法介绍-函数指令】

1.前言 在之前的章节我们学习过 Sass 提供的各种各样的函数,那么如果我们需要自定定义函数来使用就需要用到函数指令 function了。本节内容我们来学习 Sass 函数指令的语法和使用,在 Sass 中自定义函数是必须要掌握的! 2.什么是 Sass 函数指…

又一款可视化神器,开源了!

在互联网数据大爆炸的这几年,各类数据处理、数据可视化的需求使得 GitHub 上诞生了一大批高质量的 BI 工具。 借助这些 BI 工具,我们能够大幅提升数据分析效率、生成更高质量的项目报告,让用户通过直观的数据看到结果,减低沟通成…

安卓项目如何做单元测试

前言 先说一下创建篇文章的目的,近期负责搭建公司的单元测试框架,于是查阅了网上的很多文章,以及参考了github上很多的项目例子,并且也进行了相当多的尝试。这其中花费了很多的精力,大约有两三周的时间,远…

淘系抓包流程(淘宝数据无法抓包解决方式)

淘系抓包流程 结合frida和adb工具以及mumu模拟器进行抓包。 具体的关系图: frida的安装 frida安装,直接安装官网的脚手架。frida官网使用python的pip安装,python > 3。 安装后使用查看版本命令来确认是否安装。 pip install frida-tools frida --ve…

【严重】VMware Aria Operations for Logs v8.10.2 存在反序列化漏洞(CVE-2023-20864)

漏洞描述 VMware Aria Operations for Logs前身是vRealize Log Insight,VMware用于处理和管理大规模的日志数据产品。 VMware Aria Operations for Logs 8.10.2版本中存在反序列化漏洞,具有 VMware Aria Operations for Logs 网络访问权限的未经身份验…

“SCSA-T学习导图+”系列:交换技术之STP

本期引言: 在通信工程当中,从物理层面上,我们可以采用冗余链路保证网络的健壮性。冗余是指出于系统安全和可靠性等方面的考虑,人为地对一些关键部件或功能进行重复的配置。当系统发生故障时,比如某一设备发生损坏&…

【Linux】Linux下的gbd调试,你学废了吗

操作系统核心数centos 3.10.032位单核 gbd调试方法-以线程运行时调试为例 线程死锁状态时查看栈升级gbd通过gdb在程序运行时进行调试 线程死锁状态时查看栈 在线程-线程安全之互斥中,我们自己写了一个模拟实现的线程死锁情况 我们用gbd调试查看了当前线程的调用&a…

拉链表制作

1.拉链表的应用场景 拉链表适合于:数据会发生变化,但是大部分是不变化的(即:缓慢变化维。还需要保留历史数据做分析的场景) 2.拉链表的形成过程 关键的过程 第四步:获取变化的数据(创建和修改…

Flask连接MySQL

本文章涉及到Flask框架和HTML内容,相关知识可查看链接 HTML-form表单和提交_html form 提交_小梁今天敲代码了吗的博客-CSDN博客https://blog.csdn.net/weixin_43780415/article/details/130110722 前端引入和html标签_小梁今天敲代码了吗的博客-CSDN博客https://b…

vscode下drawio无法使用

问题描述: Vscode下, 刚下载drawio这个插件,在vscode左边EXPLORER下,没有Test这个页面,导致vscode无法使用drawio。 解决办法: 在自己需要的目录下,新建一个文件,例如test,并命名为test.drawi…

数据结构算法

直接插入排序 1.从第一个元素开始,该元素可以认为已经被排序 2.取下一个元素tem,从已排序的元素序列从后往前扫描 3.如果该元素大于tem,则将该元素移到下一位 4.重复步骤3,直到找到已排序元素中小于等于tem的元素 5.tem插入到该元…

5.1劳动节,致敬最可爱的人!Cocos社区杰出贡献者出炉

Cocos 引擎的生态建设与繁荣,离不开社区开发者的辛勤付出。 2022.5 ~ 2023.5 年度期间,有这样一批 Cocos 社区开发者,他们使用 Cocos Creaor 引擎创作内容与产品、分享技术和经验,为 Cocos 社区默默贡献自己的一份力量&#xff0c…

改进YOLOv8:替换轻量化骨干网络Efficient V1、Efficient V2《重新思考卷积神经网络的模型缩放》)

这里写目录标题 1 EfficientNetV1中存在的问题2.EfficientNetV2网络框架3.YOLOv8添加Efficient V1代码yaml文件Efficient V1代码运行4. 添加Efficient V2代码yaml文件Efficient V2运行Efficient V1论文地址:https://arxiv.org/pdf/1905.11946.pdf Efficient V1代码地址:

Golang每日一练(leetDay0049) 二叉树专题(9)

目录 144. 二叉树的前序遍历 Binary-tree Preorder Traversal 🌟 145. 二叉树的前序遍历 Binary-tree Postorder Traversal 🌟 对比: 94. 二叉树的中序遍历 Binary-tree Inorder Traversal 🌟 146. LRU缓存 LRU Cache &am…

调用移动云OCR识别身份证

一.开通移动云OCR服务 在下面这个网址开通免费服务,,每个账号可免费使用500次,先要实名认证。 通用文字识别 (10086.cn)https://ecloud.10086.cn/home/product-introduction/Generalverify 有两种方式: 这里选择第二种 。 二…

炸裂的 Auto-GPT,帮我自动生成小视频!

大家好,我是程序员贺同学。 继前段时间爆火的 ChatGPT 后,又一个炸裂的开源项目 Auto-GPT 出现了。 仿佛一夜之间,AI 圈又出现了一个新晋顶流。我们来看看它有多🔥。 在 GitHub 上,仅最近不到两个礼拜,这个…

TCP/IP基础知识

文章目录 互联网与TCP/IP的关系TCP/IP与OSI参考模型硬件(物理层)互联网层(网络层)IPICMPARP 传输层TCPUDP 应用层WWW电子邮件(E-Mail)文件传输(FTP)远程登录(TELNET与SSH&#xff09…

Redis Set 用了 2 种数据结构来存储,到现在才知道

Sets 无序集合,他的功能就好像你熟悉的 Java 中的 HashSet 一样。集合是通过散列表实现的,所以添加、删除、查找元素的时间复杂度是 O(1)。 1. 是什么 Sets 是 String 类型的无序集合,集合中的元素是唯一的,集合中不会出现重复的数…

【百问百答】可靠性基础知识第三期

1.电连接器的基本性能有哪些? 三个基本性能:机械性能、电气性能和耐环境性能。 电连接器机械性能测试包括:插拔力测试、端子保持力测试、端子正向力测试、耐久性测试。 电气特性测试包括:绝缘电阻测试、 耐电压测试、 低电平电阻测试(LLCR…

【YOLO v1】模型搭建 | model | 代码

YOLO V1 模型 import torch import torch.nn as nn from torchsummary import summarydef build_block(in_channel, out_channel, kernel_size, stride1, maxpoolFalse):padding kernel_size//2block nn.Sequential(nn.Conv2d(in_channel, out_channel, kernel_sizekernel_si…