一、配置 nacos 集群
注意:需要先配置好 nacos 连接本地数据库
1、拷贝三份 nacos
2、修改配置文件(cluster.conf)
修改启动端口:
nacos1:8818
nacos2:8828
nacos3:8838
当nacos客户端升级为2.x版本后,新增了gRPC的通信方式,新增了两个端口。这两个端口在nacos原先的端口上(默认8848),进行一定偏移量自动生成.。因此端口号不能连续
127.0.0.1:8818
127.0.0.1:8828
127.0.0.1:8838
3.修改配置文件(第一个nacos的application.properties)
#第一个nacos的端口
server.port=8818
### Count of DB:
db.num=1
#数据库链接,用户名,密码
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root
其它两个nacos的application.properties只用修改端口号即可
4.依次启动三个nacos
在nacos的bin目录下,启动命令startup.cmd
二、Nginx配置
1.配置Nginx的conf目录下的nginx.conf
http {
# 负载均衡配置
upstream lb-nocos{
server 127.0.0.1:8818;
server 127.0.0.1:8828;
server 127.0.0.1:8838;
}
# nacos服务配置
server {
listen 8848;
server_name localhost;
location / {
# 反向代理
proxy_pass http://nacos-cluster;
}
}
}
# nacos的grpc协议配置
stream {
# 负载均衡配置(TCP长连接配置),端口号在前面的端口号前要进行偏置1000
upstream lb-nocos-tcp{
server 127.0.0.1:9818;
server 127.0.0.1:9828;
server 127.0.0.1:9838;
}
# 监听端口号在前面的端口号前要进行偏置1000
server {
listen 9848;
proxy_pass nacos-cluster-tcp;
}
}
放开集群通信端口
A:raft-rpc 7848
sudo firewall-cmd --zone=public --add-port=7848/tcp --permanent
B:当nacos客户端升级为2.x版本后,新增了gRPC的通信方式,新增了两个端口。这两个端口在nacos原先的端口上(默认8848),进行一定偏移量自动生成.。
sudo firewall-cmd --zone=public --add-port=9848/tcp --permanent
sudo firewall-cmd --zone=public --add-port=9849/tcp --permanent
如果nacos版本为2.0以上,不放开gRPC通信端口会狂刷日志。
2. 启动Nginx
三、测试
1.浏览器访问
输入地址:localhost:8848/nacos
查看集群结点数
2.项目中配置文件设置(bootstrap.yml):
spring:
application:
name: userService #可以读到userServer.yaml环境
profiles:
active: dev #环境 在加上dev即可以读到userServer-dev.yaml环境
cloud:
nacos:
discovery:
server-addr: localhost:8848 #nacos地址
config:
server-addr: localhost:8848 #nacos地址
file-extension: yaml #文件后缀名
# namespace: d16c25e6-07bc-4c97-a619-b876e78e3b1a #命名空间,填命名空间的ID dev环境