Kubernetes实战(二十一)-event事件持久化

默认情况下, K8S 会将事件保留在 etcd 中一个小时,超过1小时的事件将无法看到,所以 K8S 默认保留事件的时间不足以来更深入的了解集群,所以将事件导出到集群外存储是有必要的,以实现可观测性和告警。

Event事件持久化需要依赖以下三个组件:

  • grafana
  • elasticsearch
  • kubernetes-event-exporter

1 安装 elasticsearch

# 安装 elasticsearch
# -e "ES_JAVA_OPTS=-Xms1g -Xmx1g" 配置内存大小
$ docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms1g -Xmx1g" \
-e "xpack.security.enabled=false" elasticsearch:8.11.3

输出如下则 elasticsearch 安装正常:

2 安装 Grafana


# 安装 grafana,直接通过 Mac 来安装
$ brew install grafana
$ brew services start grafana

3 安装exporter 

# 下载 kubernetes-event-exporter
$ git clone https://github.com/resmoio/kubernetes-event-exporter.git
$ cd kubernetes-event-exporter

4 配置export发送到es

# config 配置文件
logLevel: debug
logFormat: json
maxEventAgeSeconds: 10
kubeQPS: 60
kubeBurst: 60
# namespace: my-namespace-only # Omitting it defaults to all namespaces.
route:
  routes:
    - match:
       - receiver: "dump"
receivers:
  - name: "dump"
    elasticsearch:
      hosts:
        - "http://127.0.0.1:9200"
      index: kube-events
      indexFormat: "kube-events"
      useEventID: true
# 运行 kube.config 是集群的 kubeconfig 文件
go run main.go -conf=config.yaml -kubeconfig=kube.config

5 配置 Grafana ,添加 es datasource 

参考:实践K8S-Event

附录

采集event事件的方式有两种:

方式一:发送给 elasticsearch

# 下载 kubernetes-event-exportergit clone https://github.com/resmoio/kubernetes-event-exporter.gitcd kubernetes-event-exporter
# 配置 configmapcat deploy/01-config.yamlapiVersion: v1kind: ConfigMapmetadata:  name: event-exporter-cfg  namespace: monitoringdata:  config.yaml: |    logLevel: debug    logFormat: json    route:      routes:        - match:            - receiver: "dump"    receivers:      - name: "dump"        elasticsearch:          hosts:            - "http://out_cluster_eaasticsearch:9200"
# 部署kubectl apply -f deploy/

方式二:将集群事件打印到容器的 stdout 中,通过日志方式来采集​​​​​​​

cat deploy/01-config.yamlapiVersion: v1kind: ConfigMapmetadata:  name: event-exporter-cfg  namespace: monitoringdata:  config.yaml: |    logLevel: debug    logFormat: json    route:      routes:        - match:            - receiver: "dump"    receivers:      - name: "dump"        stdout:          deDot: true

 参考:Kubernetes 高级篇 k8s Event详述及持久化方案-CSDN博客

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue3.0(一):Vue的引入-options api-模板语法

Vue的引入方式 CDN方式进行引入 将以下 script标签引入即可 <script src"https://unpkg.com/vue3/dist/vue.global.js"></script><!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><met…

dolist案例实现

这段代码是一个使用Vue.js实现的简单的ToDoList&#xff08;待办事项列表&#xff09;应用。我们分几个部分详细解释这段代码。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>todolist</title&g…

带大家做一个,易上手的家常孜然猪肉挂面

准备一定猪瘦肉 加一把挂面 猪瘦肉切片 一小把花椒 一定量干辣椒(看你想让它多辣) 四个左右大料 一根大葱 一块生姜 四瓣大蒜 蒜切片 单独装起来备用 大葱切段 生姜切片 和干辣椒 花椒 大料装一起 起锅烧油 下瘦肉 翻炒一下 然后倒入 葱姜 干辣椒 花椒 大料 翻炒均匀 …

Mysql单行函数练习

数据表 链接&#xff1a;https://pan.baidu.com/s/1dPitBSxLznogqsbfwmih2Q 提取码&#xff1a;b0rp --来自百度网盘超级会员V5的分享 单行函数练习 单行函数(一行数据返回一个结果) #1.显示系统时间(注:日期时间) #2.查询员工工号,姓名,工资以及提高百分之20后的结果(new…

何以穿越产业周期?解读蓝思科技2023年增长密码

1月30日晚&#xff0c;蓝思科技发布了2023年业绩预告&#xff0c;2023年预计实现归母净利润29.38亿元-30.60亿元&#xff0c;同比增长20%-25%。 松果财经注意到&#xff0c;蓝思科技通过垂直整合&#xff0c;构筑了更具竞争力的产业链条。一方面&#xff0c;公司打造了包含ODM…

MyBatis框架-多对一处理

多对一的处理 多个学生对应一个老师如果对于学生这边&#xff0c;就是一个多对一的现象&#xff0c;即从学生这边关联一个老师&#xff01; 数据库设计 CREATE TABLE teacher (id INT(10) NOT NULL,name VARCHAR(30) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEINNODB DEFAULT C…

【Redis】Redis集群方案应该怎么做 都有哪些方案

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Redis ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 &#xff08;1&#xff09;twemproxy &#xff08;2&#xff09;codis &#xff08;3&#xff09;redis cluster3.0自带的集群 …

Docker进阶篇-DockerFile

