Ubuntu2004 wine-wechat输入中文字体为方块的解决
克隆 仓库git clone https://gitee.com/wszqkzqk/deepin-wine-for-ubuntu.git
安装cd deepin-wine-for-ubuntu/./install.sh
// KDE桌面或者其他安装出现错误执行 ./KDE-install.sh
更新 wechatwget -qO- https://deepin-wine.i-m.dev/setup.sh | sudo sh
微信:sudo apt-get install com.qq.weixin.deepinQQ:sudo apt-get install com.qq.im.deepin钉钉:sudo apt-get install com.dingtalk.deepin
说明: 由于新版变化,安装完成后需要注销重登录才能正常显示应用图标。
安装美化工具sudo apt-get install gnome-shell-extension-top-icons-plus gnome-tweaks
微信无法发送图片 sudo apt install libjpeg62:i386
微信输入中 ...
【监控】Cortex配置文件-1.2.0
Cortex can be configured using a YAML file - specified using the -config.file flag - or CLI flags. In case you combine both, CLI flags take precedence over the YAML config file.
The current configuration of any Cortex component can be seen by visiting the /config HTTP path.Passwords are filtered out of this endpoint.
ReferenceTo specify which configuration file to load, pass the -config.file flag at the command line. The file is written in YAML format, defined by the scheme below. Brackets indic ...
Alertmanager源码分析-4-Kafka支持
Alertmanager 源码分析(4)Kafka支持前面我们的源码一直走到了notify.go 这个文件里面,但是这里面具体怎么实现的?我并不是很关心。我是带着任务来的。增加 Kafka 支持。 改造 Alertmanager 的消息通知,我们需要知道这几个文件:
notify/notify,go 这里面是 方法的接口
config/config.go 这里面是 alertmanager.yml 配置文件序列化
config/notifiers.go 这里面是 告警通知方式的配置的生成
我们在notify 目录下,找到了 email , webhook等通知方式的源码,我们简单点,根据webhook 来进行Kafka 的源码支持。
首先,我们现增加相关的配置类的信息,在 config 的文件目录中的 config 增加配置信息,在 config/notifiers.go 里面增加 kafka 的基本配置,如下所示:
12345678910111213141516// Receiver configuration provides configuration on how to c ...
Alertmanager源码分析(3) Dispatcher
Alertmanager 源码分析(3)Dispatcher在前一篇文章中,提到了provider 里面的 Subscribe 在 Dispatcher 里面的调用。也找到:
12345678910func (d *Dispatcher) Run() { d.done = make(chan struct{}) d.mtx.Lock() d.aggrGroups = map[*Route]map[model.Fingerprint]*aggrGroup{} d.metrics.aggrGroups.Set(0) d.ctx, d.cancel = context.WithCancel(context.Background()) d.mtx.Unlock() d.run(d.alerts.Subscribe()) close(d.done)}
首先,我们需要知道 谁调用的它,我们点进去,看一下:
1234567891011121314151617disp = dispatch.NewDispatcher(alerts, rou ...
Alertmanager源码阅读分析篇(2)Alerts接收
Alertmanager 源码阅读分析篇(2)Alerts接收这里的Alertmanager 的告警接收,我们主要讲的是Prometheus的告警怎么发送到Alertmanager
的。但是我们不关心 Prometheus 的发送,我们关心的是Alertmanager 的接收。
我们先看到api/v1 里面的注册接口:
123456789r.Options("/*path", wrap(func(w http.ResponseWriter, r *http.Request) {}))r.Get("/status", wrap(api.status))r.Get("/receivers", wrap(api.receivers))r.Get("/alerts", wrap(api.listAlerts))r.Post("/alerts", wrap(api.addAlerts))r.Get("/silences", wrap(api.listSil ...
Alertmanager源码阅读分析篇(1) 告警的流程分析
Alertmanager 源码阅读分析篇(1)告警流程剖析是这样的,其实本来是没想看这个 Alertmanager 源码的,但是目前 Alertmanager 的使用需求不满足当前的使用场景,我们需要为 Alertmanager 加入 消息队列的支持,因此需要对 Alertmanager 的消息发送提供支持也因此需要看看Alertmanager 源码。
首先我们先看 官方的 架构图 进行分析:
ALertmanager 官方的 架构 其实 是 特别的 清楚。大致的流程如下:
Prometheus 通过 接口 API (api/v1/alerts) 的形式触发告警,同时 我们可以根据 接口 API 设置当前告警的 沉默时间。
当接受到 API 的告警信息后,会有 Alertmanager 内置的 Provider 组件 来进行 存储,这个存储在源码中是 基于 内存的。
Alert Provider 讲告警消息。提交给 Dispatcher , 看名字我们就很清楚的知道这是一个 批次 处理的组件。我们在 配置 Alertmanager 的时候,会配置group_wait , group ...
InfluxDB 数据迁移方案测试以及风险性评估
InfluxDB 数据迁移方案测试以及风险性评估1. 背景描述上周,我们完成了 influx-proxy 的代码审计,部署测试以及正式部署的工作,经过我们的测试,influx-proxy 基本满足我们目前针对 InfluxDB 的集群需求。目前我们依托于influx-proxy,提供了 双环双实例使用,考虑到目前旧InfluxDB实例中已存在的MSP监控数据不丢失,我们需要对旧实例和新实例进行数据备份与迁移。
2. 前期准备工作2.1 迁移方案
迁移方案的确定与测试,通过测试验证整理出迁移方案的详细的步骤;
在迁移测试验证的过程中,记录评估迁移的影响范围和风险,建立应对措施与回退方案
迁移完成后,数据源接入 influx-proxy,执行数据同步操作
2.2 InfluxDB实例测试准备
镜像ID
镜像
端口
实例名
2639ea8f8338
harbor.oneitfarm.com/cidata/influxdb:1.8.3-alpine
8086/8088
influx-1
0af90b775404
harbor.oneitfarm.com/cidata/influ ...
Influx-Proxy部署流程以及风险点分析
Influx-Proxy部署流程以及风险点分析1. 背景描述我们经过针对 influx-proxy为期近一周的代码审计工作,解决了 influx-proxy在审计工作中发现的:① influxdb的 measurement获取上出现获取到保留策略名的错误;②influx-proxy发现已存在的 data race 警告性错误。同时,为满足公司对于微服务治理的使用需求,我们在原来的基础上增加了 UDP 的写入方式,并优化了 UDP 的 写入,经过测试,在不考虑时间精度的条件下,Proxy的时序数据转发率达到 100%。
我们需要根据当前的修改后的 influx-proxy 去构建部署镜像,并在新Site中部署出来投入使用。
2. 风险点分析2.1 风险点
打包镜像基础命令不支持UDP缓冲区大小修改;
inlfux-proxy 挂载卷在多副本情况下的共享问题,不同的 pod 是否可以读取 不同的 pvc 目录;
pod 挂了之后,当前 pod 所对应的 挂载卷 是否可以对应到新的 pod
修改了当前镜像的 缓冲区大小后,是否需要修改物理机的缓冲区大小
2.2 风险点解决2.2.1 ...
influx-proxy无侵入式InfluxDB高可用方案测试
influx-proxy无侵入式InfluxDB高可用方案测试背景描述目前因公司微服务发展需要,构建基于 Influxdb 的监控体系。由于 Influxdb 官方提供的 集群模式为闭源收费版本,不足以满足前期的公司监控体系的发展需要。因此我们寻找到基于官方提供的 Influx-Play 的代理服务的二次开发版本 Influx-Proxy。Influx-Proxy提供了以下功能: 基于一致性 Hash 的自动分片,多环多写实现完成数据备份,数据重平衡机制,故障恢复机制以及数据同步的实现,满足我们目前的使用需求: 无侵入式Influxdb集群化,数据备份,故障恢复。
但是我们在对 Influx-Proxy 进行代码审计的过程中发现几个问题:
在根据 query 对 measurement 的解析过程中我们发现,获取到的 measurement 名 并不是 我们的 真是的表名,而是 我们 Influxdb 中针对 当前 库 设置的 Retention Policies 的名。这将导致我们所有的分片查找最后都在一个 Influxdb 实例上。
我们发现了多个地方的 Data Race。导 ...