手动部署CoreDNS
目录
概述
CoreDNS 虽然说是 Kubernetes 集群重要的组件,但实际上,CoreDNS 并非 Kubernetes 团队的官方组成部分,而是由 CoreOS 公司开发的。现在 kubeadm 非常方便了,创建集群自动就帮部署了 CoreDNS,那么如果需要手动部署,应该查看哪些资料,进行哪些操作呢,本文将详细进行讨论。
kubeadm
现在大家都非常熟悉 kubeadm 了,那么如果考虑如何部署 CoreDNS 的时候,我们可以先参考一下 kubeadm 是如果在创建集群的过程中把 CoreDNS 部署上的,下面参考的是 v1.30.4 的 kubeadm。 CoreDNS 作为 kubeadm 的 addon,在创建集群的时候会默认部署,在 kubeadm 的代码里,CoreDNS 的相关 Yaml 文件实际上是作为 manifest 根据 kubeadm 上下文的一些参数来渲染出来的。
- CoreDNSService
- CoreDNSDeployment
- CoreDNSConfigMap
- CoreDNSClusterRole
- CoreDNSClusterRoleBinding
- CoreDNSServiceAccount
看完 kubeadm 的实现之后,大家应该可以理解,安装 CoreDNS 并非太困难的事情,基本上也是创建几个资源就可以了。
官方方式
kubeadm 部署 CoreDNS 的实现跟大部分组件的部署类似,那么官方版本又是怎样的呢,我们来看看官方文档。而实际上,CoreDNS 官方现在是推荐使用 Helm Chart 的方式部署,可以查看官方Chart。
关于DNSIP
kubeadm 中是通过取第十位 IP 来确定 CoreDNS 使用的 ClusterIp 的。
|
|