【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

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

评论

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

一个cpp协程库的前世今生(一)缘起

SkyFire

协程 cpp cocpp

架构实战营4期-模块3作业

木几丶

「架构实战营」

Git基础 |打tag

xcbeyond

git 28天写作 tag 12月日更

【架构实战营】模块三:知识点总结

wgl

「架构实战营」

ALC北京发起人 姜宁:通过开放与协作,我们可以实现一个人想都不敢想的事情 I OpenTEKr 大话开源 Vol.6

OpenTEKr

大话开源

百度飞桨EasyDL桌面版正式上线,没网也能训练AI!

百度大脑

人工智能

百度智能云发布零碳园区解决方案,助力实现双碳目标

百度大脑

人工智能

外包学生管理系统详细设计文档

糖糖学编程

架构实战营

「架构实战营」模块三《如何保证设计出合理的架构》作业

DaiChen

作业 模块三 「架构实战营」

盘点 2021|自己一个人扛起了公司的半边天

liuzhen007

技术人生 盘点2021 盘点 2021

学习总结 2021.12.30

mj4ever

学习笔记

从人工到智能!百度AI开发者大会分论坛,探寻国球乒乓背后的AI之路

百度大脑

人工智能

阿里巴巴超大规模 Kubernetes 基础设施运维体系揭秘

阿里巴巴云原生

阿里云 Serverless Kubernetes 云原生 ASI

第三模块学习总结

Anlumina

#架构实战营

Apache 海豚调度 PMC 郭炜:开源,不是天才的甜点,而是执着者的盛宴 I OpenTEKr 大话开源 Vol.7

OpenTEKr

大话开源

架构实战营:模块三作业

Geek_93ffb0

「架构实战营」

元宇宙很好,但VR开发者不准备停留在这里

白洞计划

瞰见 | 开源,会不会变成开源创业的焦油坑?

OpenTEKr

狄安瞰源

架构实战营模块三作业

lchx08

「架构实战营」

瞰见 | 初创1个月就融到3亿美金,ClickHouse 你凭什么?

OpenTEKr

狄安瞰源

架构实战 模块三作业

mj4ever

架构实战

费用节省 50%,函数计算 FC 助力分众传媒降本增效

阿里巴巴云原生

阿里云 云原生 合作 函数计算FC 分众传媒

一口气搞懂【Linux内存管理】,就靠这60张图、59个问题了

奔着腾讯去

内存泄露 内存管理 Linux Kenel 内存映射 内存池

详细架构设计文档

Anlumina

#架构实战营

Golang中文件的基本操作

liuzhen007

Go 28天写作 Go 语言 12月日更

VS Code 如何设置大小写转换快捷键

AlwaysBeta

vscode

第三周学习总结

糖糖学编程

架构实战营

深入理解一下Python中的面向对象编程

宇宙之一粟

Python 面向对象 12月日更

Java 数据持久化系列之池化技术

程序员历小冰

MySQL 持久化 28天写作 池化技术 12月日更

引领人工智能技术自立自强 百度吴甜获评“首都最美巾帼奋斗者”

百度大脑

人工智能「

【架构实战营】模块三:命题作业

wgl

「架构实战营」

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