CoreDNS系列:KubeDNS 架构组成及实现原理

CoreDNS系列:KubeDNS 架构组成及实现原理

KubeDNS简述

KubeDNS,是K8S官方推荐的DNS解析组件之一,从 K8S 1.11 开始,K8S 已经使用 CoreDNS,替换 KubeDNS 来充当其 DNS 解析的重任。

KubeDNS的前身,是 skyDNS,这个组件,会把 DNS 的解析记录等数据,存储到 K8S 所使用的 etcd 集群中,我们这里不讨论这个,仅讨论现今的 KubeDNS,KubeDNS,并不把 DNS 的解析规则存储到 etcd,而是放到进程的内存中,当 KubeDNS 的服务 POD 重启后,会重建一遍 DNS 规则到内存。

在前篇,我们已经了解了 K8S 中,DNS 解析的原理,本篇,我们侧重 KubeDNS 本身。包含下面几个点:

  1. KubeDNS 服务,包含了哪些组件,职责是什么?
  2. KubeDNS 是如何区分 K8S 内部域名还是外部域名的?
  3. KubeDNS 如何配置上游DNS服务器?
  4. KubeDNS 如何配置自定义域名解析?
  5. KubeDNS 解析 K8S 内部域名的的实现原理是什么?
  6. KubeDNS 如何做弹性扩缩容?

KubeDNS组件构成

在 K8S 中,KubeDNS 的实例是 POD,配置一个 KubeDNS 的 Service,对 KubeDNS 的 POD 进行匹配。在 K8S 的 其

你可能感兴趣的:(架构,kubernetes,运维)