【图文】Nacos集群部署+MySQL持久化配置+Nginx负载均衡
写在最前面
Nacos官网文档:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html
环境配置:
 操作系统: CentOS7 64位
 JDK版本: 1.8
 Nacos版本: 1.1.4
 MySQL版本: 5.7
 Nginx版本: 1.18.0
CentOS7安装JDK1.8: https://blog.csdn.net/single_0910/article/details/113033380
 CentOS7安装MySQL5.7:https://blog.csdn.net/qq_42969074/article/details/84853307
 CentOS7安装 Nginx 1.18.0:https://blog.csdn.net/single_0910/article/details/113061140
1:下载Nacos安装包
下载地址:https://github.com/alibaba/nacos/releases/tag/1.1.4
Nacos官网推荐的集群模式(VIP=virtual IP 虚拟IP,本文使用Nginx1.18.0实现)
 
新建空白文件夹:
mkdir /usr/local/nacos-1.1.4
将下载的nacos-server-1.1.4.tar.gz上传至/usr/local/nacos-1.1.4目录下,然后解压:
tar -zxvf nacos-server-1.1.4.tar.gz
解压完成后会出现一个nacos文件夹:
cd /usr/local/nacos-1.1.4/nacos
目录结构如下:
 
2.Nacos集群配置的两种方案:
- 2.1:将解压后的nacos文件复制成三份,修改conf目录下的application.properties,将其中的server.port分别修改为3333,4444和5555,然后分别在各自的cluster.conf配置如下内容:
192.168.226.128:3333
192.168.226.128:4444
192.168.226.128:5555
说明:192.168.226.128是我的linux系统ip,可以使用hostname -i查看ip
然后分别启动nacos,集群即可搭建成功。
- 2.2:虚拟集群(本文采用这种方式,主要是因为懒)
瞎逼折腾之前请备份(万一玩坏了呢),进入bin目录,将startup.sh进行备份:
cp startup.sh startup.bak
修改startup.sh内容:p: 和p) PORT=$OPTARG;;
 
 倒数第二行添加:-Dserver.port=${PORT}
 
 在conf目录下的cluster.conf配置如下内容:
192.168.226.128:3333
192.168.226.128:4444
192.168.226.128:5555
至此Nacos集群搭建完毕
3.MySQL持久化配置
官网帮助文档:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html
 运行sql源文件:
cd /usr/local/nacos-1.1.4/nacos/conf

 在MySQL数据库新建nacos_config数据库(官网要求),执行nacos-mysql.sql
配置Nacos持久化:
vim /usr/local/nacos-1.1.4/nacos/conf/application.properties
在末尾新增:
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.226.128:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=test
db.password=Nacos_test123
说明:db.url.0写你要配置的数据库ip
 db.user写你要配置的数据库用户名
 db.password写你要配置的数据库用户密码
4.Nginx负载均衡
进入Nginx配置目录:
cd /usr/local/nginx/conf
修改nginx.conf:
 
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    
    keepalive_timeout  65;
   
    upstream cluster {
     server 192.168.226.128:3333;
     server 192.168.226.128:4444;
     server 192.168.226.128:5555;
  }
 
    server {
        listen       80;
        server_name  localhost;
        
        location / {
           #root   html;
           #index  index.html index.htm;
           proxy_pass http://cluster;
        }
      
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
      
    }
}
5 : 启动测试
---------------------------------------略----------------------------------------
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号