Nacos集群搭建
- 1.环境准备
- 2.Nacos 集群搭建
- 3.Nginx配置
- 4.小试牛刀
windows与Linux搭建方式方法相差无几,这里使用windows为例子,采用3台机器进行集群搭建。因资源有限本文档采用单机搭建伪集群,仅供参考。
1.环境准备
- nacos 2.2.3 安装包
- Nginx 安装包
- JDK 17+
- Maven 3.8+
- MySQL 8
2.Nacos 集群搭建
1.解压nacos压缩包,将./conf/cluster.conf.example复制一份,修改名称为cluster.conf,并修改内容,例如:
# IP:PORT 填写自己当前环境的IP和端口
## IP必须是真实IP,不能是127.0.0.1,端口号建议不使用连号,否则易出错
10.128.22.40:8847
10.128.22.40:8849
10.128.22.40:8851
2.修改application.properties文件,使用mysql数据库,数据库名建议使用默认库名nacos_config。
## 修改端口号
server.port=【端口号】
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://【数据库IP】:【数据库端口】/nacos_config?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
db.user.0=【mysql用户名】
db.password.0=【mysql密码】
3.以上两步准备完成后,将nacos启动包复制2份并重命名。
这里采用nacos+端口号进行命名,如nacos8847、nacos8849、nacos8851,分别修改application.properties中的端口号。如图:
4.启动mysql,创建数据库nacos,执行conf/nacos-mysql.sql脚本。
5.分别进入bin目录下,双击startup.cmd启动nacos,若内存不足时,可内存修改小一点,如:
##修改%MODE% == "cluster"中的内存参数
set "NACOS_JVM_OPTS=-server -Xms256m -Xmx512m -Xmn256m -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m
也可自定义启动文件进行批量启动,如下:
# 1 创建nacos-startup.bat文件
# 2 使用启动命令
@echo off
start cmd /k "cd D:\Nacos\nacos8847\bin && D: && startup.cmd"
start cmd /k "cd D:\Nacos\nacos8849\bin && D: && startup.cmd"
start cmd /k "cd D:\Nacos\nacos8851\bin && D: && startup.cmd"
6.访问分别访问测试是否正常:
localhost:8847/nacos
localhost:8849/nacos
localhost:8851/nacos
3.Nginx配置
1.修改conf/nginx.conf配置文件,增加nacos集群代理配置。这里采用Nginx单节点模式,根据自己需求也可搭建Nginx集群模式,这里不做阐述。
编辑时注意格式,格式不对会导致启动失败
http {
server {
listen 8846;
server_name localhost;
location /nacos {
proxy_pass http://nacoscluster/nacos;
}
}
upstream nacoscluster {
server 192.168.10.1:8847;
server 192.168.10.1:8848;
server 192.168.10.1:8849;
}
}
启动Nginx,访问测试:localhost:8846/nacos
查看集群管理-节点列表
4.小试牛刀
1.新建一个工程,这里不阐述如何创建工程。
2.修改application.ym配置文件
server:
port: 8020
spring:
application:
name: stock-service
cloud:
ncaos:
## nacos集群地址,这里使用的是Nginx nacos代理地址
server-addr: 127.0.0.1:8846
discovery:
username: nacos
password: nacos
namespace: public
3.启动工程,访问localhost:8846/nacos,查看服务列表,如图: