前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何确定Pod的内网域名

如何确定Pod的内网域名

作者头像
烟雨平生
发布2023-03-07 13:53:49
1.7K0
发布2023-03-07 13:53:49
举报

内网域名解析

内网域名解析,顾名思义是通过内网的DNS服务器在局域网内做域名解析。

内网域名解析的好处:

1、较高的性能和较低的延迟;

2、能够有效地防范外部攻击,解决劫持问题。

原因也很简单,就是数据包在网络设备上传输的路径短了。 另外内网的网络质量是可控的,大多数情况下都比外网好些,即使不好也很容易换个比较好的设备来解决。

如何确定K8s应用的内网域名

K8s应用的内网域名是由K8s集群内部的域名解析服务来进行解析的,整个过程都在K8s集群内。

K8s集群内是使用全限定域名【FQDN】发现服务、连接服务、互相访问的。

具体来说就是kind为Service的K8s资源。

FQDN(Fully Qualified Domain Name)全限定域名: 同时带有主机名和域名的名称。 全限定域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。

K8s中应用的全限定域名由三部分组成:

1、应用在K8s中定义的服务名

2、应用在K8s集群中的命名空间

3、集群本地服务名称中使用的可配置集群域后缀。

示例:

一个Service的YAML定义文件。Service服务的位置见上图

上面这个Service定义YAML对应的内网域名就是: daemon-uat-chaojihao-com.ltc.svc.cluster.local

服务名[metadata.name]:daemon-uat-chaojihao-com 命名空间[metadata.namespace]:ltc 。同一个命名空间内应用间相互调用时,命名空间可以省略。建议加上 集群本地服务名称中使用的可配置集群域后缀:svc.cluster.local 。同一个集群内可以省略。建议加上

应用间访问时需要加上端口号,还有schema。 eg: http://daemon-uat-chaojihao-com.ltc.svc.cluster.local:80 端口80不能少。 另外,应用的K8s内网域名是ping不通的

小技巧:

所有的K8s应用都有YAML定义文件。如果没有找到,譬如丢了,或者直接kubectl命令创建,可以使用以下命令来查看:

kubectl get service 服务名 -n 命名空间名 - o yaml #查看service类型的应用yaml定义

kubectl get pod 服务名 -n 命名空间名 - o yaml #查看pod类型的应用yaml定义

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 的数字化之路 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档