Nacos 集群搭建

【官方文档】

环境准备

  • JDK1.8以上

  • 新建一个数据库,执行SQL

sql语句源文件

Nacos集群搭建-01.png

步骤

下载安装包

新建一个文件夹,获取安装包,zip、tar.gz包 二选一下载

# zip包
wget https://github.com/alibaba/nacos/releases/download/1.3.0/nacos-server-1.3.0.zip
unzip nacos-server-1.3.0.zip

# tar.gz包
wget https://github.com/alibaba/nacos/releases/download/1.3.0/nacos-server-1.3.0.tar.gz
tar -xvf nacos-server-1.3.0.tar.gz

修改配置

在nacos的解压目录 nacos/ 的 conf/ 目录下,有配置文件 cluster.conf ,修改为各个节点的 IP:端口号

这里的IP,要linux环境下 输入hostname -I 所显示的,否则可能无法连接

192.168.138.135:8848
192.168.138.135:8849
192.168.138.135:8850

接着在 conf/ 目录下,修改 application.properties 文件中的这几处内容

这个文件可以配置MySQL集群相关实例信息,这里暂时使用单机的MySQL

# 表明用MySQL作为后端存储
spring.datasource.platform=mysql

# 有几个数据库实例
db.num=1

db.url.1=jdbc:mysql://192.168.138.135:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

将该 nacos/文件夹 复制成三份,然后分别修改每份的 application.properties 文件的服务端口号

server.port=8848
server.port=8849
server.port=8850

启动服务

分别进入到三个文件夹中的 bin/ 目录,启动服务

# 8848
cd nacos/cluster-1/bin
bash startup.sh

# 8849
cd nacos/cluster-2/bin
bash startup.sh

# 8850
cd nacos/cluster-3/bin
bash startup.sh

查看是否启动成功

ps -ef | grep nacos
ps -ef | grep nacos | grep -v grep | wc -l

测试

此时,访问以下URL均可进入nacos的控制面板

http://192.168.138.135:8848/nacos/login

http://192.168.138.135:8849/nacos/login

http://192.168.138.135:8850/nacos/login

利用Nginx分发请求

显然,上面的访问方式是不可取,因此我们需要利用nginx来进行分发请求

修改配置

nginx.conf文件添加以下内容

# http中添加
upstream nacos {
    server 127.0.0.1:8848 weight=1;
    server 127.0.0.1:8849 weight=1;
    server 127.0.0.1:8850 weight=1;
}

# server中添加
location /nacos {
    proxy_pass http://nacos/nacos;
}

# 我的完整server如下:
    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        location /nacos {
            # 下面两个用于后面测试
            add_header backendIP $upstream_addr;
            add_header backendCode $upstream_status;
            
            proxy_pass http://nacos/nacos;
        }

        error_log    logs/error_nginx.log    error;
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

重启nginx

cd /usr/local/nginx/sbin

# 停掉nginx
./nginx -s stop

# 指定配置文件启动nginx
./nginx -c /usr/local/nginx/conf/nginx.conf

访问:http://192.168.138.135/nacos/#/login

登录,然后按F12 打开Network,刷新,查看各个请求的 Headers,可以看到请求分发给不同端口的nacos

这里能看到Nginx代理的ip地址,是因为nginx配置加了 backendIP和backendCode属性

自此,Nacos的集群搭建完成。

你可能感兴趣的:(Nacos 集群搭建)