当前位置:   article > 正文

nacos集群搭建(1.0版本和2.0版本)_nacos 1.0 2.0

nacos 1.0 2.0

nacos集群搭建(1.0版本和2.0版本)

1.0版本搭建

Nacos的单节点,使用的standalone模式,配置的数据是默认存储到内嵌的数据库derby中。
集群搭建的时候我们需要将Nacos对接Mysql进行数据存储。不能用内嵌的数据库,不然数据无法共享。
集群模式,通过Nginx转发到多个节点,最前面挂一个域名即可,如下图:

在这里插入图片描述

我们在本地模拟来搭建集群。

1.修改nacos数据存储

在nacos的conf目录下找到nacos-mysql.sql先导入数据库

同样在conf目录下修改application.properties文件,增加数据库配置如下

# 指定数据源为Mysql
spring.datasource.platform=mysql

# 数据库实例数量
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=glWhjDwbk7+6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
2.配置集群节点信息

将上边修改好的nacos复制三份,分别为nacos、nacos2、nacos3

因为本地启动三个端口会冲突,

我们需要修改application.properties文件中的server.port,默认nacos的server.port=8848,其他2个实例的端口我们需要进行修改,比如nacos2修改成8847,nacos3修改成8846。

最后需要配置一份集群节点信息,配置文件在conf目录下的cluster.conf.example文件,我们重命名成cluster.conf。
然后编辑cluster.conf文件,增加3个节点的信息,格式为IP:PORT,三个目录需要相同。

127.0.0.1:8847
127.0.0.1:8849
127.0.0.1:8853
  • 1
  • 2
  • 3

(nacos启动后会自动添加自己的节点信息到cluster文件且为ipv4地址 不推荐使用127.0.0.1)

启动的话直接到bin目录下,执行./startup.sh就可以了,默认就是集群模式,不需要加任何参数。

3.nginx配置

上述三个nacos成功启动后,nginx需要代理http请求

在nginx配置文件中添加信息如下

upstream nacos{
  server localhost:8847;
  server localhost:8849;
  server localhost:8853;
}
 
server {
  listen   80;
  location /nacos/ {
    proxy_pass http://nacos/nacos/;
  }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

至此本地访问80端口即可。

2.0版本搭建

客户端使用nacos2.0版本时,服务端同样需要2.0+版本支持。

其他步骤同1.0相同,需要在nginx增加两个TCP转发(tcp转发需要长连接)。

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

在这里插入图片描述

nginx配置中添加如下信息(注意streeam与http平级)

stream {

upstream grpcnacos{
  server localhost:9847;
  server localhost:9849;
  server localhost:9853;
}
upstream grpcnacos2{
  server localhost:9848;
  server localhost:9850;
  server localhost:9854;
}
   
    server {
        listen 1080 so_keepalive=on;  
        tcp_nodelay on;  
        proxy_pass grpcnacos;
    }
	
server {
  listen   1081 so_keepalive=on;  
        tcp_nodelay on;  
        proxy_pass grpcnacos2;

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

参考:https://nacos.io/zh-cn/docs/2.0.0-compatibility.html
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/284363
推荐阅读
相关标签
  

闽ICP备14008679号