Consul与CoreDNS的对比

Consul与CoreDNS的对比

最近在做服务注册与发现方案的选择,由于是在K8S上解决服务发现与注册,所以第一想到的就是K8S的CoreDNS,然后再想到的就是SpringCloud那一套中的Consul。

下面是我对这两者的思考与选择,欢迎大家一起讨论或者大佬给出意见。

一、CoreDNS简介

CoreDNS官网:https://coredns.io/

CoreDNS是一个DNS(域名解析)服务器,以插件的形式被提供。

可以处理服务发现。

在K8S中安装了CoreDNS后,每个服务就可以使用域名的方式调用其他服务。

感觉CoreDNS的优点就是专一、简单,适合规模比较小的微服务集群。

CoreDNS是使用Go语言开发的。

二、Consul简介

Consul官网:https://www.consul.io/

Consul是一个服务网络解决方案,主要解决的问题是知道服务在哪儿运行、如何守护服务间交流的安全、如何自动化网络任务的路由、如何控制对于环境的访问。

Consul作为SpringCloud中服务发现解决方案,它对于服务发现是一个完整的解决方案,而且它提供了心跳检测等能力,还有UI界面方便使用。

Consul是使用Go语言开发的。

三、总结与选择

下面是对于两者的优劣势总结。

方案 优点 缺点
CoreDNS 1、直接使用域名解析做服务发现,通过服务名就可以调用到服务,简单易用 2、直接使用K8S的插件安装CoreDNS,容易安装 1、没有服务管理功能。 2、也没有相应的UI页面。
Consul 1、完整的服务注册与发现方案。 2、具有UI界面,可以管理微服务。 1、Consul是一个服务网络解决方案,只是用到了其中的一部分功能,相对CoreDNS来说有点复杂和臃肿。

我想找的是一个完整的服务发现解决方案,而且需要可视化的界面方便管理微服务,因此选择Consul是比较正确的选择。

相关推荐
二狗mao4 天前
SpringCloud的学习,Consul服务注册与发现、分布式配置,以及 服务调用和负载均衡
学习·spring cloud·consul
bug菌¹5 天前
滚雪球学SpringCloud[2.2]:Consul与Zookeeper服务注册
spring cloud·zookeeper·consul
无休居士5 天前
你天天用微服务还不知道心跳检测机制是什么?
微服务·zookeeper·云原生·eureka·架构·etcd·consul
嘟嘟 嘟嘟嘟10 天前
prometheus基于consul的服务发现
服务发现·prometheus·consul
zhuyasen12 天前
sponge创建的服务与dtm连接使用etcd、consul、nacos进行服务注册与发现
微服务·rpc·golang·服务发现·etcd·consul
勤劳兔码农13 天前
如何通过Spring Cloud Consul增强微服务安全性和可靠性
spring cloud·consul·java-consul
Dragon_qu·x16 天前
Prometheus 监控域名和consul服务实现alertmanager钉钉告警
运维·云计算·钉钉·prometheus·consul
勤劳兔码农19 天前
Spring Cloud Consul 与 Eureka 对比:如何选择最佳服务发现工具
spring cloud·eureka·consul
大白菜程序猿22 天前
Spring Cloud Consul面试题
consul
草明1 个月前
服务注册与发现
微服务·zookeeper·eureka·服务发现·etcd·consul