自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学点程序

欢迎关注学点程序公众号:learnprogram

  • 博客(20)
  • 收藏
  • 关注

原创 如何在K8S中创建一个自定义Controller?

目的CRD资源定义代码生成Controller编写目的Custom Resource是扩展Kubernetes的一种方式(另外一种就是通过聚合层API apiserver-aggrega...

2020-05-18 22:13:00 1071 2

原创 分析kubernetes中的事件机制

我们通过 kubectl describe [资源] 命令,可以在看到Event输出,并且经常依赖event进行问题定位,从event中可以分析整个POD的运行轨迹,为服务的客观测性提供数据来源,由此可见,event在Kubernetes中起着举足轻重的作用。event并不只是kubelet中都有的,关于event的操作被封装在client-go/tools/record包,我们完全可以在写入...

2020-03-05 11:13:53 856

原创 xfsquota:一个便捷的管理xfs磁盘配额的命令行工具

源码地址:https://github.com/silenceper/xfsquota动机在Linux有一个xfs_quota(在xfsprogs工具包下)命令行工具,为什么还用golang实现了?最近要实现磁盘quota的控制,同时觉得看了docker内的源码,都是利用cgo的方式来实现的,如果直接用xfs_quota的方式查看配额,无法直观的看到某一个目录下的配额,只...

2022-04-23 23:14:36 607

原创 emptyDir 通过xfs_quota强制限制大小

emptyDir支持三种类型的,通过设置 medium 字段 :文件:默认情况Memory:占用内存资源HugePagessizeLimit默认行为同时支持通过sizeLimit设置限制...

2021-10-30 23:23:35 780

原创 Kubernetes CSI(二):如何编写一个CSI插件

这里以csi-driver-host-path作为例子,来看看是如何实现一个csi插件的?目标:支持PV动态创建,并且能够挂载在POD中volume来自本地目录,主要是模拟volume产...

2020-11-26 12:49:26 1025

原创 Kubernetes CSI(一):介绍

容器存储接口(CSI)是用于将任意块和文件存储系统暴露给诸如Kubernetes之类的容器编排系统(CO)上的容器化工作负载的标准。使用CSI的第三方存储提供商可以编写和部署在Kuber...

2020-11-22 12:10:29 7113 3

原创 源码分析:KEDA内部是如何工作的?

文章中源码是基于KEDA 2.0( 50bec80)来进行分析keda 2.0 安装要求k8s集群版本 >=1.16KEDA 在2020年11月4号release了2.0版本,包含...

2020-11-11 21:01:00 700

原创 使用keda完成基于事件的弹性伸缩

文章中使用的是keda 1.5版本,2.0目前是beta版本。1.5版本支持deployment,job两种资源。而在2.0增加了StatefulSet以及自定义资源keda 是一个支持...

2020-09-14 15:05:27 1173 1

原创 将镜像tar包通过API直接push到registry仓库

为了实现docker tar包能够直接通过页面上传,调研了一下registry的api,以及如何解析tar包(其实就是docker daemon程序实现的部分)。要想实现,首先要了解do...

2020-07-10 23:29:13 1722 4

原创 在x86_64机器上构建arm64镜像

有几种办法可以打包出arm64的镜像直接在arm机器上执行编译和打包通过qemu模拟arm环境利用docker提供的buildx(需要启用试验性特性)我没有arm的机器~,所以我主要试了...

2020-06-05 21:42:08 4429 1

原创 用vim保存文件和echo命令到底有什么不同?

现象最近在调试一个filebeat程序时需要制造一些log,我是直接使用vim直接对文件打开然后直接保存的。但是有个奇怪的现象:每次写入一行新的日志,filebeat都会将整个文件的内容...

2020-05-13 23:56:06 794

原创 postgres入门

最近需要将mysql数据库切换到pg数据库,所以对pg进行基本学习了下,总体感觉相差不大,在一些细节以及需要上可能需要注意。安装我这里是以docker的方式来进行安装的。这种安装方式只能...

2020-05-05 15:05:49 152

原创 记一次问题排查:为什么在POD无法通过Service访问自己?

问题现象创建一个nginx pod,并配置了service访问,service后端指向pod。进入pod中使用service ip 或者service 域名,无法访问。一开始以为是环境配...

2020-04-30 19:00:00 2151

原创 推荐一个Go包:singleflight使用以及原理

singleflight 包主要是用来做并发控制,整个包的核心代码不到100行,充分利用到了map和WaitGroup的特性。常见的场景比如防止 缓存击穿 ,我们可以...

2020-03-08 19:50:50 2991 1

原创 利用Kubernetes中的leaderelection实现组件高可用

在Kubernetes中,通常kube-schduler和kube-controller-manager都是多副本进行部署的来保证高可用,而真正在工作的实例其实只有一个。这里就利用到 leaderelection的选主机制,保证leader是处于工作状态,并且在leader挂掉之后,从其他节点选取新的leader保证组件正常工作。不单单只是k8s中的这两个组件用到,在其他服务中也可以看到这个包...

2020-02-16 20:35:39 1014

原创 利用Kubernetes中的leaderelection实现组件高可用

在Kubernetes中,通常kube-schduler和kube-controller-manager都是多副本进行部署的来保证高可用,而真正在工作的实例其实只有一个。这里就利用到 leaderelection的选主机制,保证leader是处于工作状态,并且在leader挂掉之后,从其他节点选取新的leader保证组件正常工作。不单单只是k8s中的这两个组件用到,在其他服务中也可以看到这个包...

2020-02-15 22:06:22 834

原创 Go的http包中默认路由匹配规则

一、执行流程首先我们构建一个简单http server:package mainimport ( "log" "net/http")func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("hello wor...

2020-01-22 11:07:18 2604

原创 介绍一款Go项目热编译工具-gowatch

使用场景在golang项目编写过程中,需要对项目不断的进行构建go build并调试以快速发现问题,而我们每次进行手动的进行go build又太重复,所以写了这么一个工具gowatch来实时的监听文件的改动并编译。快速入门安装使用go get github.com/silenceper/gowatch安装完成之后,在main包目录下执行gowatch命令:高级用法支持的命令行参...

2020-01-13 12:36:07 631

原创 介绍一款Go项目热编译工具-gowatch

使用场景在golang项目编写过程中,需要对项目不断的进行构建go build并调试以快速发现问题,而我们每次进行手动的进行go build又太重复,所以写了这么一个工具gowatch来实时的监听文件的改动并编译。快速入门安装使用go get github.com/silenceper/gowatch安装完成之后,在main包目录下执行gowatch命令:高级用法支持的命令行参...

2020-01-13 12:32:18 631

原创 如何在Go项目中输出版本信息?

我们经常在使用CLI工具的时候,都会有这样的参数输出:➜ ~ docker versionClient: Docker Engine - Community Version: 18.09.2 API version: 1.39 Go version: go1.10.8 Git commit: 6247962 Built: ...

2020-01-09 21:33:49 1275

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除