Nacos-2.1.1安装配置+集群

  • Post author:
  • Post category:其他




nacos-2.1.1安装配置+集群(Linux)

本篇博客用于记录我学习配置nacos集群,因为网上大多教程采用的是伪集群(通过访问不同端口号来模拟实现不同主机集群)的教学方式,虽无二致,但还是希望能通过不同服务器进行更加真实的nacos集群实操。



一、环境准备

1、准备三台及以上CentOS7操作系统的服务器(虚拟机),配置单机一台即可

2、由于nacos需要依赖Java环境运行,因此需要安装配置

JDK1.8


3、下载

nacos-server-2.1.1.tar.gz


在这里插入图片描述

4、安装配置mysql,本文通过docker安装mysql,也可以采用其他方式安装



二、Nacos安装、运行(单机)

1、在

/opt

目录下新建目录

/nacos-2.1.1

[root@zyf_01 opt]# mkdir nacos-2.1.1

2、通过XFTP将下载好的

nacos-server-2.1.1.tar.gz

上传到

/nacos-2.1.1

目录下,并解压

# 解压到/nacos-2.1.1目录下
[root@zyf_01 nacos]# tar -zxvf nacos-server-2.1.1.tar.gz
# 删除安装包(个人习惯)
[toot@zyf_01 nacos-2.1.1]# rm nacos-server-2.1.1.tar.gz

在这里插入图片描述

3、开放端口

nacos

默认的端口为8848

,由于Nacos2.x版本相比1.x新增了gRPC的通信方式,因此需要增加2个端口。新增端口是在配置的主端口(server.port)基础上,进行一定偏移量自动生成(

分别偏移了1000和1001

)


注意:防火墙需要开放8848、9848、9849三个端口

端口 与主端口偏移量 描述
9848 1000 客户端gRPC请求服务端端口,用于客户端向服务端发起连接和请求
9849 1001 服务端gRPC请求服务端端口,用于服务间同步等

例:

如果nacos主端口为8858,那么新增的gRPC端口为9858和9859

4、检查防火墙是否已经放开8848、9848、9849三个端口

查看防火墙状态 # systemctl status firewalld
开启防火墙 # systemctl start firewalld
关闭防火墙 # systemctl stop firewalld

# 在防火墙启动的情况下使用以下命令:
查看已经开放的端口 # firewall-cmd --zone=public --list-ports
新增开放端口 # firewall-cmd --zone=public --add-port=端口号/tcp --permanent
重新载入开放端口 # firewall-cmd --reload
重启防火墙 # systemctl restart firewalld

5、至此,nacos已经可以启动运行(单机,且使用的是nacos内嵌的delby数据库)

在这里插入图片描述


standalone代表单机模式运行,非集群模式



三、替换nacos内置数据源


目前nacos仅支持mysql作为nacos的外置数据源

(1)切换到

/conf

目录下,找到如下图的sql文件

在这里插入图片描述

(2)创建数据库

nacos_config

,在此数据库下运行

nacos-mysql.sql

文件,运行结果如下:

在这里插入图片描述

(3)修改

application.properties

配置文件

# 备份文件
[root@zyf_01 conf]# cp application.properties application.properties.init
# 编辑application.properties,使用vim编辑器编辑,没有的可以下载 yum -y install vim
[root@zyf_01 conf]# vim application.properties

在这里插入图片描述



四、nacos集群配置

Nacos集群官方推荐使用Linux操作系统,且至少需要3个或3个以上Nacos节点才能构成集群。

在这里插入图片描述

此图源自

nacos官网文档

默认三台服务器均已进行上述配置,且均使用相同数据源作为外置数据源,以下配置在三台服务器上都要

(1)修改cluster.conf集群配置文件

# 复制cluster.conf.example文件为cluster.conf
[root@zyf_01 conf]# cp cluster.conf.example cluster.conf
# 修改cluster.conf配置文件
[root@zyf_01 conf]# vim cluster.conf

在这里插入图片描述

(2)运行三台服务器上的nacos

# 运行nacos(集群+外置数据源运行方式)
[root@zyf_01 bin]# sh startup.sh
# 查看运行日志
[root@zyf_01 bin]# tail -f ../logs/start.out

在这里插入图片描述

(3)浏览器分别输入三台服务器的

IP:端口号/nacos

思考?:我们在访问nacos集群时,集群中有多少台nacos就有多少个访问地址,那这样在项目中就会配置很多个访问地址,非常的不方便,因此我们可以使用Nginx进行反向代理,通过Nginx代理请求,同时实现负载均衡。



版权声明:本文为qq_48651377原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。