Alibaba SpringCloud (一) Nacos 集群环境搭建

摘要:
什么是Nacos用官网原话是,Nacos致力于帮助发现、配置和管理微服务。Nacos集群搭建(本章主要讲在Window环境下的搭建,以1.2.1版本为例。//MysqlHealthCheckProcessor类第24行,将原引用替换importcom.mysql.cj.jdbc.MysqlDataSource;第三步:在pom文件中去除对test模块的引用第四步:打开cmd进入源代码所在目录,输入mvn-Prelease-nacoscleaninstall-U-X命令执行打包第五步:进入nacos-1.2.1distributionarget文件夹就能看到我们打的最新包啦2、Nacos的单节点和集群的启动命令进入文件夹反键查看nacosinstartup.cmd文件就懂了。

什么是Nacos

用官网原话是,Nacos致力于帮助发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 其实就是一个注册中心,与Google的Zookeeper, 携程的Apollo,Netflix的Eureka一样。

Nacos集群搭建(本章主要讲在Window环境下的搭建,以1.2.1版本为例。后期补Linux版本)

1、单节点搭建

第一步:通过官网下载Nacos的源码包:https://github.com/alibaba/Nacos/releases

Alibaba SpringCloud (一) Nacos 集群环境搭建第1张

第二步:解压zip放到自己喜欢的安装目录下,进入到nacosconf 目录下修改application.properties 配置文件

备注:我查看Wiki 显示在1.2.0有对mysql8.0 错误的修复,仔细查阅后发现并没有。所以我们的MySQL如果是5.6+的版本那么直接配置即可,如果是MySQL8.0+ 则需要自己打包,具体的操作在文章后续会详细说明。

### Default web context path:
server.servlet.contextPath=/nacos
### Default web server port:
server.port=8849
### If user MySQL as datasource:
spring.datasource.platform=mysql

### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?serverTimezone=UTC&characterEncoding=utf-8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root

第三步:进入到nacosconf 目录下,根据自己实际情况选择执行相应的SQL文件,我这里选择的是nacos-mysql.sql

第四步:通过nacosinstartup.cmd 启动,启动成功后会看到一个Nacos的访问路径,输入用户名密码nacos/nacos 登陆即可

Alibaba SpringCloud (一) Nacos 集群环境搭建第2张

2、集群环境的搭建

第一步:依旧是通过官网下载Nacos的源码包:https://github.com/alibaba/Nacos/releases

第二步:依旧是解压zip放到自己喜欢的安装目录下,进入到nacosconf 目录下修改application.properties 配置文件

第三步:依旧是进入到nacosconf 目录下,根据自己实际情况选择执行相应的SQL文件

第四步:进入到nacosconf 目录下创建一个cluster.conf 文件,在这个文件中配置我们的集群信息

备注:这个地方的IP不能为127.0.0.1,否则会报错。

169.254.154.176:8848
169.254.154.176:8849
169.254.154.176:8850

第五步:将你修改好的安装包,根据自己的集群数进行复制(我这里有三个,所以复制三遍)。根据自己的集群配置,分别修改application.properties 文件中的端口号

第六步:通过命令startup.cmd -m cluster 启动集群

备注:单节点的启动命令为 startup.cmd -mstandalone

Alibaba SpringCloud (一) Nacos 集群环境搭建第3张

在搭建过程中遇到的一些坑

1、Nacos 不知道Mysql 8.0+, 需要我们自己去下载源码打包

第一步:下载源码修改pom文件,根据我们自己本地版本引入不同的版本驱动

<!-- JDBC libs -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <!--<version>5.1.34</version>-->
    <version>8.0.15</version>
</dependency>

第二步:修改com.alibaba.nacos.naming.healthcheck.MysqlHealthCheckProcessor 类的引用

备注:代码中不能出现失效的引用,注释也不行,在打包的过程中会检查报错。错误在对应的pmd.xml文件中显示。

//MysqlHealthCheckProcessor类第24行,将原引用替换
import com.mysql.cj.jdbc.MysqlDataSource;

第三步:在pom文件中去除对test模块的引用

第四步:打开cmd 进入源代码所在目录,输入mvn -Prelease-nacos clean install -U -X 命令执行打包

Alibaba SpringCloud (一) Nacos 集群环境搭建第4张

第五步:进入nacos-1.2.1distribution arget 文件夹就能看到我们打的最新包啦

2、 Nacos的单节点和集群的启动命令

进入文件夹反键查看nacosinstartup.cmd 文件就懂了。MODE默认参数为"standalone",所以我们双击startup.cmd 永远执行的都是单节点。

另外在集群模式下,Xms、Xmx的默认配置为2g,Xmn的默认配置为1g,我们需要根据自己电脑的实际情况进行修改。

Alibaba SpringCloud (一) Nacos 集群环境搭建第5张

3、 启动报错 Failed to create database 'nacosdataderby-data', see the next exception for details.

删除nacosdata目录下的数据文件即可,这种一般是配置文件错误,执行了错误的sql

免责声明:文章转载自《Alibaba SpringCloud (一) Nacos 集群环境搭建》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇中文分词组件:thulac及jieba试用手记NETCore Bootstrap Admin 通用后台管理权限 [2]: Blazor 版本介绍下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

一些值得收藏的开源框架

阅读本文大概需要 7.2 分钟。 来源:segmentfault.com/a/1190000017346799 1. 分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。 此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring C...

Dubbo系列(3)_官方Demo说明

一、本文目的     通过Dubbo的官方Demo介绍,学会搭建一个简单的Dubbo程序,包括服务端、客户端、接口等。 Demo地址:https://github.com/alibaba/dubbo/tree/master/dubbo-demo 二、Demo概况      1、Demo分为三个项目             a) dubbo-demo-...

canal部署启动的时候报错com.alibaba.druid.pool.DruidDataSource

报错信息:com.alibaba.druid.pool.DruidDataSource - testWhileIdle is true, validationQuery not set 解决方法: 找到conf/canal.properties 文件里面的 canal.instance.tsdb.spring.xml=classpath:spring/ts...

五十款阿里开源软件说明介绍

阿里巴巴的Github代码托管地址:https://github.com/alibaba 通过写这篇文章从开源中国站上面看了很多,也从那里将开源软件的基本的介绍和下载地址拷贝到了文章当中,总体给我的一个感受就是阿里的开源实在太强大了,多到需要花大量的时间去了解。今天写这篇文章主要是对阿里开源的项目比较陌生,通过本文也有了一个大体的认知。每个人每天有24小时...

【SpringCloud】SpringCloud Alibaba Nacos服务注册和配置中心

SpringCloud Alibaba Nacos服务注册和配置中心 感悟 注意:凡是cloud里面,你要开哪个组件,新加哪个注解,第一个就是启动,如@EnableFeignClients,第二个就是使用,如@FeignClient。 模块对外暴露就需要建立端口,不对外暴露,那就不需要建立端口 注册中心相当于医院门诊挂号 如果只是一个病人一个医生,那当然不...

Dubbo 3.0 前瞻:重塑 Spring Cloud 服务治理

作者 | 小马哥 导读:Dubbo 社区策划了【Dubbo 云原生之路】系列文章,和大家一起回顾 Apache Dubbo 产品和社区的发展,并展望未来发展。系列文章主要涵盖 Dubbo 技术解读、社区运营、应用案例解析三大部分。本文为系列第 3 篇。 前言 在 Java 微服务生态中,Spring Cloud 成为了开发人员的首选技术栈,然而随着实践的...