Nacos集群的搭建

692 阅读1分钟

下载

去git下载(就是慢的一笔)github.com/alibaba/nac…

wget https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.tar.gz

或者去gitee下载,但是无法wget下载

gitee.com/mirrors/Nac…

运行

先解压

tar zxvf nacos-server-2.0.3.tar.gz

单机运行

\

cd cd nacos/bin
sh startup.sh -m standalone

集群部署

安装

首先要去创建一个nacos的数据库

create schema nacos_config collate utf8_general_ci;

然后执行conf下面的nacos-mysql.sql

修改conf/application.properties

vim application.properties

修改文件如下

spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=test
db.password.0=test

再在conf下新建一个cluster.conf

cp cluster.conf.example cluster.conf
vim cluster.conf

修改文件内容为,问价内容为三个服务器中部署的nacos的ip和端口,包括自己这台

#2021-12-02T14:25:27.616
172.19.5.220:8848
172.19.5.221:8848
172.19.5.222:8848

配置好后回到bin目录下

sh startup.sh

然后以上操作再在另外两台机子上再来一遍。

VIP模式--使用Nginx反向代理

所谓VIP,就是virtual ip的意思。

本质上就是通过反向代理到多个nacos服务,并配置域名直连代理服务。

比如使用的是nginx代理,那就进行如下配置

upstream nacos_address {
    dynamic_resolve fallback=stale fail_timeout=30s;
    server 172.19.5.221:8848;
    server 172.19.5.220:8848;
    server 172.19.5.222:8848;
}

server {
    listen 80;
    server_name nacos.test.com;
    location / {
        proxy_pass http://nacos_address;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

}

配置好之后,reload nginx,我们就能通过 nacos.test.com/nacos 访问nacos的管理界面。

同样的,在我们的微服务的配置文件中,可以使用 nacos.test.com 作为注册中心的ip来进行配置。

比如我使用的是dubbo,那么就可以配置nacos.test.com:80 (不填80会报错🙃)