CoreDNS介绍

CoreDNS介绍本文介绍 CoreDNS 相关配置以及验证方法 实验环境为 Kubernetes1 11 搭建方法参考 kubeadm 安装 kubernetesV1 11 1 集群 busybox 的槽点开始之前先吐槽一下 busybox 中的 nslookup 命令 这个命令应该是实现的不是很完全 导致我在测试 DNS 的成功 得到了错误的信息 先来看一下 root devops 101 kubec

本文介绍 CoreDNS 相关配置以及验证方法,实验环境为 Kubernetes 1.11,搭建方法参考kubeadm安装kubernetes V1.11.1 集群

busybox 的槽点

开始之前先吐槽一下busybox中的nslookup命令。这个命令应该是实现的不是很完全,导致我在测试DNS的成功,得到了错误的信息。先来看一下

[root@devops-101 ~]# kubectl run busybox1 --rm -it --image=docker.io/busybox /bin/sh If you don't see a command prompt, try pressing enter. / # nslookup kubernetes.default Server: 172.17.0.10 Address: 172.17.0.10:53 server can't find kubernetes.default: NXDOMAIN * Can't find kubernetes.default: No answer

看起来像是DNS没有响应,慢着,使用带nslookup的alphine试一下。

[root@devops-101 ~]# kubectl run dig --rm -it --image=docker.io/azukiapp/dig /bin/sh If you don't see a command prompt, try pressing enter. / # dig @172.17.0.10 kubernetes.default.svc.cluster.local +noall +answer ; <<>> DiG 9.10.3-P3 <<>> @172.17.0.10 kubernetes.default.svc.cluster.local +noall +answer ; (1 server found) ;; global options: +cmd kubernetes.default.svc.cluster.local. 5 IN A 172.17.0.1 / # nslookup kubernetes.default Server: 172.17.0.10 Address: 172.17.0.10#53 Name: kubernetes.default.svc.cluster.local Address: 172.17.0.1 / # nslookup www.baidu.com Server: 172.17.0.10 Address: 172.17.0.10#53 Non-authoritative answer: www.baidu.com canonical name = www.a.shifen.com. Name: www.a.shifen.com Address: 220.181.112.244 Name: www.a.shifen.com Address: 220.181.111.188 / # nslookup kubernetes.default Server: 172.17.0.10 Address: 172.17.0.10#53 Name: kubernetes.default.svc.cluster.local Address: 172.17.0.1

好好的啊!就是这个原因,busybox坑了我好几天。

CoreDNS

CoreDNS在Kubernetes1.11版本已经做为GA功能释放,成为Kubernetes默认的DNS服务替代了Ku be-DNS,目前是kubeadm、kube-up、minikube和kops安装工具的默认选项。

Stubdomain and upstreamnameserver in kube-dns translates to the proxy in CoreDNS. The federation in kube-dns has an equivalent federation in CoreDNS.

配置文件

使用kubeadm安装CoreDNS,会使用ConfigMap做为配置文件。这份配置文件,会默认使用宿主机的DNS服务器地址。

[root@devops-101 ~]# kubectl -n kube-system get configmap coredns -oyaml apiVersion: v1 data: Corefile: | .:53 { errors health kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure upstream fallthrough in-addr.arpa ip6.arpa } prometheus :9153 proxy . /etc/resolv.conf cache 30 reload } kind: ConfigMap metadata: creationTimestamp: 2018-08-20T07:01:55Z name: coredns namespace: kube-system resourceVersion: "193" selfLink: /api/v1/namespaces/kube-system/configmaps/coredns uid: ec72baa4-a446-11e8-ac92-080027b7c4e9

检查COreDNS运行状况

检查Pod状态

[root@devops-101 ~]# kubectl -n kube-system get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE coredns-78fcdf6894-52gp9 1/1 Running 4 4h 172.16.0.11 devops-101 coredns-78fcdf6894-mkvqn 1/1 Running 4 4h 172.16.0.10 devops-101 etcd-devops-101 1/1 Running 4 3h 192.168.0.101 devops-101

检查部署

[root@devops-101 ~]# kubectl -n kube-system get deployments NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE coredns 2 2 2 2 4h

验证可以采用本文刚开始部分提到的方法。

转自:https://www.cnblogs.com/cocowool/p/kubernetes_coredns.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/208243.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午12:01
下一篇 2026年3月19日 下午12:01


相关推荐

  • intellij idea 2021激活码(最新序列号破解)

    intellij idea 2021激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    233
  • java命令行执行 jar_java命令打包jar

    java命令行执行 jar_java命令打包jar摘要这个技巧阐明了如何不直接处理清单文件而将一个不能运行jar包转换成一个可以执行的jar包。学会如何写一段转换jar包的程序,将你的jar包转换成你能使用java-jar命令运行jar包或象在windows系统上那样通过双击来运行jar包。你可以很容易地将一个应用的所有的类和资源打包到一个jar文件中去。事实上,这只是打包的一个原因。另一个原因是让用户很容易地执行包中的应用。那么在java的…

    2022年10月5日
    4
  • sql 左连接,内连接 的写法「建议收藏」

    左连接的含义:使用LEFTJOIN关键字,会从左表那里返回所有的行,即使在右表中没有匹配的行。1)左连接selecta.*,b.*fromtable1aleftjointable2bona.id=b.parent_id2)内连接selecta.*,b.*f…

    2022年4月13日
    46
  • vs安装本地nuget包(vs2015离线使用)

    今天想在项目中使用RestSharp,不过在nuget控制台中发现要么新版本不支持.net4.0,要么用老版本的下载不下来,最后没办法,在RestSharp网站上下载了离线安装包,怎样安装呢?方法之一,概括而言就是把安装包放在NuGet下载缓存目录下,下面就来打开目录:1.Tool-NuGetPackageManager-PackageManagerSettings2…

    2022年4月12日
    1.3K
  • jsplumb 绘制页面链接线

    jsplumb 绘制页面链接线最近公司打算实现通用的流程设计 对比之前公司有一套源码 发现它采用的是 FlowDesign 来实现的 但从晚上查找之后发现它实际上是采用了 jsplumb 来实现流程绘制的 这也不难理解 毕竟 jsplumb 是通用的程序 FlowDesign 只能算是 jsplumb 的具体使用 FlowDesign 的地址是 http flowdesign leipi org Jsplumb 官网 https

    2025年11月2日
    5
  • Scapy的介绍(一)「建议收藏」

    Scapy的介绍(一)「建议收藏」介绍关于Scapy的Scapy是一个Python程序,使用户能够发送,嗅探和剖析并伪造网络数据包。此功能允许构建可以探测,扫描或攻击网络的工具。换句话说,Scapy是一个功能强大的交互式数据包操作程序。它能够伪造或解码大量协议的数据包,通过线路发送,捕获它们,匹配请求和回复等等。Scapy可以轻松处理大多数经典任务,如扫描,跟踪路由,探测,单元测试,攻击或网络发现。它可以取代hping…

    2022年4月19日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号