写点什么

使用 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:041113

评论

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

mac电脑安卓设备文件传输助手:MacDroid pro for mac 特别版

你的猪会飞吗

mac软件下载 Mac破解软件 MacDroid pro

技术分享丨实现跨区域虚拟专用网络互联

伊克罗德信息科技

虚拟专用网络

运营商实战成果——分布式架构可观测能力建设全攻略

嘉为蓝鲸

观测云链路追踪分析最佳实践

观测云

链路追踪

七猫如何用 StarRocks 打造用户增长新引擎?

StarRocks

TDengine 签约青山钢铁,实现冶金全流程质量管控智能化

TDengine

数据库 tdengine 时序数据库

可观测产品剖析:业务监控

嘉为蓝鲸

DevOps 组织的建设密码——人才胜任力模型全解析

嘉为蓝鲸

圆满解决!13/14代酷睿不稳定问题更新可解决,性能没影响

E科讯

Cisco Catalyst 9800 系列无线控制器 IOS XE 17.15.1 发布下载,新增功能概览

sysin

Cisco 9800 WLC 无线控制器

为什么说3-8岁的行为塑造奠定孩子的一生?

心大陆多智能体

AI大模型 心理健康 数字心理

技术引领筑生态,万物智联创未来 第三届OpenHarmony技术大会即将盛大启幕

最新动态

嘉为蓝鲸日志中心助力某省城商行,运维效率提升60%

嘉为蓝鲸

数据资产管理实施路径盘点,一文读懂如何建设企业数据资产管理体系

袋鼠云数栈

望繁信科技携手甫瀚咨询共建流程挖掘产业生态

望繁信科技

数字化转型 业务流程管理 流程挖掘 流程资产 流程智能

宇叠科技推出UDCAP VR手套:众筹数百万,开启虚拟交互新纪元

新消费日报

如何评估和观测 IoTDB 所需的网络带宽?

Apache IoTDB

低代码开发平台:未来五大发展趋势预测

不在线第一只蜗牛

低代码

IT外包在不同行业的应用案例

Ogcloud

IT外包 IT外包公司 IT外包服务 IT外包企业 IT外包服务商

三大硬核方式揭秘:Java如何与底层硬件和工业设备轻松通信!

不在线第一只蜗牛

Java Python

OpenAI为高级语音模式添加五种声音,已正式推出!华为发布业界首个L4自动驾驶网络|AI日报

可信AI进展

Golang优雅关闭gRPC实践

俞凡

golang

山丹县综能智慧新能源:“智能二维码”,推动班组管理信息化

草料二维码

草料二维码

Cisco Catalyst 9800-CL IOS XE 17.15.1 发布下载,新增功能概览

sysin

Cisco 9800 WLC IOS-XE

地平线静态目标检测 MapTR 参考算法-V1.0

地平线开发者

自动驾驶 算法

用豆包MarsCode,这不直接”躺“了嘛!

TRAE.ai

人工智能 程序员 AI 智能化

AI西游记:企业如何闯过大模型的「火焰山」?

白洞计划

AI

Cisco ASA 9.22.1 发布下载,新增功能概览

sysin

防火墙 Cisco ASA

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