微服务发现组件与配置管理组件NACOS环境快速体验

2020-05-28 00:00:00 微服 版本 服务 配置 体系


     古惑仔不用脑,一辈子都是古惑仔。


1.什么是Nacos

官方介绍是这样的:

 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。


从上面可以知道Nacos可以作为微服务的服务发现组件,同时也可以作为配置中心使用。由阿里巴巴java中间件团队开源。其生态目标覆盖比较广泛:





2.为什么学Nacos

众所周知,微服务一揽子解决方案 Spring Cloud 目前对Netflix OSS 依赖比较严重。但是去年年底Netflix宣布Spring Cloud Netflix系列技术栈进入维护模式(不再添加新特性)。受影响的有大名鼎鼎的Eureka、Feign、Zuul、Hystrix等。这让Spring Cloud 很尴尬,逼迫Sping Cloud 的Netflix 体系也进入了一个维护模式。只能对现在的相关组件进行修修补补。

这时 Spring Cloud Alibaba 项目已经悄悄地出现在Spring Cloud 体系中发展。阿里也想在Spring Cloud生态中占有一席之地。于是Spring Cloud Alibaba 顺利进入 Spring Cloud 项目中进行孵化。经过近一年的考验。已进入8月Spring Cloud Alibaba 就发布重大消息,成功毕业。这意味着Spring Cloud Alibaba 得到Spring Cloud 官方认可,正式成为Spring Cloud 体系中的另一股新生力量。

相较于老的Netflix 体系更加有活力,更加有希望。阿里巴巴团队也想借Spring Cloud 之力来构建自己的生态圈,所以该项目还是值得关注的。基于技术前瞻性的考量还是很有关注的必要的。作为微服务体系中的重要的 服务发现组件当然首当其冲。而且不同于Eureka,Nacos 还可以作为配置中心。目前功能稍逊于携程Apollo,但是还是可以用的。


3.快速入门Nacos

快速入门当然是基于docker了,目前win10具有 Hyper-V功能的版本的,MacOS都可以安装Docker。这里假设你已经有了Docker环境。



3.1 快速启动Nacos Docker

从 https://github.com/nacos-group/nacos-docker.git 克隆项目到本地。在example文件夹下找到cluster-hostname.yaml 这个是集群模式,如果刚开始玩这个建议还是使用单机版的配置standalone-derby.yaml 或者standalone-mysql.yaml。这两者就是使用的存储不一样而已。不过derby 版本就比较简单,使用了内嵌数据库。而mysql 版本相对复杂使用了主从库配置。无论你使用哪一种,个人建议注释掉以下配置:



如果你选择mysql 版本 你想修改默认的mysql映射端口找到standalone-mysql.yaml 文件的services.mysql-master.ports值中冒号分割的前一个端口改成你想要的,比如 - "3308:3306"改为- "3308:3306"。

nacos-docker/build/conf/application.properties 下对应的db.url.0端口也要改成3308。


搞完上面,直接执行

docker-compose -f  <你选择的yml> up// 比如docker-compose -f standalone-mysql.yaml up

注意你执行命令时和该文件的相对路径。等镜像文件下载完毕并执行后,通过http://127.0.0.1:8848/nacos/进入控制台。

默认账户:nacos 密码:nacos


至此Nacos快速环境就搭建完毕了。预告一下,下一篇我将介绍Nacos如何作为Spring Boot和Spring Cloud的配置中心。让我们逐步进入Nacos的世界。




相关文章