nacos集群部署安装

集群模式部署

这个快速开始手册是帮忙您快速在你的电脑上,下载安装并使用Nacos,部署生产使用的集群模式。

集群部署架构图

因此开源的时候推荐用户把所有服务列表放到一个vip下面,然后挂到一个域名下面

http://ip1:port/openAPI 直连ip模式,机器挂则需要修改ip才可以使用。

http://VIP:port/openAPI 挂载VIP模式,直连vip即可,下面挂server真实ip,可读性不好。

http://nacos.com:port/openAPI 域名 + VIP模式,可读性好,而且换ip方便,推荐模式

为了实现第三种方式,先得将nacos集群安装,后面再增加一个域名,用nginx来做负载,才能实现。

 

 

安装步骤:

1、 预备环境准备

请确保是在环境中安装使用:

  1. 64 bit OS Linux/Unix/Mac,推荐使用Linux系统。
  2. 64 bit JDK 1.8+;
  3. 3个或3个以上Nacos节点才能构成集群。
  4. maven安装,在3.2以上,这个主要是用来若下载源码的打包,若是直接下载安装压缩包,则可以不用

2、下载源码或者安装包

你可以通过两种方式来获取 Nacos。

从 Github 上下载源码方式

unzip nacos-source.zip
cd nacos/
mvn -Prelease-nacos clean install -U  
cd nacos/distribution/target/nacos-server-1.3.0/nacos/bin

下载编译后压缩包方式

下载地址

https://github.com/alibaba/nacos/releases/tag/1.3.2

我是下载编译安装包来测试的,刚开始下载了2.0版本,测试时为最新版本,后面发现有些问题,查询网上说建议安装稳定版本,故调整为1.3.2版本,1.4.0版本也是可以。

3. 配置集群配置文件

我现在是计划用三台虚拟机来实现集群,IP分别为:192.168.31.50;192.168.31.51;192.168.31.52

下载的压缩文件为:nacos-server-1.3.2.tar.gz,使用解压命令解压:

cd /software/
tar -zxvf nacos-server-1.3.2.tar.gz
cd /nacos/

解压后进入nacos目录内容以下:

 

 进入nacos/conf/目录下,将文件cluster.conf.example,拷贝一份命名为cluster.conf,添加集群内容如下

 

 然后,将这份文件拷贝到三台服务器上

因为我的数据库是使用外部服务器的数据库,故需修改数据库配置,修改内容以下:

进入nacos/conf目录下,修改application.properties文件,开启以下内容:

 在修改以上配置后,需根据nacos/conf/nacos-mysql.sql文件,在数据库服务器上创建数据库nacos_conf后,执行这个SQL文件

 这些修改成功后,保存退出编辑配置文件,将这个配置文件拷贝到其它集群机器上。

最后就是启动服务了,进入nacos/bin目录下,启动startup.sh

 

 这样就启动成功,结果如下:

 

日志内容以下图所示表示启动正常:

 

 

注意事项:

1、我集群用到的服务端口是8847,所以需在防火墙中开放这个端口

firewall-cmd --zone=public --add-port=8847/tcp --permanent

2、对于数据库服务器也要开放3306端口:以下为linux数据库服务器的处理,若是windows,则是在防火墙中添加端口允许即可

firewall-cmd --zone=public --add-port=3306/tcp --permanent

或下图:

 

 

3、在开放8847端口后,但发现日志文件/nacos/logs/naming-server.log文件一起在增加,内容是提示“找不到主机的路由”,在网上核查原因说是防火墙关闭就可以解决,我尝试关闭防火墙后,确实解决了问题,说明是端口未开放引起的问题,因为我更改了默认服务端口:8848,所以我又在集群各服务器上开放了商品8848,这个问题就消失了,具体原因还没查清,但遇到这个问题可以这样处理。

firewall-cmd --zone=public --add-port=8848/tcp --permanent

4、开启集群一台机器后,数据库提示:“too many connections",原因是数据库服务器开启一台nacos服务后,会有20多个服务器连接到数据库,而自己数据库服务器默认连接才20,所以提示这个问题,

修改数据库服务器配置:

 

 另外查询数据库的现有连接,可以使用以下命令:show status like  like '%Threads%';

 

 现在每个nacos集群结点都可以正常访问了,下一步就开始安装nginx

1、找一台服务器用于安装nginx服务器,我的是IP:192.168.31.60

2、安装java环境

3、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

4、安装PCRE 作用是让 Nginx 支持 Rewrite 功能

  •   下载PCRE,地址:https://sourceforge.net/projects/pcre/files/pcre/,下载最新版本的,当前是8.44版本,下载页面以下:
  •  

     下载成功后,上传到服务器的目录:/usr/local/src/

  • 进入这个目录后解压文件:tar -zxvf pcre-8.44.tar.gz
  • 进入安装包目录:cd pcre-8.44
  • 编译安装: ./configure      make && make install
  • 安装成功后,可以查看相应的版本:pcre-config --version

5、下载nginx文件,下载地址:http://nginx.org/en/download.html,我下载的是最新版本:nginx-1.19.6

6、下载的文件上传到服务器的目录:/usr/local/src/nginx-1.19.6.tar.gz

7、解压文件:tar -zxvf /usr/local/src/nginx-1.19.6.tar.gz

8、解压成功后,进入安装包目录:cd nginx-1.19.6

9、编译安装

[root@bogon nginx-1.19.6]# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.44
[root@bogon nginx-1.19.6]# make
[root@bogon nginx-1.19.6]# make install

10、安装成功后,就可以进入目录: cd /usr/local/webserver/nginx/sbin,再使用下面命令进行启动或停止nginx:

 

 命令如下:

[root@nginx1_64 sbin]# ./nginx -s stop
[root@nginx1_64 sbin]# ./nginx 
[root@nginx1_64 sbin]# ./nginx -s reload
[root@nginx1_64 sbin]# ./nginx -s reopen 
[root@nginx1_64 sbin]# 

11、因为我们的nacos是集群,所以对配置文件需调整:

调整内容有:

  upstream cluster{
         server 192.168.31.50:8847;
         server 192.168.31.51:8847;
         server 192.168.31.52:8847; 

    }


 location / {
       proxy_pass http://cluster;
        }

截图如下:

 

 再使用命令:进入目录 :/usr/local/webserver/nginx/sbin,使用命令:./nginx -s reload,重新加载配置文件

12、现在通过IP就可以访问nacos的集群信息,若有自己的域名就可以将上面的server_name换成域名即可,再通过域名访问就可以了,我是使用了www.123.com来测试,当然自己访问的电脑要给这个域名设置映射,即修改hosts文件;

 

 现在nacos的集群配置就全部配置完成了,接下来就是在springcloud项目中使用的内容了。

 

 

 
posted @ 2021-01-04 20:13  aaron616  阅读(1231)  评论(0编辑  收藏  举报