【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.21:8848 192.168.118.22:8848 192.168.118.23:8848
配置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的客户端连接目标库查看是否能正常连接