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-eventsindexFormat: "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博客

 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《二叉树》——3(层序遍历)

目录 前言: 层序遍历: 解析: 前言: 本文主讲链式二叉树的层序遍历,在前面的张篇blog我们初步实现了链式二叉树递归部分的内容,对于递归算法的学习和思维方式我们仍然需要不断加强,所以将对链式二叉树进行…

Outlook技巧:如何插入可以用指定浏览器打开的链接

Outlook中的链接,有时直接点击无法打开,找本地Edge才能打开。如何让Url能够指定打开的浏览器呢? 插入链接时,直接加上前缀Microsoft-edge即可。 操作步骤: 编辑邮件界面,菜单选择插入-》链接 在链接地址…

MongoDB数据模型和WiredTiger读写模型

MongoDB数据模型 思考:MongoDB为什么会使用BSON? BSON协议与数据类型 JSON JSON是当今非常通用的一种跨语言Web数据交互格式,属于ECMAScript标准规范的一个子集。JSON(JavaScript Object Notation, JS对象简谱)即J…

客户端熔断器基于golang Grpc具体实现(Google SRE客户端熔断器)

目录 前言 一、什么是Google SRE 二、Google SRE 熔断器的工作流程: 三、Google SRE GRPC 代码实现 四、测试用例 大家可以关注个人博客:xingxing – Web Developer from Somewhere 有关后端问题探讨 前言 当某个用户超过资源配额时&#xff0c…

搜维尔科技:第九届元宇宙数字人大赛,参赛小组报名确认公告!

各位参赛选手大家好,近期已收到新增报名信息如下表,请各位参赛选手确认,如果信息有误或信息不完整请电话联系赛务组工作人员进行更正 随着元宇宙时代的来临,数字人设计成为了创新前沿领域之一。为了提高大学生元宇宙虚拟人角色策划…

将java对象转换为json字符串的几种常用方法

目录 1.关于json 2.实现方式 1.Gson 2.jackson 3.fastjson 3.与前端的联系 1.关于json JSON是一种轻量级的数据交换格式。它由Douglas Crockford在2001年创造。JSON的全称是JavaScript Object Notation,它是一种文本格式,可以轻松地在各种平台之间传…

RK356X RKAndroid12 TF卡配置 自动挂载

RK356X RKAndroid12 TF卡配置 自动挂载 RK3568 有三个SDMMC接口&#xff0c;分别为SDMMC0 SDMMC1 SDMMC2 DTS 配置 1. max-frequency <150000000>; 此配置设置 SD 卡的运行频率&#xff0c;虽然设置为 150M &#xff0c;但是还要根据 SD 卡的不同模式进行调整。这…

Vue学习总结

声明&#xff1a;本文来源于黑马程序员PDF讲义 双向绑定&#xff1a; 修改表单项标签&#xff0c;发现vue对象data中的数据也发生了变化 双向绑定的作用&#xff1a;可以获取表单的数据的值&#xff0c;然后提交给服务器 事件绑定 v-on: 用来给html标签绑定事件的。需要注意…

Redis 布隆过滤器

布隆过滤器 这一篇文章主要是记录布隆过滤器的使用和认识 主要参考了如下的blog https://blog.csdn.net/weixin_42972832/article/details/131211665 他讲的还不错 简单的来说,布隆过滤器,实际上就像是一个集合,拿redis的key来举例来说,布隆过滤器的设置就是去过滤不属于redi…

电源模块欠压保护点测试方法分享 纳米软件

电源欠压保护原理 欠压保护是指当电源电压低于一定值时&#xff0c;电源的保护功能会及时断开电路&#xff0c;避免设备受到损坏。电源欠压保护一般是通过一个或多个传感器来检测电压&#xff0c;当电压低于设定值时就会触发电源的保护功能&#xff0c;断开电路&#xff0c;保护…

文本生成高清、连贯视频,谷歌推出时空扩散模型

谷歌研究人员推出了创新性文本生成视频模型——Lumiere。 与传统模型不同的是&#xff0c;Lumiere采用了一种时空扩散&#xff08;Space-time&#xff09;U-Net架构&#xff0c;可以在单次推理中生成整个视频的所有时间段&#xff0c;能明显增强生成视频的动作连贯性&#xff…

android 自定义下拉框

一、 简介&#xff1a; 原生Android 提供的spinner下拉框不怎么方便&#xff0c;样式有点丑。修改起来麻烦&#xff0c;于是就自己动手写了一下拉列表。 实现原理使用的是&#xff0c;popwindow弹框&#xff0c;可实现宽高自定义&#xff0c;下拉列表使用listview. 二、pop弹框…