CoreDNS和NodeLocalDNS的域名解析

在 K8s 中,DNS 的解析主要用这两个工具:

  1. CoreDNS: 主要负责集群内部域名解析
  2. NodeLocalDNS: 提供 DNS 缓存
Read more

kube-proxy工作原理

kube-proxy 以 DaemonSet 的形式运行在集群的所有节点中,负责管理集群外到 Service,以及 Service 到 Pod 的流量转发。

kube-proxy 有三种模式:

  1. userspace
  2. iptables
  3. ipvs
Read more

CNI工作流程

CNI 即容器网络接口,通过 CNI 能够使 K8s 支持不同的网络模式。

CNI 常见的实现模式大致分为两种:

  1. overlay: 通过隧道打通网络,不依赖底层网络,如 calico
  2. underlay: 通过底层打通网络,强依赖底层网络,如 macvlan
Read more

CSI工作流程

CSI 即容器存储接口,借助 CSI 就可以很容易的给工作负载提供存储使用。K8s 的存储插件又分为 in-tree 和 out-of-tree 两种类型,前者是与 K8s 主库共同迭代维护,后者则是独立维护的存储插件。

Read more

etcd leader选举

etcd 是基于 raft 算法进行选举,而 raft 是一种管理日志一致性的协议,将系统中的角色分为三个

  1. leader: 接受客户端的请求,并向 follower 发送同步请求日志
  2. follower: 接收 leader 同步的日志
  3. candidate: 候选者角色,在选举过程中发挥作用
Read more