Chris's Blog

Chris's Blog

Do more, expect less.

Kubernetes in Action - Pod Liveness探针使用
Kubernetes in Action - Pod Liveness探针使用一、 使用存活探针的必要性在K8S集群中,只要将Pod 调度到某个节点,该节点上的Kubelet就会运行Pod的容器,之后只要该Pod还存在,就会保持运行。 如果Pod中容器的主进程挂掉, Kubelet将自动重启容器。如果应用中存在Bug,导致主进程每隔一段时间就会崩溃一次,那么K8S每次都能重启应用重启,而应用程序本身不需要进行任何干预,这是K8S为运行在集群中的应用提供的自我修复能力。 但是,在一些特殊情况下,容器主进程没有崩溃,但应用已无法正常对外提供服务。比如,发生内存泄露的Java应用程序开始抛出O...
在CI中使用Docker-in-Docker
在CI中使用Docker-in-Docker  现在很多人喜欢使用Docker-in-Dokcer的方式去运行CI(e.g. 通过Jenkins),这样做看起来很便捷,但是同时也会带来许多问题。本文一起来探讨Docker-in-Docker可能带来的问题,以及避免这些问题的解决方案。 Docker-in-Docker存在的主要问题 安全问题  在启动容器时,内部的Docker应用的安全配置文件可能会与外部Docker冲突或混淆,从而造成未知的安全问题。 存储驱动程序的问题  在使用Docker-in-Docker时,外部Do...
记录一次Ubuntu系统无法正常启动故障处理
记录一次Ubuntu系统无法正常启动故障处理问题背景  公司的服务基本上都跑在阿里云的ECS上,公司自建的网络机房中只有少数几台物理服务器是供平时测试和人工智能小组跑算法训练用的。上边跑的服务一直都很稳定,没怎么到机房管过这几台机器,平时都是ssh过去处理一些问题。  结果今天上午的时候,人工智能组的算法大佬突然跑过来跟我说,他们跑模型用的一台高性能服务器(OS:Ubuntu14.0;Kernel:4.4.0)手动重启后,一直无法远程连接。(GPU服务器,大佬们更新一些显卡驱动之类的经常需要reboot之后生效)我快速ssh和ping了下,发现确实...
Git版本控制(一)
Git版本控制(一)为什么要写这个系列? 作为一个IT从业者,无论是开发还是运维,熟练使用版本控制应该算是一项基本技能。而Git又是目前最流行的一款版本控制工具,所以对Git进行深入且系统的学习是非常有必要的。据我日常使用经验和观察来看,可能大部分人使用Git应该还停留在pull、push、add、commit等一些基础操作层面。(包括我自己- -)我之前琐碎的整理过一些Git的笔记,但是不够系统,这次想写几篇博客系统的整理和学习下Git的一些高级用法。方便自己日后回看的同时希望能够帮到有同样需求的人。原理和概念性的东西我就不多介绍了,很多大佬写的比我通俗易懂,我还是多写写实际使用相关的...
K8S使用Spring Boot Actuator健康检查
K8S使用Spring Boot Actuator健康检查公司之前的集群一直用的是阿里云容器服务Swarm版。但是之前阿里云发公告称19年12月31日之后,将停止维护swarm集群,并下线控制台,开始主推K8S集群。我们也开始逐步将服务迁移至K8S集群,在K8S中使用Spring Boot Actuator健康检查时出现了一些小问题,在此记录一下。 K8S的健康检查机制K8S提供两类探针,可以对POD的健康状态进行检查 K8S使用Spring Boot Actuator健康检查用于判断容器是否存活,即Pod是否为running状态,如果LivenessProbe探针探测到容器不健康,则...
Docker迁移镜像数据
Docker迁移镜像数据需求:公司机房的一台物理服务器需要新加了一块2TB的SSD作为数据盘,老大要求把Docker相关数据迁移到这块新加的SSD上。 环境介绍系统:Ubuntu 14.04.5 LTSDocker版本: 18.06.0-ce 处理过程(1) 服务器拆机,硬盘安装过程就略过了。不过有一点需要注意的是,操作物理机硬件,最好熟悉服务器型号,买好相应配件。因为买这台机器的同事之前已经离职了,没人知道这台服务器内部构造,结果第一次拆开之后发现,没有多余的硬盘电源线,有没有硬盘支架,杯具了。后来有单独买了配件,再次进行了拆机安装。 (2) 新硬盘分区格式化。这块硬盘是2TB...
用控制变量法排查故障
用控制变量法排除故障问题描述我们公司的合作伙伴提供了一个ftp地址,供开发人员下载相关对接数据。有一天开发同事突然联系我告知连接对方ftp时报There are too many connections from your internet address.(连接数过多)的错误。无法正常下载、回传数据。 处理过程 第一时间想到合作伙伴那边可能做可客户端连接数限制,询问了我们的开发同事,反馈只有一人在连接,不存在并发多人。我测试了链路发现没有问题,询问了合作公司的技术,对方表示,没有对ftp连接数做限制。 在阿里云vpc的出口服务器上,用tcpdump抓包目的地址为对方ftp服务的ip,并...
avatar
Chris
Freedom
FRIENDS