All Posts

Kubelet-1 Kubelet 会做些什么

Kubelet 是 Kubernetes 集群中非常重要的组件,起在集群中的每个几点上,具体 Kubelet 会做那些事情,可以通过 Kubelet 的源码找到答案。

The Go Memory Model

[译]https://golang.google.cn/ref/mem Go内存模型指定了一个条件,在该条件下,可以保证在一个 goroutine 中读取变量,能够获取到另一个不同 goroutine 写入同一变量产生的值。

Golang Data Race Detector

[译] https://golang.google.cn/doc/articles/race_detector.html golang 中的几种 Data Race 场景及 Data Race 检测工具。

Deploy Mysql on Kubernetes

本文通过 mysql-operator 在kubernetes集群部署高可用的mysql statefulset。

Sample Controller

自己构建 sample-controller.

Building an Operator for Kubernetes With the Sample Controller

An Operator is an application-specific controller that extends the Kubernetes API to create, configure, and manage instances of complex stateful applications on behalf of a Kubernetes user. Operator 是一个特定的应用程序的控制器,通过扩展 Kubernetes API 以代表 Kubernetes 用户创建,配置和管理复杂有状态应用程序的实例。 Operator 是一种软件,它结合了特定的领域知识并通过 CRD(Custom Resource Definition ) 机制扩展了Kubernetes API,使用户像管理 Kubernetes 的内置资源一样创建,配置和管理应用程序。Operator 管理整个集群中的多个实例,而不仅仅管理应用程序的单个实例。

Golang Mutex

golang 的sync包中有两种锁,互斥锁sync.Mutex 和读写锁sync.RWMutex。

Kube Scheduler 源码阅读

k8s kube-scheduler 源码阅读笔记

Controller Manager 源码阅读

k8s controller-manager 源码阅读笔记

Awesome Post Collection 2

goroutine 调度器。 Golang for range性能分析及优化。 一致性哈希算法。 ETCD的一些使用场景及原理分析。