nacos 2.1.0集群生产环境多节点部署

nacos 2.1.0集群生产环境多节点部署

下载地址:https://github.com/alibaba/nacos/releases/download/2.1.0/nacos-server-2.1.0.tar.gz

JAVA 开发版本版本说明

适配 Spring Boot 为 2.4,Spring Cloud Hoxton 版本及以下的 Spring Cloud Alibaba 版本如下:

Spring Cloud Alibaba Version

Sentinel Version

Nacos Version

RocketMQ Version

Dubbo Version

Seata Version

Spring Cloud Version

Spring Boot Version

2.2.9.RELEASE

1.8.5

2.1.0

4.9.4

~

1.5.2

Spring Cloud Hoxton.SR12

2.3.12.RELEASE

1)环境准备

  • 安装好 JDK,需要 1.8 及其以上版本
  • 建议: 2核 CPU / 4G 内存 及其以上
  • 建议: 生产环境 3 个节点 及其以上

集群:

 准备三台centos7服务器 101.42.27.209 101.42.27.210 101.42.27.211

伪集群:

101.42.27.209

集群Tips

生产环境,必须在多服务器上部署集群,一台服务器上禁止部署多个nacos节点。同时也不用考虑单机节点冲突问题。个人因服务器硬件资源有限,选择单服务器部署所有服务。

部署集群

cd /usr/local/
wget https://github.com/alibaba/nacos/releases/download/2.1.0/nacos-server-2.1.0.tar.gz

tar -zxvf nacos-server-2.1.0.tar.gz

启动文件startup.sh

根据硬件资源及实际情况,在/usr/local/nacos/bin/startup.sh文件中调整JVM参数

JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn64m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m"

JVM参数

Xss:每个线程的stack大小(栈)

Xmx:JAVA HEAP的最大值、默认为物理内存的1/4

Xms:JAVA HEAP的初始值,server端最好Xms与Xmx一样

Xmn:JAVA HEAP young区的大小

XX:MetaspaceSiz:设定内存的永久保存区域

XX:MaxMetaspaceSiz:设定最大内存的永久保存区域

配置调整

应用配置文件application.properties

修改DB连接串将/usr/local/nacos/conf/application.properties的DB配置信息根据实际情况修改,并取消注释

使用外置mysql数据源

spring.datasource.platform=mysql 
### 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

注意点

  • DB名称: 名称可由服务器所采用的字符集中任意字母、数字、“_”和“ $”组成。如果需要其他字符,需要使用[`]包裹起来,例如

db-nacos。已踩坑未验证

  • db.url:增加allowPublicKeyRetrieval=true。 已踩坑已验证

服务端口

raft port: ${server.port} - 1000

grpc port: ${server.port} + 1000

grpc port for server: ${server.port} + 1001

假设对外端口为8848,即总共会有4个端口被占用,分别为7848、8848、9848、9849。所以单服务器部署集群时,端口不要太集中。未踩坑未验证

注意:在单台服务器上搭建伪集群不能使用连续端口号(比如8848,8849,8850), 因为使用8848(grpc会占用9848,9849),8849(grpc会占用9849,9850),会导致端口冲突

原因:Nacos2.x版本相比1.X新增了gRPC的通信方式,因此需要增加2个端口。新增端口是在配置的主端口(server.port)基础上,进行一定偏移量自动生成。

集群配置文件cluster.conf

cat << EOF > /usr/local/nacos/conf/cluster.conf 
101.42.27.209:18848 
101.42.27.209:28848 
101.42.27.209:38848 
EOF

mkdir nacos-cluster

复制多节点

服务端口

分别将server.port=8848改为18848 ,28848,38848

修改端口号

 vim -nacos /usr/local/nacos-cluster/nacos1/conf/application.properties 
 vim -nacos /usr/local/nacos-cluster/nacos2/conf/application.properties 
 vim -nacos /usr/local/nacos-cluster/nacos3/conf/application.properties

启动集群

节点1:nacos1

sh /usr/local/nacos-cluster/nacos1/bin/startup.sh 
tail -f /usr/local/nacos-cluster/nacos1/logs/start.out /usr/local/nacos-cluster/nacos1/logs/nacos.log

节点2:nacos2

sh /usr/local/nacos-cluster/nacos2/bin/startup.sh 
tail -f /usr/local/nacos-cluster/nacos2/logs/start.out /usr/local/nacos-cluster/nacos2/logs/nacos.log

节点3:nacos3

sh /usr/local/nacos-cluster/nacos2/bin/startup.sh 
tail -f /usr/local/nacos-cluster/nacos2/logs/start.out /usr/local/nacos-cluster/nacos2/logs/nacos.log

日志

启动日志

[root@VM-8-16-centos nacos-cluster]# tail -f /usr/local/nacos-cluster/nacos1/logs/start.out /usr/local/nacos-cluster/nacos1/logs/nacos.log 
==> /usr/local/nacos-cluster/nacos1/logs/start.out <== 
2023-01-12 15:35:02,213 INFO Nacos is starting... 
2023-01-12 15:35:04,215 INFO Nacos is starting... 
2023-01-12 15:35:05,229 INFO Nacos is starting... 
2023-01-12 15:35:06,238 INFO Nacos is starting... 
2023-01-12 15:35:06,358 INFO Nacos started successfully in cluster mode. use external storage ==> nacos1/logs/nacos.log <== 
2023-01-12 15:35:06,238 INFO Nacos is starting... 
2023-01-12 15:35:06,306 INFO Starting ProtocolHandler ["http-nio-18848"] 
2023-01-12 15:35:06,353 INFO Tomcat started on port(s): 18848 (http) with context path '/nacos' 
2023-01-12 15:35:06,358 INFO Started Nacos in 18.12 seconds (JVM running for 18.93) 
2023-01-12 15:35:06,358 INFO Nacos started successfully in cluster mode. use external storage

可以看到

Tomcat started on port(s): 18848 (http) with context path '/nacos'、

Nacos started successfully in cluster mode. use external storage等信息,表示启动成功。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值