解决Prometheus too many open files问题

近期发现 prometheus 出现 discovery=file msg="Error adding file watcher" err="too many open files"的告警。且更新prometheus json 文件后,不能及时的刷新,需要等待很久。

阅读更多

部署文件不切片的Minio-Server

MinIO 是一个高性能的对象存储,原生支持 Kubernetes 部署的解决方案。 MinIO也提供了一个 Amazon Web Services S3 兼容 API 并支持所有核心 S3 功能。

阅读更多

解决Grafana query processing would load too many samples into memory in query exec

现象

版更后, Grafana 无法正常展示 Prometheus 资料。

阅读更多

Redis-Sentinel

sentinel是一个管理redis实例的工具,它可以实现对redis的监控、通知、自动故障转移。sentinel不断的检测redis实例是否可以正常工作,通过API向其他程序报告redis的状态,如果redis master不能工作,则会自动启动故障转移进程,将其中的一个slave提升为master,其他的slave重新设置新的master服务器。

阅读更多

部署NSQ

NSQ是一个基于Go语言的分布式实时消息队列中间件,它基于MIT开源协议发布,由bitly公司开源出来的一款简单易用的消息中间件,它有以下特点:

  • 分布式,去中心化的拓扑结构,具有无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征
  • 可扩展,自带服务发现和负载均衡策略,可在线扩容缩容
  • 运维友好,部署binary即可,无外部依赖,自带admin管理集群
  • 高度集成,官方支持Go和Python的Client,社区也为大多数语言提供了Client

阅读更多

Prometheus监控docker

Prometheus监控非K8S环境的docker

阅读更多

Grafana展示Prometheus数据

Grafana 是 Graphite 和 InfluxDB 仪表盘和图形编辑器。
Grafana 是开源的,功能齐全的度量仪表盘和图形编辑器,支持 Graphite,InfluxDB 和 OpenTSDB。
Grafana 主要特性:灵活丰富的图形化选项;可以混合多种风格;支持白天和夜间模式;多个数据源;Graphite 和 InfluxDB 查询编辑器等。

阅读更多

Prometheus查询语法

prometheus从根本上存储的所有数据都是时间序列: 具有时间戳的数据流只属于单个度量指标和该度量指标下的多个标签维度。除了存储时间序列数据外,Prometheus也可以利用查询表达式存储5分钟的返回结果中的时间序列数据。

阅读更多

代理转发zabbix proxy

现象:us地区 zabbix-proxy 在晚上高峰期时(21:00~24:00)容易发生 zabbix-server 无法连接 zabbix proxy。
问题原因:经检查,US 到 TW 之间通讯走国际链路会经过 PCCW 运营商,且保障到运营商和调整路由后效果不明显。

阅读更多

Python 读取Mysql生成EXCEL(XLSX)

以前做报表从Mysql数据里面提取数据很简单,几条简单的SHELL脚本就可以实现该功能,因为是自己使用,所以对于格式无所谓,以前使用的都是.csv格式,因为其是以逗号区分的,方便脚本处理。这次不一样了,虽然这次接到需求也是从Mysql中导出数据,但是!!导出文件的格式必须是.XLSX这是微软EXCEL软件自有的格式,包含特殊的文件头,所以之前的方法失效了,失效了… 折腾了好久,也请教了别人,终于,终于解决了这个需求。

阅读更多