当前位置: 代码网 > it编程>编程语言>Java > Nacos集群搭建详细步骤与常见问题解决

Nacos集群搭建详细步骤与常见问题解决

2026年08月17日 Java 我要评论
一、nacos持久化nacos默认有自带嵌入式数据库derby,但是如果做集群模式的话,就不能使用自己的数据库不然每个节点一个数据库,那么数据就不统一了,需要使用外部的mysql1、首先要切换数据库修

一、nacos持久化

nacos默认有自带嵌入式数据库derby,但是如果做集群模式的话,就不能使用自己的数据库不然每个节点一个数据库,那么数据就不统一了,需要使用外部的mysql

1、首先要切换数据库

修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql,版本要求:5.6.5+)

### if use mysql as datasource:
spring.datasource.platform=mysql
### count of db:
db.num=1
### connect url of db:
db.url.0=jdbc:mysql://192.168.31.19:3306/nacos?characterencoding=utf8&connecttimeout=1000&sockettimeout=3000&autoreconnect=true&useunicode=true&usessl=false&servertimezone=utc
db.user.0=root
db.password.0=1111

2、建库建表

1、创建nacos库

  • 注意:库名和application.properties中的库名保持一致

2、建表

  • 找到conf/nacos-mysql.sql文件并执行

3、测试

  • 重启nacos
  • 新建配置文件
  • 观察配置文件是否持久化到mysql中的

二、nacos集群

(一)、部署架构图

(二)、节点规划

在练习的过程中,我们采用的是同一台虚拟机,所以ip地址是一直,通过改变端口的方式来模拟不同的服务器

(三)、集群搭建

1、找到conf/cluster.conf.example ,可以复制一份,将其改名为 conf/cluster.conf ,并将内容改为如下:

# ip:port
192.168.209.129:8848
192.168.209.129:8849
192.168.209.129:8850

2、复制三份nacos

[root@localhost bin]# cd /usr/local
[root@localhost java]# mkdir nacos_cluster
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8848
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8849
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8850

3、将 conf/application.properties 中的端口号分别改为:

server.port=8848
server.port=8849
server.port=8850

(四)、配置代理服务

安装nginx

1、安装nginx的依赖库

yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

2、下载nginx

wget -c https://nginx.org/download/nginx-1.12.0.tar.gz

3、解压安装包

tar -zxvf nginx-1.12.0.tar.gz

4、配置nginx安装包

cd nginx-1.12.0
./configure --prefix=/usr/local/nginx

注意

./configure配置nginx安装到/usr/java/nginx目录下

5、编译并安装

make && make install

6、配置nginx代理nacos

upstream nacos {
  server 192.168.209.129:8848;
  server 192.168.209.129:8849;
  server 192.168.209.129:8850;
}
server {
  listen 80;
  server_name  localhost;
  location / {
    proxy_pass http://nacos;
  }
}

7、启动nginx

[root@localhost nginx]# cd /usr/local/nginx/sbin/
[root@localhost sbin]# ./nginx

8、将微服务注册到集群

(五)、nacos的开机启动

1、编写开机启动文件

(1)添加nacos.service文件

vim /lib/systemd/system/nacos.service

(2)文件内容如下:

[unit]
description=nacos
after=network.target
[service]
type=forking
execstart=/usr/local/nacos/bin/startup.sh -m standalone
execreload=/usr/local/nacos/bin/shutdown.sh
execstop=/usr/local/nacos/bin/shutdown.sh
privatetmp=true
[install]
wantedby=multi-user.target

2、修改nacos的startup.sh

(1)修改java_home路径并注销之后的3行配置,如下:

[ ! -e "$java_home/bin/java" ] && java_home=/usr/local/jdk1.8.0_191 
#[ ! -e "$java_home/bin/java" ] && java_home=/usr/java
#[ ! -e "$java_home/bin/java" ] && java_home=/opt/taobao/java
#[ ! -e "$java_home/bin/java" ] && unset java_home

注意自身jdk版本

3、设置开机启动

systemctl daemon-reload        #重新加载服务配置
systemctl enable nacos.service #设置为开机启动
systemctl start nacos.service  #启动nacos服务
systemctl stop nacos.service   #停止nacos服务

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com