K8S服务发现(kube-dns) : CoreDNS

2023-05-16

K8S中,Pod如果想也另外一个Pod通信,通常不会直接基础此Pod的IP(动态的),也不会记住此Pod形成的Service的IP(相对比较稳定,但也是动态的), 因为IP不好记,通常情况是通过其对应的Service名字来访问的。那么就需要一个服务,能够把Service的名字翻译为IP,此服务就是kube-dns。

目前K8S的kube-dns通常使用 CoreDNS, 运行在Master Node上。CoreDNS解析所有的Service的名字到期Service IP。CoreDNS本身有一个ClusterIP的Service,其后有多个Backend的pod。如下图:

kubedns service discovery

1、kubernetes的 Service Name被解析成其ClusterIP(是服务网络中的IP,是内部的,不是Node的外部地址)。
2、每个K8s网络在安装的时候指定一个Cluster Domain, 默认是:cluster.local
3、K8S中每个namespace对应一个子域

例如,默认的container的 /etc/resolv.conf:

# cat /etc/resolv.conf`
nameserver <kube-dns ClusterIP>`
search <namespace>.svc.<cluster_domain> svc.<cluster_domain> <cluster_domain> <additional ...>`
options ndots:``5`

如果搜索一个服务名字,例如account-service, 会自动带上.svc.<cluster_domain>, 这样就会默认搜索和自己再同一个namespace里面的服务名字。 如果你知道你的服务在不同的namespace里面,就可以加上namespace,例如搜索 account-service.prod,会搜索prod下的account-service.
kubedns with namespace

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

K8S服务发现(kube-dns) : CoreDNS 的相关文章

  • 满足我需求的强制门户

    我正在为我的组织寻找强制门户 我看到很多这样的应用程序将允许用户在 a 输入凭据或 b 付款后通过 我正在寻找的东西有点不同 让我介绍一些有关我的系统的基础知识 我正在使用活动目录和内部 DNS 运行基于 Windows 的网络 我有一个内
  • 如何知道CoreDNS在kubernetes pod中生效[重复]

    这个问题在这里已经有答案了 我正在部署 coredns 在 node 01 中运行 kind Deployment apiVersion extensions v1beta1 metadata name coredns namespace
  • 将 MVC 站点上传到服务器

    我已经使用 C 构建了一个 NET MVC4 网站 现在我想将其上传到互联网 我从未上传过任何网站 所以我真的不知道我需要做什么步骤 使用什么样的服务器有关系吗 因为当我通过VS2012运行网站时 我可以看到它运行在IIS Express上
  • 没有 ID 字段或具有部分 NULL 复合字段的 Grails 域类

    根据对上一个问题的回答 此处回答 Grails 中的 SQL 数据库视图 https stackoverflow com questions 425294 sql database views in grails 427691 我尝试使用域
  • 如何确定c#中的dns变化?

    我想监控dns地址的变化 所以我需要跟踪 dns 更改 我现在正在用线程来做 我获取 dns 并将其保存为文件 然后每 10 秒比较一次它们 但我需要更具体的解决方案 例如 有相关活动吗 这是代码 GetDns public List
  • 如何使用相同的 TXT 和 CNAME 为 Mailgun 配置 DNS?

    Mailgun 告诉我要设置一个TXT记录为mg mydomain com值为v spf1 plus a CNAME记录为email mg mydomain com有价值mailgun org 我这样做了 mailgun 验证了我的域名没有
  • dig (DNS Lookup) 指定 Windows 上的 DNS 服务器

    在Linux中 我会使用dig使用以下命令指定 DNS 服务器 127 0 0 1 dig google com 127 0 0 1 我安装了 Windows 的绑定工具 choco install bind toolsonly 我怎样才能
  • 如何在 python 中获取域名的 DNS 记录?

    如何在 python 中获取区域的 DNS 记录 我正在寻找类似于输出的数据dig 一个简单的例子来自https c0deman wordpress com 2014 06 17 find nameservers of domain nam
  • file_get_contents(): php_network_getaddresses: getaddrinfo 失败

    我正在尝试使用 cron 作业将一些值从一台服务器更新到另一台服务器 我使用 file get contents 奇怪的是 这偶尔会失败 一分钟还可以 一分钟就不行了 我收到这两个错误 PHP 警告 file get contents ph
  • 创建本地自定义主机名而不是 localhost?

    目前 我的 Flask 应用程序在本地运行 http localhost 5000 some page http localhost 5000 some page 如何为我的应用程序创建本地自定义位置 例如 http myappname s
  • 非常简单的DNS服务器

    我有一台 Linux 服务器 有一个临时无线网络供客户端连接 连接后 我希望用户始终被重定向到它自己的 Web 服务器 无论他们输入什么 URL 最大的解决方案是设置一个完整的 DNS 服务器 使用 BIND 或等效服务器 但这似乎有点过头
  • SSL 握手挂起

    我在论坛上看到过这个问题 但找不到任何合适的解决方案 此外 所有这些问题都缺少一些信息 所以我想把我学到的所有东西放在这里 连接点 我正在使用 SSL TLSopenfire具有2路身份验证 获得自签名通配符证书 这意味着我在客户端和服务器
  • 告诉 urllib2 使用自定义 DNS

    我想告诉urllib2 urlopen or a 定制开瓶器 使用127 0 0 1 or 1 来解析地址 我不会改变我的 etc resolv conf 然而 一种可能的解决方案是使用类似的工具dnspython查询地址和httplib构
  • 相同视图和浏览器版本中不同的 IE XML/XSL 行为,但使用不同的域用户帐户

    我们的一位用户在尝试访问我们的 Web 应用程序视图之一时遇到问题 IE9 行为在 6 8 和 9 中显得一致 但在域帐户之间不一致 对于该特定用户的 Windows 域帐户 无论使用哪些凭据来访问我们的应用程序 或者使用哪台机器的浏览器
  • 如何在 Windows 中拦截 DNS 查询

    我正在研究如何在 Windows 中拦截 DNS 查询 以一种不需要将 DLL 注入到每个进程中的方式 并且理想情况下能够根据发出查询的进程做出决策 因此简单的 DNS 代理服务器是不够的 从表面上看 DNS 查询所采用的路径如下所示 某些
  • Mono 的 DNS 刷新超时

    虽然目前Mono项目的ServicePointManager类有DnsRefreshTimeout属性启用到其接口中 相关属性未实现 调用示例 ServicePointManager DnsRefreshTimeout 10 60 1000
  • 如何让 Docker 容器访问主机上的 dnsmasq 本地 DNS 解析器?

    Docker 容器可能会通过多种方式对 DNS 设置感到困惑 只需在 SO 或更广泛的互联网上搜索 Docker DNS 即可了解我的意思 建议的常见解决方法之一是 将 dnsmasq 设置为主机系统上的本地 DNS 解析器 将其绑定到do
  • Java 无法从 AIX 解析 DNS 地址:UnknownHostException

    我遇到了这个奇怪的错误 在 AIX 上 如果我可以从命令行访问我的服务器 使用 ping telnet 但是如果我尝试使用 java 我会遇到 UnknownHostException 这是因为 Java 无法以某种方式 使用 DNS 但我
  • 查询 dns 别名

    我找到了一些code http msdn microsoft com en us library system net dns gethostbyaddress VS 71 aspx来自 msdn 站点 下面包含代码 看起来它将返回给定服务
  • Amazon S3:静态网站:自定义域或子域

    Amazon com 刚刚宣布可以在 S3 存储桶中托管静态网站 我访问了他们的设置页面http docs amazonwebservices com AmazonS3 latest dev index html WebsiteHostin

随机推荐

  • Windows Nodejs多版本使用

    一 遇到的问题 不同的项目使用的node版本不一致 xff0c 导致使用的时候 xff0c 安装依赖的时候冲突了 xff0c 从网上找了很多的方案 xff0c 解决起来也挺费劲的 xff1b 问题 xff1a 当一个项目使用低版本的时候 x
  • linux 自平衡AVL树

    简介 仔细观察BST会发现 xff0c 虽然它有良好的 搜索 特性 xff0c 也就是可以利用其节点之前的大小关系 xff0c 很容易地从根节点开始往下走找到我们所要的节点 xff0c 但它无法保证这种搜索所需要的时间长短 xff0c 因为
  • C++职业发展路线

    一 C 43 43 服务器程序员 xff08 流媒体后台 xff0c 游戏后台 xff0c 高性能服务器后台 xff09 精通C 43 43 xff0c STL xff0c Linux等 xff0c 熟悉设计模式 xff1b 熟练掌握一门脚
  • Apache CXF文件目录结构及需要jar包

    原文地址 xff1a http blog 163 com a13151055695 64 126 blog static 112087074201143014443273 文件目录结构及相关文件的详细说明 xff1a bin xff08 目
  • 浅析SAX,DOM,JAXP,JDOM与DOM4J之间的关系

    众所周知 xff0c SAX与DOM是JAVA中两大核心XML解析API类库 xff0c 而JAXP JDOM与DOM4J都是基于这两大核心API而衍生出来的 今日兴起看了看相关资料 xff0c 在这里总结总结 SAX与DOM 首先需要说明
  • StAX-基于流的拉式XML解析

    最近在学习webservice时 xff0c 发现很多框架 xff0c 技术都在使用StAX作为底层XML解析工具 xff0c 于是今天看了看资料 xff0c 简单学习了下 xff0c 在这里做个总结 简介 StAX xff0c 全称 St
  • 那些支持我学习与工作的良师益友

    2011大学毕业后 xff0c 成为一名JAVA开发人员从事开发工作只有区区3年不到的时间 回想高中时 xff0c 学校计算机课开设Flash课程 xff0c 第一次接触Flash的我 xff0c 便对计算机技术产生了浓厚的兴趣 xff0c
  • Apache HttpClient4.2入门

    介绍 HttpClient 是 Apache Jakarta Common 下的子项目 xff0c 用来提供高效的 最新的 功能丰富的支持 HTTP 协议的客户端编程工具包 xff0c 并且它支持 HTTP 协议最新的版本和建议 HttpC
  • JMX “javax.management.NotCompliantMBeanException” 异常解决

    原文章 xff1a http lovespss blog 51cto com 1907593 616403 昨天同事在JBoss中部署MBean时一直报错 xff1a Caused by javax management NotCompli
  • webservice-WSDL结构与各元素解析

    承接上一遍webservice初识 xff0c 这篇文章将着重于WSDL wsdl协议说明http www w3 org TR wsdl 结构 现在开始说说wsdl的结构以及各个元素的意义 从下面这张图可以看出wsdl中各元素是存在嵌套的关
  • alsa amixer 使用介绍

    alsa utils 提供的工具中 xff0c arecord 可以用来录音 xff0c aplay 可以用来播放 xff0c amixer 可以用来控制音量 增益等 amixer controls numid 61 34 iface 61
  • C# 自定义控件制作和使用实例

    C 自定义用户控件 xiongxuanwen 上篇 xff1a 控件制作 本例是制作一个简单的自定义控件 xff0c 然后用一个简单的测试程序 xff0c 对于初学者来说 xff0c 本例子比较简单 xff0c 只能起到抛石引玉的效果 我也
  • 二叉树搜索性能比较

    二叉树搜索性能分析 我想测试一下不同类型的二叉树搜索数据的性能是什么样的 众所周知 xff0c 二叉树有以下几种类型 xff1a BSTAVL红黑树 对于搜索数据 xff0c 具体来讲 xff0c 当树保持平衡时 xff0c 其搜索时间复杂
  • Kubernetes系统架构

    控制单元 xff1a kube apiserver xff1a 所有客户端通过kube apiserver访问cluster中的各种服务 xff0c 资源以及应用 etcd xff1a 键值对数据库 xff0c 存放所有的集群数据 kube
  • Kubernetes的网络模型(K8S集群中的三个网络)

    一个K8S的集群中至少有三个网络 xff1a 1 集群节点所在的网络 xff0c 这个网络就是你的主机所在的网络 xff0c 通常情况下是你的网络基础设施提供 如果你的node处于不同的网段 xff0c 那么你需要保证路由可达 如上图中的
  • K8S中的容器(Container)之间的网络接口

    Kubernetes集群中当一个容器启动时 xff0c 容器里面会启动一个以太网络接口 xff08 eth0 xff0c 分配的是Pod网络所用的IP地址 xff0c 通过一个虚拟以太网对 xff08 veth pair xff0c 连接到
  • K8S中Pod之间互相访问,外部访问如何访问Pod的网络连接原理

    Pod中的Container启动时 xff0c 会分配一个Pod网段中的IP地址 xff08 network cidr xff09 xff0c 但是这个IP地址是浮动的 xff08 ephemeral xff09 xff0c Pod重启 x
  • kubectl proxy 是什么

    大家都知道 xff0c 在K8S集群中的业务从外部默认是不能访问的 xff0c 正式环境中 xff0c 我们需要通过service xff0c 然后通过Node的ip地址和Loadbanlencer来访问 但是还有一些简单的方式 xff0c
  • kubectl port-forward命令访问集群中业务

    使用kubectl proxy可以访问Pod中的业务 xff0c 但是URL要加上namespace xff0c service等 xff0c 比较长 kubectl还提供了一个功能 xff0c 就是kubectl port forward
  • K8S服务发现(kube-dns) : CoreDNS

    K8S中 xff0c Pod如果想也另外一个Pod通信 xff0c 通常不会直接基础此Pod的IP xff08 动态的 xff09 xff0c 也不会记住此Pod形成的Service的IP xff08 相对比较稳定 xff0c 但也是动态的