Nacos2.2.1 集群搭建

注意的要点

Nacos默认端口是8848,2.0版本后另外还占用9848,9849两个端口,这两个是gRPC端口,用于服务端与客户端通讯,所以在单机上配置集群节点,节点要配置的端口不能连续,否则在启动时报端口占用的错误。

端口

与主端口(8848)偏移量

作用

9848

1000

客户端gRPC请求服务端口,用户客户端向服务端发起连接和请求

9849

1001

服务端gRPC请求服务端口,用于服务间同步等

所以Nacos单机集群,端口不能连续;而且,Nginx反向代理,需要配置gRPC端口映射。

Nacos集群配置

构建Nacos集群,需要三个及以上的节点,才能构成集群节点。每个节点为一个Nacos目录

  1. 对于每一个Nacos目录,找到cluster.conf.example,复制为cluster.conf,并配置如下:

127.0.0.1:8848
127.0.0.1:8850
127.0.0.1:8852
  1. 对于每一个Nacos目录,找到application.properties文件:

## 默认端口
server.port=8848 

## 配置数据源类型
spring.datasource.platform=mysql

## 数据库集群中的节点数量
db.num=1

## 数据源信息
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=123456
  1. 复制conf/nacos-schema.sql,在本地mysql数据库,创建nacos数据库(字符集为UTF-8),运行sql。

  1. 运行每一个nacos节点目录bin/startup.cmd,运行成功可以看到:

Nginx反向代理

  1. 进入http://nginx.org/en/download.html下载Nginx windows包

  1. 找到conf/nginx.conf文件,增加配置:

###http节点配置
upstream nacos-cluster{
        server 127.0.0.1:8848;
        server 127.0.0.1:8850;
        server 127.0.0.1:8852;
    }
    
    server{
        listen 18848;
        server_name 127.0.0.1;
        location /nacos {
           proxy_pass http://nacos-cluster;
        }
 }
### 根节点配置
stream{
    upstream nacos-cluster-grpc {
        server 127.0.0.1:9848;
        server 127.0.0.1:9850;
        server 127.0.0.1:9852;
    }
    
    server {
        listen 19848;
        proxy_pass nacos-cluster-grpc;
    }
}
  1. Nginx命令:

##nginx 配置检查
naginx -t
#启动
start naginx
#停止
naginx -s stop

Spring Cloud项目配置

项目配置文件,以yaml配置格式为例:

spring:
  application:
    name: service-xxxxx
  cloud:
    nacos:
      server-addr: 127.0.0.1:18848

端口问题(最后强调一下)

因为Nacos新版本使用gRPC作为客户端与服务器端的心跳、推送等通讯服务,nacos会基于主端口,通过偏移1000/1001,开启gRPC端口。所以在端口、反向代理配置上要注意!!!!!否则在项目运行时显示错误日志:

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值