Mr.Zhou

小风不再小啦

Harbor版本升级记录(v1.5.4 -> v1.8.0)

背景 原harbor版本:v1.5.4 待升级版本:v1.8.0 由于harbor从v1.6.0版本开始,后端数据库由MariaDB改为Postgresql,所以在升级过程中,必须先升级到v1.6.0版本,再升级至v1.8.0。 升级步骤 v1.5.4 -> v1.6.0 该步骤中,由于数据库变更,所以需对数据库进行迁移。另外在升级过程中会改变数据库文件(database s...

访问k8s服务连接失败问题排查

背景 & 问题 K8S部署了palo服务,在导数据时候频繁出现连接失败导问题,如下日志,在进行curl导入数据时,分别出现了如下3种异常: Connection timed out Connection refused No route to host # curl --location-trusted -u test:test -T table1_data h...

Git教程——如何在github上为开源项目提交PR?

背景 最近经常接触到几个开源项目,而且都已接入生产环境,在使用过程中发现了一些问题,觉得很有必要提出来,必要时对其进行调整,合并至原始项目。 而在合并过程中,自然涉及到了如何使用git进行代码合并,初次使用会遇到一些问题,这边在填完坑后,总结了下pr的完整流程,以供参考。 我们大部分的操作是在命令行下进行的,有些朋友可能会使用ide中集成的git插件进行pr,其实原理基本都是一样的,理...

gohangout运行情况阶段汇总

背景 自gohangout部署至生产环境,到今天已经过去了半个月时间了,期间运行的情况如何?遇到了些什么问题?在这边做个简单的小结。 运行情况 进程意外中断 遇到gohangout进程意外中断问题,后确定是gohangout程序版本的问题。自行pull最新代码并build后再无类似问题出现,进程已稳定运行2周无任何异常。 panic: close of closed channel...

gohangout从测试到线上部署

背景 我司日志系统采用业界普遍的ELK架构,采用Logstash作为Kafka与Elasticsearch间的中间件(以下简称:logstash-indexer),主要用于对原日志的加工处理,包括了日志字段的增、删、改,以及最重要的分割操作。 但随着使用量的增加,我们愈加发现logstash-indexer在高并发下的性能瓶颈,到了晚高峰时期ES特别容易出现索引延迟现象,排查后发现其...

Kibana4后台数据丢失后恢复

背景 某机房老es集群下线,移除所有数据节点,保留1台master node服务器,原因是老es集群kibana4上仍保留有所有产线elk查询流量入口,暂时还不能下线。 问题 老es集群data node下线后,kibana4首页无法打开,浏览器f12显示链接出现503: 登录kibana服务所在机器,发现kibana进程未开启,手工后台开启后,5601端口仍然未出现,直到前台...

ES Data Node宕机后索引分片重平衡操作记录

背景 & 问题 因某机房部署了新的es集群,老es集群服务器计划全部下架处理。 3月5日晚6点左右,首先从开始关闭es服务进程开始,关闭过程中意外将新es集群中某data node节点(下称节点a)的es进程关闭,随即导致新es集群集群状态发生变化: 节点a被剔除新es集群,原先分布在该数据节点上的分片数据全部丢失; 其他各data node根据分片属性,进行自调整,...

GRE隧道跨网段网络限制问题排查

背景 由于历史原因,某台服务器托管在北京机房,北京机房与我司核心机房(内网)没有专线连接,需要通过单独部署gre隧道的方式与内网进行互联互通,托管服务器与内网互通需要经过中转服务器中转。 为采集托管服务器上的程序日志,需要日志通过gre隧道传到内网的某台kafka服务器,简化后的拓扑逻辑如下所示: 问题 内网的kafka服务器(原ip: 1.1.50.86)需要进行迁移,迁移后i...

pycurl错误导致yum失败

yum失败问题处理记录

背景 测试环境某台服务器salt不通,尝试登录服务器手工启动salt-minion,后发现salt-minion程序未安装,于是开始安装salt-minion,但发现安装过程中出现异常。 问题 & 缓解 urlgrabber 首次yum安装,提示ImportError: No module named urlgrabber.grabber,这步比较好解决,pip直接安装模块即...

iptables forward drop策略导致k8s网络异常

k8s网络转发失败故障排查记录

问题 新部署的k8s集群存在一个问题,部署完服务后,外部访问有时能访问,有时不能访问。经手工排查后,发现在访问容器内服务时,只能访问创建在本机pod内容器的服务,跨node节点访问srv都会失败。 看表象似乎是calico网络通信的问题,但奇怪的是跨node节点间ping cluster ip都是通的,又尝试网络抓包定位问题,node节点数据报文发出后,无数据包返回。 在排除了操作系统...