在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

使用 ExternalDNS 自动化 DNS 配置

  • 2020-04-15
  • 本文字数:1307 字

    阅读完需:约 4 分钟

使用ExternalDNS自动化DNS配置

Kubernetes 社区的生态繁荣和该领域技术的快速茁壮发展,已经是众所周知。Kubernetes 领域有太多强大的、创新的技术产品,而最近引起我注意的项目是 ExternalDNS。这是在近期的 POC 期间客户主动咨询起来的,我承诺客户会尝试一下 ExternalDNS 子项目,且使用后发现它真的令人印象深刻。

ExternalDNS 子项目

ExternalDNS 子项目(孵化器流程已被弃用)是由 sig-network 赞助并由 Tim Hockin 倡导的,旨在自动配置云 DNS 提供商。这很重要,因为它进一步支持基础架构自动化,用户可以在应用程序部署的同时直接完成 DNS 配置。


传统企业部署模型,通常是由多个孤立业务单元,来处理部署过程的不同部分。但带有 ExternalDNS 的 Kubernetes 不同于传统企业部署模型,它可以自动完成此过程的这一部分工作。有时候有可能会出现这种不好的情况:一部分软件已准备就绪,但它却必须等待另一个业务部门手动配置 DNS。而有了 ExternalDNS,这一潜在问题就被解决了。


通过 ExternalDNS,组织团队可实现自动化和共同责任协作,而这将避免手动配置的错误,并使各方都能够更有效地将其产品推向市场。

AKS 上的 ExternalDNS 配置和部署

我曾作为软件开发人员在.NET 领域有过多年的工作经验。微软开发人员社区在我心中一直有一个特殊的位置,过去几年以来我参加过不少费城地区的 Azure 用户 meetup,分享如何通过 ACS(Azure Container Service)和 AKS(Azure Kubernetes Service)使用 Kubernetes on Azure。恰巧的是,向我咨询 ExternalDNS 的用户也正是在选择了 Azure 作为其 IaaS 产品。


下文是我准备的在 AKS 集群上启动 ExternalDNS 的分步说明和帮助程序代码。 即使您使用的是其他公有云上的托管的 Kubernetes,本教程依然适用

先决条件

登录 Azure AD,必要情况下请设置订阅。

先决几点注意事项

1、请注意,本文档中的外部模板文件使用了许多可选设置。


2、它也在 debug 级别日志中,因此您也可以自行进行 troubleshooting。

在 Azure AKS 或 Azure IaaS 上设置 ExternalDNS

1、创建 Azure DNS 记录



2、根据您的注册商的需要委派 DNS


3、创建服务主体以代表 Kubernetes 行事



4、创建你的云提供商配置



5、使用云提供商配置来创建一个 Kubernetes 秘钥。



6、如果你使用的是 Rancher 配置的 Azure IaaS Backed Clusters,从集群中删除 ingress controller。



注意:如果您是使用 Rancher 中的 AKS 配置的集群,则不会提供 ingress controller。


7、安装 nginx ingress controller 并为 ExternalDNS 配置它。创建 ingress-nginx 部署和服务。



8、由于在基于 Rancher 的 Kubernetes 集群上默认启用了 RBAC,因此可以从下面的脚本创建名为 externaldns.yaml 的 yaml 文件,或者使用此 repo 中的 externaldns-template.yaml 文件。







验证





1、以与部署 ExternalDNS 相同的方式在 ingress 中创建 nginx 服务



2、创建 nginx-ingress controller



3、稍等几分钟


4、检查一下是否已有 record 被创建出来




5、检查日志






您还可以在 ExternalDNS 的 repo 中了解更多信息:


https://github.com/kubernetes-incubator/external-dns


如希望对原文中的代码有更深入的了解,请猛戳这里:


https://github.com/JasonvanBrackel/kubernetes-external-dns-in-rancher#prerequisites


2020-04-15 23:041168

评论

发布
暂无评论
发现更多内容

运行YashanDB数据库的硬件选型与配置建议

数据库砖家

AI智能体的运维

北京木奇移动技术有限公司

AI智能体 软件外包公司 AI技术应用

AI智能体的开发费用

北京木奇移动技术有限公司

AI智能体 软件外包公司 AI技术应用

什么是低代码?为什么低代码开发很重要?

优秀

低代码 低代码开发

通过YashanDB数据库提升商业智能分析效果

数据库砖家

舆情监测≠舆情管理:海外舆情监测系统如何从预警到施策闭环?

沃观Wovision

海外舆情监控 沃观Wovision 舆情监测系统

MyEMS 开源能源管理系统核心代码解读 026

开源能源管理系统

开源 能源管理系统

AI智能体外包开发的流程

北京木奇移动技术有限公司

AI智能体 软件外包公司 AI技术应用

CST如何在没有场监视器的情况下获得EBDH场

思茂信息

仿真 CST软件 电场磁场

什么是DDOS攻击?带你了解10家最佳的DDOS防御平台

编程猫

MyEMS:全场景能源管控的开源解决方案,驱动低碳未来

开源能源管理系统

开源 能源管理系统

破解能源管控难题:MyEMS 开源系统的实战价值与创新路径

开源能源管理系统

开源 能源管理系统

1688商品列表API秘籍!轻松获取商品列表数据

tbapi

1688商品列表接口 1688API 1688数据采集 1688数据分析

Hunches背后的科学:深度设备嵌入技术

qife122

机器学习 设备嵌入

什么是低代码?低代码和无代码的区别,以及低代码的用户是谁?

优秀

低代码 无代码

1688商品详情API秘籍!轻松获取商品详情数据

tbapi

1688商品详情接口 1688API 1688商品数据采集 1688数据采集 1688商品详情API

用YashanDB数据库处理海量数据的方式与技巧

数据库砖家

哈尔滨等保测评:守护智慧城市的安全脉搏

等保测评

大数据-66 Kafka 分区与副本机制详解:高可用与高性能的核心与实战 副本与分区

武子康

Java 大数据 kafka 分布式 消息队列

易用性与功能性:YashanDB数据库的用户满意度分析

数据库砖家

HarmonyOS SDK助力高德地图创新,带来便捷出行新体验

HarmonyOS SDK

HarmonyOS NEXT HarmonyOS SDK应用服务

3分钟,手摸手教你用OpenResty搭建高性能隧道代理(附完整配置!)

左诗右码

AI智能体开发的上线

北京木奇移动技术有限公司

AI智能体 软件外包公司 AI技术应用

VKProxy 集成 OpenTelemetry

八苦-瞿昙

#OpenTelemetry csharp

黑龙江三级等保测评:高安全级别的全面解析

等保测评

上车!KWDB 核心挑战赛培训来了!

KaiwuDB

数据库 开源

如何在PPT放网页链接?2个高效PPT制作技巧盘点!

职场工具箱

人工智能 效率 PPT 办公软件 AI生成PPT

透明化数据管理:YashanDB数据库的角色与实践

数据库砖家

黑龙江等保测评:筑牢网络安全防线的基石

等保测评

AI智能体的开发方法

北京木奇移动技术有限公司

AI软件开发 AI智能体 软件外包公司

使用ExternalDNS自动化DNS配置_文化 & 方法_Rancher_InfoQ精选文章