前言最近在整合监控, 在迁移grafana仪表盘的时候我懵逼了, grafana 本身并不能选择一起导出, 没办法只能一个一个导出, 来来回回折腾2小时,我直接炸裂, 直接去google找轮子了.
使用API进行备份废话不多说了,直接上项目
Github: https://github.com/ysde/grafana-backup-tool
使用12345678# 安装虚拟环境pip3 install virtualenv# 创建虚拟环境virtualenv grafana# 使用source grafana/bin/activatepip install grafana-backu...
前言最近频繁收到服务器的告警
126.67% throttling of CPU in namespace monitoring for container node-exporter in pod node-exporter-kkmjf.
说是节流率已经达到了26%, 但是当我上线去查看监控的时候,发现当前的pod资源使用率是非常低的,远远低于限定指标,那这个告警到底是什么回事呢?
Kubernetes的CPU资源请求和限制的实现方式Kubernetes 使用 CFS [1]做CPU资源的限制, 此调度器是集成在内核当中。简单的来说,CFS是通过添加了重分配周期和占用周期, 当一个进...
前言我们都知道, kubernetes的daemonset控制器,可以将副本每个运行在集群中的所有节点中,并且 daemonset 控制器 默认会对Pod添加污点容忍度
容忍度健名
效果
版本
描述
node.kubernetes.io/not-ready
NoExecute
1.13+
当出现类似网络断开的情况导致节点问题时,DaemonSet Pod 不会被逐出。
node.kubernetes.io/unreachable
NoExecute
1.13+
当出现类似于网络断开的情况导致节点问题时,DaemonSet Pod 不会被逐出。
node.kuberne...
前言帮研发创建了一个白名单数据库的查询权限, 需要用到nginx TCP反代, 但是配置完成以后却出现 长连接在一段时间没有数据,断开的情况.
解决出现此问题的原因,是因为代理的配置参数有误,需要更改
proxy_timeout
官网是这样描述的: Sets the timeout between two successive read or write operations on client or proxied server connections. If no data is transmitted within this time, the connection is cl...
前言ES的基础认证功能已经永久免费, 正巧去试一下.
配置 transport TLS证书如果要启动认证功能, 就必须在transport端口添加TLS. 如果不加密, 则密码将已明文的方式在传输中暴露.
注意,transport 和 http 端口是两个端口,一个是内部集群通信时的端口,一个是客户端的端口, 此次配置的是集群通信时的端口.
elasticsearch默认集成了一个命令来简化证书生成的过程 elasticsearch-certutil
1. 创建一个ca颁发机构的签名证书
1./elasticsearch-certutil ca --out /root/elastic-s...
前言默认的时区告警是UTC的, 所以我们需要做一些调整
修改时区
我们可以通过官方文档了解到, StartsAt 的 数据类型是 time.Time
Time 初始化以后, 时区已经是写死了. 只能通过其他方法去更改时区,但是我们在template下不能用time模块,我们只能另辟蹊径。
我们可以通过Time对象的Add方法来进行时区的增加操作
Add 方式需要一个参数, 类型是Duration,返回的数据类型还是Time
Duration类型这个类型表示持续的时间,以int64 纳秒 计数,最大持续可以到290年
1type Duration int64
实例
123456789...
前言在测试环境下使用Prometheus operator的时候, 某个组件的指标总是出现 context deadline exceeded,而如果是本地直接请求,是正常的.所以刚开始并没有怀疑网络问题.
排查然而, 一番折腾下来, 并没有找到所以然. 因为Prometheus有两个Pod, 最终在另一个Pod里面发现了问题.
组件一共有3个target请求2个指标是正常,请求第三个的时候则是超时. 虽然查看这个Pod所在的node节点, 并在node上请求,发现请求不了。
测试连通性初步检查下来, 发现是网络问题
检查路由12route -n172.30.122.64 192....
概念数据模式指标名称和标签每个时间序列都可以通过 指标名称 和可选的键值对label 来进行标识
比如说: http_requests_total 标识请求收到的HTTP的总数. 它可以包含数字,字母,以及下划线和冒号。
PS: 需要注意的事, : 冒号是用户定义的 record rules 保留的, exporter 或者其他工具不应该直接使用它们.
标签来负责标识指标的维度, 比如关于http_requests_total指标的所在集群,所属业务, 所属应用.
上述命名规则都必须匹配正则表达式[a-zA-Z_][a-zA-Z0-9_]*指标和标签命名规范
SamplesSamples...
前言在学习kube prometheus operator的时候,发现很多项目都用到了 jsonnet 这个开源库, 所以特地来学习一下.
语法安装123456go get github.com/google/go-jsonnet/cmd/jsonnet或者# 下载对应的安装包https://github.com/google/go-jsonnet/releases/tag/v0.17.0tar zxf go-jsonnet_0.17.0_Linux_x86_64.tar.gz -C /usr/local/bin/
基础语法
有效字符可以不需要加引号
注释可以用#号
12345678...
前言临时记录一下学习笔记
自定义清单安装整个项目都是使用 jsonnet 编写
安装jsonnet
1234# 下载对应的安装包https://github.com/google/go-jsonnet/releases/tag/v0.17.0tar zxf go-jsonnet_0.17.0_Linux_x86_64.tar.gz -C /usr/local/bin/
安装jb
1go get github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb
将json编译成yaml文件我们需要用 gojsontoyaml,这里安装一下
1...