All Posts

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的一些使用场景及原理分析。

Container Network

容器间通信可分为跨主机和同主机间的通信,同主机主要通过 docker 本身的默认 docker0 即可,跨主机通信则相对复杂一些。

Docker 原理

Namespace Cgroup UnionFS docker 的实现,主要依赖 linux 的 namespace、cgroup 和 unionFS 三种技术实现,达到容器的环境隔离、资源控制和镜像打包。

将网站部署在 Kubernetes 上

将自己的博客网站发布到自己的 Kubernetes 集群上。