SpringCloud持久化与nacos集群搭建

一、持久化

1、为什么要持久化?

nacos默认使用自带的嵌入式数据库derby,集群模式下会导致每台nacos的配置文件不一样。

2、持久化的步骤

1)修改conf/application.properties:
        ### If use MySQL as datasource:
        spring.datasource.platform=mysql

        ### Count of DB:
        db.num=1

        ### Connect URL of DB:
        db.url.0=jdbc:mysql://192.168.31.19:3306/nacos?characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
        db.user.0=root
        db.password.0=1111
2)建表建库
	1.创建nacos库
	2.建表:
	 找到conf/nacos-mysql.sql并执行

注:打开之后,复制全部内容,在Navicat新建查询中运行。

3)测试
    1.启动mysql
    2.启动nacos
    3.新建配置文件,观察nacos是否把配置信息存储到mysql中

二、nacos集群搭建

1、nacos集群搭建

1)修改conf/cluster.conf:
	cd /usr/local/nacos/conf
    cp cluster.conf.example cluster.conf
     vim cluster.conf:
       # ip:port
          192.168.209.129:8848
          192.168.209.129:8849
          192.168.209.129:8850

注:cluster.conf文件是由cluster.conf.example文件复制而来,原因是,假如cluster.conf文件损坏,可再通过cluster.conf.example文件复制,避免源文件损坏。

2)赋值3份nacos
        cd /usr/local
        mkdir nacos_cluster
        cp -r nacos nacos_cluster/nacos_8848
        cp -r nacos nacos_cluster/nacos_8849
        cp -r nacos nacos_cluster/nacos_8850
3)修改conf/application.properties:
        server.port=8849
        server.port=8850

nacos_8850的操作与nacos_8849一样

4)启动nacos集群(把虚拟机内存调至>=2g)
        cd /usr/local/nacos_cluster/nacos_8848/bin
        ./startup.sh
        cd /usr/local/nacos_cluster/nacos_8849/bin
        ./startup.sh
        cd /usr/local/nacos_cluster/nacos_8850/bin
        ./startup.sh

2、搭建nginx

1)安装c语言环境
    yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
2)下载nginx
    cd /usr/upload
    wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
3)解压
    cd /usr/upload
    tar -zxvf nginx-1.12.0.tar.gz
4)配置安装路径
    cd /usr/upload
    cd nginx-1.12.0
    /configure --prefix=/usr/local/nginx
5)编译并安装
    make && make install
6)启动和关闭
    cd /usr/local/nginx/sbin
    启动:./nginx
    关闭:./nginx -s stop

3、配置nginx代理nacos集群

vim /usr/local/nginx/conf/nginx.conf:
        upstream nacosList {
          server 192.168.209.129:8848;
          server 192.168.209.129:8849;
          server 192.168.209.129:8850;
        }

        server {
          listen 80;
          server_name  localhost;
          location / {
            proxy_pass http://nacosList;
          }
        }

4、测试

spring:
      cloud:
        nacos:
          discovery:
            server-addr: 192.168.192.132 #注册中心的地址
经验分享 程序员 微信小程序 职场和发展