Linux(CentOS7)下搭建nacos集群,超详细

最近工作接手一个调整项目框架的活,我被分配到搭建nacos注册中心的工作;nacos注册中心是alibaba旗下的一个开源组件,它提供了SpringCloud alibaba 微服务架构的注册中心以及配置中心功能,并且提供了比较直观的可视化界面;本篇文章就来介绍如何搭建nacos集群

1. 环境准备

Linux系统:CentOS7-2009

三台主机:
192.168.64.70
192.168.64.71
192.168.64.72

nacos:nacos-2.0.2
MySQL:MySQL8.0.15;
地址:192.168.64.71:3306

nacos下载地址:https://github.com/alibaba/nacos/tags
Linux(CentOS7)下搭建nacos集群,超详细
下载好后上传至Linux服务器,这里以 /usr/local/ 路径为例

2. nacos集群搭建

上传好nacos安装包执行以下操作

# 进入nacos上传目录
cd /usr/local/	
# 解压安装包
tar -zxvf nacos-server-2.0.2.tar.gz
# 解压好后进入nacos配置目录
cd nacos/conf/
# 复制一份cluster.conf.example并命名为cluster.conf
mv cluster.conf.example cluster.conf

Linux(CentOS7)下搭建nacos集群,超详细
Linux(CentOS7)下搭建nacos集群,超详细
nacos集群模式的工作是将一切注册或配置信息以及存储在数据库中,各个nacos的节点也是从数据库中获取各个用户注册以及配置信息;因此我们需要另外准备好数据库服务器,这里以mysql为例;
在nacos安装目录conf文件夹下有一个 nacos-mysql.sql 脚本文件,此脚本是nacos存储数据库表结构脚本,我们需要把它导入到准备好的mysql服务器

Linux(CentOS7)下搭建nacos集群,超详细
mysql服务器准备好后修改conf目录中的 cluster.confapplication.properties 配置
每台服务器都要改并保持一致

# 编辑
vim cluster.conf
# 添加以下配置
192.168.64.70:8848		#这几个地址为安装nacos的所有服务器地址以及设置的端口号
192.168.64.71:8848
192.168.64.72:8848
# 编辑
vim application.properties
# 修改以下几处配置
# 配置nacos访问uri(一般按默认就行了)
server.servlet.contextPath=/nacos
# 配置nacos访问端口(一般按默认8848就可以了)
server.port=8848
# 指定数据库类型(这里指定数据库为mysql)
spring.datasource.platform=mysql
# 数据库实例数量
db.num=1
# 数据库访问地址(即准备好的数据库服务器地址)
db.url.0=jdbc:mysql://192.168.64.71:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
# 数据库访问用户名
db.user.0=root
# 数据库访问密码
db.password.0=xiang@2021

Linux(CentOS7)下搭建nacos集群,超详细
此时nacos就安装完成,每台机器都按照以下命令启动

# 进入
cd /usr/local/nacos/bin/
# 启动nacos
sh startup.sh 

启动nacos通用命令如下:

  • sh startup.sh -m 模式: 模式有两个选项 standalone / cluster 分别代表单机和集群模式启动;单机模式不需要依赖数据库单独使用,集群模式需要依赖数据库,默认为集群模式

启动成功后通过 ip:端口号/nacos 访问nacos(注意先关闭物理机与虚拟机的防火墙),出现以下界面表示启动成功Linux(CentOS7)下搭建nacos集群,超详细

3. nacos设置开机自启

nacos安装好后需要手动开启关闭,可以设置开机自启,执行以下命令

# 编辑开机自启脚本
vim /lib/systemd/system/nacos.service
# 添加以下内容
[Unit]
Description=nacos
After=network.target

[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/jdk1.8"
# 启动后面可以加上 -m standalone/cluster 表示以单机/集群方式启动,默认为集群
ExecStart=/usr/local/nacos/bin/startup.sh
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Linux(CentOS7)下搭建nacos集群,超详细
配置完成后启动服务,执行以下命令

#重新加载服务
systemctl daemon-reload
#启用服务
systemctl enable nacos.service
#启动服务
systemctl start nacos.service
上一篇:Java并发编程:CountDownLatch、CyclicBarrier和Semaphore


下一篇:NoSQL之redis主从复制、数据类型、应用场景