【图文】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 : 启动测试

---------------------------------------略----------------------------------------

猜你喜欢

转载自blog.csdn.net/single_0910/article/details/113062395