一、简介 Dockerfile是用来构建Docker镜像的文本文件&#xff0c;是由一条条构建镜像所需的指令和参数构成的脚 本。 构建步骤&#xff1a; 1、编写Dockerfile文件 2、docker build命令构建镜像 3、docker run依镜像运行容器实例 二、Docker构建过程解析 1、Dockerfile…

MySQL数据库入门(概念+使用)

目录 1. 数据库的概念 1.1 数据库的存储介质 1.2 主流数据库 2. MySQL的基本使用 2.1 链接数据库 2.2 服务器管理 2.3 数据库&#xff0c;服务器和表关系 2.4 简单MySQL语句 3. MySQL架构 4. SQL分类 5. 存储引擎 本篇完。 1. 数据库的概念 数据库是按照数据结构来…

LeetCode 热题 100 | 链表(上)

目录 1 基础知识 1.1 空指针 1.2 结构体 1.3 指针访问 1.4 三目运算符 2 160. 相交链表 3 206. 反转链表 4 234. 回文链表 菜鸟做题第三周&#xff0c;语言是 C 1 基础知识 1.1 空指针 使用 nullptr 来判断是否为空指针&#xff1a; if (headA nullptr) …

手把手教你搭建属于自己的网站(获取被动收入),无需服务器,使用github托管

大家好&#xff0c;我是亚洲著名程序员青松&#xff0c;本次教大家如何搭建一个属于自己的网站。 下面是我自己搭建的一个网站&#xff0c;是一个网址导航网站。托管在了github上面&#xff0c;目前已经运营了三个月&#xff0c;每天的访问量大约有100ip左右。 下图是在51.la上…

Flutter组件 StatefulWidget、StatelessWidget 可继承写法

前言 学过Java的同学&#xff0c;应该都知道面向对象语言的三大特征&#xff0c;封装、继承、多态&#xff1b; Dart也是面向对象的语言&#xff0c;但是在Flutter中的很多组件都被下划线 _ 标记为私有&#xff0c;导致无法继承&#xff0c;本文将介绍一种非私有的创建组件写…

Springboot 自定义参数配置化,密钥,密码,文件保存路径

application.properties 和 application.yml 都是一样的配置方法&#xff0c;只是格式不一样 定义配置文件 server.port8080 image.save.pathE:\ #自定义文件保存路径读取配置文件 Value("${image.save.path}")private String filePath;//E:\优化配置文件 如果我参…

处理安装uni-ui依赖一直安装不上

根据官方的文档去安装&#xff0c;我这边把npm换成了pnpm。 搞了一个小时没搞明白为什么下载不下来依赖&#xff0c;原因是镜像的问题。 处理方式&#xff1a;安装了cnpm&#xff0c;去访问国内镜像 安装cnpm&#xff0c;使用国内镜像 npm install -g cnpm --registryhttps…

Docker容器化安装SonarQube9.9

文章目录 1.环境准备1.1 版本信息1.2 系统设置 2.Docker环境安装2.1 卸载旧版本2.2 设置源2.3 安装Docker2.4 设置阿里仓库2.5 启动Docker 3.Docker Compose4.登录4.1 首页4.2 安装插件 5.制作镜像离线安装 1.环境准备 1.1 版本信息 名称版本备注Docker25.0.1当前2024-01-01最…

广州标点医药信息-米内网数据及咨询服务企业全方位解析!

米内网&#xff08;MENET&#xff09;原名中国医药经济信息网&#xff0c;由广州标点医药信息股份有限公司主办&#xff0c;2010年10月28日更名为“米内网”&#xff0c;上线初始主打医药销售数据库&#xff0c;经过十余年的迭代发展&#xff0c;现已成为国内主要的医药健康信息…

Android矩阵Matrix裁切setRectToRect拉伸Bitmap替代Bitmap.createScaledBitmap缩放,Kotlin

Android矩阵Matrix裁切setRectToRect拉伸Bitmap替代Bitmap.createScaledBitmap缩放&#xff0c;Kotlin class MyImageView : AppCompatImageView {private var mSrcBmp: Bitmap? nullprivate var testIV: ImageView? nullconstructor(ctx: Context, attrs: AttributeSet) :…

吸引企业选择的SD-WAN四大亮点

SD-WAN解决了传统组网所面临的各种挑战&#xff0c;尤其是分支数量众多且分散的问题&#xff0c;其实施交付成本远远低于传统方法&#xff0c;尤其在海外应用更为显著。因此&#xff0c;越来越多的企业正在转向SD-WAN网络。 为什么企业更倾向于选择SD-WAN呢&#xff1f;SD-WAN方…

【LVGL环境搭建】

LVGL环境搭建 win模拟器环境搭建一.二.三.四.五. Ubuntu模拟器环境搭建一. 前置准备二. 下载LVGL Source code&#xff1a;三. 安装sdl2&#xff1a;四. 开启VScode执行五. 安装扩展套件六. 按F5执行七. 执行结果 win模拟器环境搭建 一. 二. 三. 四. 五. Ubuntu模拟器环境…

flask基于django大数据的证券股票分析系统python可视化大屏

证券分析系统采用B/S架构&#xff0c;数据库是MySQL。网站的搭建与开发采用了先进的Python进行编写&#xff0c;使用了Django框架。该系统从两个对象&#xff1a;由管理员和用户来对系统进行设计构建。主要功能包括&#xff1a;个人信息修改&#xff0c;对股票信息、股票买入、…