Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Coredns 添加主机名解析,无法解析

Coredns 添加主机名解析,无法解析

作者头像
tanmx
发布于 2023-10-18 04:47:23
发布于 2023-10-18 04:47:23
7410
举报

在 coredns 的 configmap 添加了主机名解析

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

.:53 { errors health { lameduck 5s } ready kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure fallthrough in-addr.arpa ip6.arpa ttl 30 } hosts { 10.10.10.155 api-server01 #添加了这些 10.10.10.156 api-server02 10.10.10.157 api-server03 10.10.10.158 api-server04 10.10.10.159 api-server05 fallthrough } prometheus :9153 forward . /etc/resolv.conf { max_concurrent 1000 } cache 30 loop reload loadbalance }

通过 nodelocaldnscache 无法解析此主机名

1 2 3 4 5 6

nslookup api-server01 169.254.25.10 Server: 169.254.25.10 Address: 169.254.25.10#53 *** Can't find api-server01: No answer

通过 coredns 却是正常的

1 2 3 4 5 6 7

nslookup api-server01 11.253.0.3 Server: 11.253.0.3 Address: 11.253.0.3#53 Name: api-server01 Address: 10.10.10.155

原因分析:

查看 nodelocaldns 的 configmap 有如下部分

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Corefile: | cluster.local:53 { errors cache { success 9984 30 denial 9984 5 } reload loop bind 169.254.25.10 forward . 11.253.0.3 { force_tcp } prometheus :9253 health 169.254.25.10:9254 } …… .:53 { errors cache 30 reload loop bind 169.254.25.10 forward . /etc/resolv.conf prometheus :9253 }

可以看到符合 k8s cluster.local 格式的域名 forward 是 coredns ,而其他的域名 forward 是 /etc/resolv.conf (主机系统的 dns),所以是解析不到自己添加在 coredns 中的主机名的。

解决方法:修改其他域名的 forward 也走 coredns

1 2 3 4 5 6 7 8 9 10

.:53 { errors cache 30 reload loop bind 169.254.25.10 forward . 11.253.0.3 { force_tcp } prometheus :9253

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CoreDNS 自定义域名失效问题
前几天我们在解决 CoreDNS 的5秒超时问题的时候,使用了 NodeLocal DNSCache 来解决这个问题,集群 DNS 的解析性能也明显大幅提升了。但是今天确遇到一个很大的坑,我们在做 DevOps 实验的时候,相关的工具都使用的是自定义的域名,这个时候要互相访问的话就需要添加自定义的域名解析,我们可以通过给 Pod 添加 hostAlias 来解决,但是在使用 Jenkins 的 Kubernetes 插件的时候却不支持这个参数,需要使用 YAML 来自定义,比较麻烦,所以想着通过 CoreDNS 来添加 A 记录解决这个问题。
我是阳明
2020/06/15
3.3K0
kubernetes的dns
作为服务发现机制的基本功能,在集群内需要能够通过服务名对服务进行访问,那么就需要一个集群范围内的DNS服务来完成从服务名到ClusterIP的解析。
大发明家
2021/12/17
1.8K0
k8s 服务注册与发现(三)CoreDNS
作为一个加入 CNCF(Cloud Native Computing Foundation) 的服务 CoreDNS 的实现可以说的非常的简单。
看、未来
2022/09/27
2.2K0
k8s 服务注册与发现(三)CoreDNS
CoreDNS介绍
开始之前先吐槽一下busybox中的nslookup命令。这个命令应该是实现的不是很完全,导致我在测试DNS的成功,得到了错误的信息。先来看一下
大江小浪
2018/09/19
4.4K0
TKE之DNS解析
TKE集群中使用的DNS解析是采用coreDNS,Kubernetes 1.11 和更高版本中,CoreDNS 位于 GA 并且默认情况下与 kubeadm 一起安装
聂伟星
2020/06/27
16.1K0
第9课 Kubernetes之服务发现和域名解析过程分析
作为服务发现机制的基本功能,在集群内需要能够通过服务名对服务进行访问,这就需要一个集群范围内的DNS服务来完成从服务名到ClusterIP的解析。
辉哥
2021/11/24
1.9K0
第9课 Kubernetes之服务发现和域名解析过程分析
附011.Kubernetes-DNS及搭建
作为服务发现机制的基本功能,在集群内需要能够通过服务名对服务进行访问,因此需要一个集群范围内的DNS服务来完成从服务名到ClusterIP的解析。
木二
2019/12/10
8860
附011.Kubernetes-DNS及搭建
Kubernetes 服务发现之 coreDNS
服务发现是 K8s 的一项很重要的功能。K8s 的服务发现有两种方式,一种是将 svc 的 ClusterIP 以环境变量的方式注入到 pod 中;一种就是 DNS,从 1.13 版本开始,coreDNS 就取代了 kube dns 成为了内置的 DNS 服务器。这篇文章就来简单分析一下 coreDNS。
CS实验室
2021/03/22
4.2K0
Kubernetes 服务发现之 coreDNS
5 种解析容器内特定域名的小技巧
本篇文章中,我们将探讨如何在容器内指定特定域名解析结果的几种方式。为了方便演示,首先我们创建一个演示用的 Deployment 配置文件。
iMike
2024/05/11
2190
5 种解析容器内特定域名的小技巧
【K8s】Kubernetes 网络之 CoreDNS
CoreDNS 是一种使用 Golang 编写、由配置文件控制的插件式 DNS 服务器,自 Kubernetes 1.13 版本起,成为 Kubernetes 的默认 DNS 服务器,通常用于 Kubernetes 集群内部服务发现,允许应用程序之间直接、或通过 Service 对象名称互相访问。
行者Sun
2024/12/19
3510
【K8s】Kubernetes 网络之 CoreDNS
你所不了解的 coreDNS
CoreDNS 是一个 DNS 服务器。基于 Go 语言开发。由于其灵活性,可以在多种不同的环境中使用。CoreDNS 已在 Apache 2 许可证版本获得许可,并且完全开源。其已成为 Kubernetes 1.13 + 以后版本的默认 DNS 服务。如今,当我们使用托管 Kubernetes 集群或为应用程序工作负载自行管理集群时,通常只需要关注应用程序本身,而无须过多关注 Kubernetes 提供的服务或如何利用它们。DNS 解析是任何应用程序的基本要求,因此我们需要确保它正常工作。
Luga Lee
2021/11/23
1.3K0
你所不了解的 coreDNS
你所不了解的 coreDNS
本文的将不深入探讨 coreDNS,而是解释 DNS 如何在 Kubernetes 中工作,coreDNS 包含什么以及 Corefile 如何使用插件。
Luga Lee
2021/12/10
1.6K0
你所不了解的 coreDNS
coredns_coredns配置域名
网上的coredns.yaml文档都是粘贴复制的,不知所以然,授人以鱼不如授人以渔,官方coredns yaml文件下载地址:https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/coredns/coredns.yaml.base
全栈程序员站长
2022/11/01
1.2K0
kubernetes安装coreDNS,并配置自动扩展
Kubernetes是一种开源的容器编排平台,用于管理Docker容器的部署、扩展和管理。Kubernetes使用CoreDNS来提供DNS服务,它是一个高性能、轻量级的DNS服务器,可以支持自动扩展和故障恢复等功能。
堕落飞鸟
2023/04/01
2.7K0
CoreDNS 概述及运维实践
域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。
SRE运维进阶之路
2024/05/01
5630
CoreDNS 概述及运维实践
TKE/EKS集群如何配置上游的dns解析域名
使用k8s的时候,很多人会有一个这样的需求,不同的域名通过不同的dns服务器来进行解析,k8s中域名解析都是通过coredns来说实现的,要想实现上面的场景,我们只需要在coredns的配置里面给不同的域名配置好上游的dns即可。
聂伟星
2022/06/16
9.7K0
云原生 | 使用 CoreDNS 构建高性能、插件化的DNS服务器
在企业高可用DNS架构部署方案中我们使用的是传统老牌DNS软件Bind, 但是现在不少企业内部流行容器化部署,所以也可以将 Bind 替换为 CoreDNS ,由于 CoreDNS 是 Kubernetes 的一个重要组件,稳定性不必担心,于此同时还可将K8S集群SVC解析加入到企业内部的私有的CoreDNS中。
全栈工程师修炼指南
2023/10/31
3.5K0
云原生 | 使用 CoreDNS 构建高性能、插件化的DNS服务器
二进制部署k8s教程14 - 部署coredns
表示 coredns 能够访问外网,并且能够进行服务发现,能够访问其他服务。即正常工作。
janrs.com
2023/03/08
7052
TKE IPVS 模式集群使用 localdns 解决方案
TKE 对 NodeLocal DNS Cache 进行了产品化支持,直接在扩展组件里面就可以一键安装到集群,参考 NodeLocalDNSCache 扩展组件说明 ,可是仅仅支持 iptables 转发模式的集群,而目前大多集群都会使用 IPVS 转发模式,无法安装这个扩展组件。
imroc
2021/07/21
6180
在Kubernetes有效使用CoreDNS
作者:InfraCloud 技术领导、开源贡献者 Sanket Sudake。客座文章最初在InfraCloud 的博客[1]上发表。
CNCF
2021/07/07
9460
相关推荐
CoreDNS 自定义域名失效问题
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档