【SpringCloud】Nacos集群部署(Centos平台)

 

一、前提环境准备

Nacos 下载

https://github.com/alibaba/nacos/releases

或者使用其它博主备份的

https://blog.csdn.net/weixin_36113008/article/details/111591994

 

三台虚拟机,机器内存推荐2G

192.168.118.21 centos6-1
192.168.118.22 centos6-2
192.168.118.23 centos6-3

Centos6.5版本

[root@centos6-3 ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)

 

Nacos的MySQL配置在Windows本机上

mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 8.0.28    |
+-----------+
1 row in set (0.04 sec)

 

二、单机配置流程

首先上传Nacos包到Centos6-1上面,然后解压

tar -zxvf nacos-server-1.4.3.tar.gz

 

配置集群信息文件

可以单机跑,查看集群信息就是其余2节点状态为下线

# 切换目录
cd /root/nacos/conf

# 复制重命名
cp cluster.conf.example cluster.conf

# 编辑
vim cluster.conf


# 替换样例的地址为自己机器集群的地址,附加指定的端口号
# 如果是默认8848可以不写端口,我没试过,不知道
192.168.118.218848
192.168.118.228848
192.168.118.238848

 

配置mysql连接参数,集群Nacos都共用一个库

# 切换conf目录
cd /root/nacos/conf

# 编辑
vim application.properties

# mysql参数
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://172.17.29.7:3308/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=123456

或者也可以配置MySQL的MGR集群。Nacos支持多数据源

db.num=2
db.url.0=jdbc:mysql://172.17.29.7:3308/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=123456 db.url.1=jdbc:mysql://172.17.29.8:3308/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.1=root db.password.1=123456

 

将nacos的conf目录下的配置脚本到目标数据库中执行

/root/nacos/conf/nacos-mysql.sql

目标库需要自己进行创建

CREATE DATABASE `nacos-config` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';

 

三、启动测试

开始启动Nacos测试是否正常运行

/root/nacos/bin/startup.sh

查看打印信息:

tail -f /root/nacos/logs/start.out

如果错误,根据log信息排错,并关闭Nacos

/root/nacos/bin/shutdown.sh

 

四、集群运行

在确认单机启动Nacos正常后,停止运行Nacos

将Nacos分发到其余的机器上

# 回到root目录
cd ~

# 分发nacos给其它机器
scp -r nacos root@centos6-2:/root/
scp -r nacos root@centos6-3:/root/

 

然后全部机器启动nacos

 

五、访问使用Nacos

成功后,任意机器的地址皆可以登录nacos

http://centos6-1:8848:/nacos
http://centos6-2:8848:/nacos
http://centos6-3:8848:/nacos

登录账号

username: nacos
password: nacos

 

集群状态:

 

 六、启动故障总结

发现Nacos启动后始终不能连接Win上的MySQL

总结了以下原因:

1、root用户仅限本地连接,需要更改为任意地址访问

RENAME USER 'root'@'localhost' TO 'root'@'%';
FLUSH PRIVILEGES; 

2、Windows防火墙未关闭

控制面板\系统和安全\Windows 防火墙\自定义设置

 

3、若关闭防火墙还不能访问,则开放MySQL端口

开放此协议规则

 

4、上述配置都没有问题,还不能连接

那Windows本地MySQL开启了SSL认证

https://blog.csdn.net/andyguan01_2/article/details/88966432

下班回家自己搭建发现配置了SSL认证越过还是没用

MYSQL能访问,但是比较慢,仔细搜索之后发现新的问题:

还要配置【越过解析处理】

https://blog.csdn.net/qq_29384639/article/details/108243329

该参数的介绍:

https://www.cnblogs.com/diruodaichang/p/11245213.html

 

 6、推荐检测办法

用nacos所在的机器安装一个Mysql

使用这个Mysql的客户端连接目标库查看是否能正常连接

 

posted @ 2022-03-11 09:47  emdzz  阅读(379)  评论(0编辑  收藏  举报