centos7部署nacos2.2.3(单机及集群)

一、nacos数据库

本文中的nacos将搭配mysql8.0.35使用,mysql的部署请看Linux系统centos7安装、配置、远程连接mysql8.0.35、开机自启动(究级无敌宇宙第一详细)-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/zaixiaqin/article/details/134619062?spm=1001.2014.3001.5501需要在mysql中创建一个名为nacos的数据库和用户,并配置权限。部署安装好MySQL后执行下面操作。

1. 创建nacos用户

 创建nacos用户,如果mysql将与nacos部署在两台机器上:

CREATE USER 'nacos'@'%';
ALTER USER 'nacos'@'%' IDENTIFIED BY 'nacos';
GRANT ALL privileges on nacos.* TO 'nacos'@'%';

如果mysql与nacos部署在同一台机器上:

CREATE user 'nacos'@'localhost';
ALTER USER 'nacos'@'localhost' IDENTIFIED BY 'nacos';
GRANT ALL privileges on nacos.* TO 'nacos'@'localhost';

刷新用户权限

FLUSH PRIVILEGES;

 查看用户是否创建成功

USE mysql;
SELECT user,host FROM user;

 如果结果中包含了nacos用户,则创建成功。

 2. 初始化nacos数据库

这里有多种方法,可以直接远程连接数据库,然后通过一些IDE来初始化,这里介绍linux命令行的方式。

将下载的nacos压缩包中 conf 下的 mysql-schema.sql 脚本文件上传到安装了mysql的机器上,记住路径,用完删掉即可。(以 /mysql-schema.sql 为例)

 使用root用户登录mysql,创建 nacos 数据库,然后退出登录。

mysql -uroot -p

CREATE DATABASE nacos;

quit;

执行下面命令初始化nacos数据库

## mysql -u<用户名> -p<用户密码> -D<数据库名> > <脚本路径>
mysql -uroot -p111222 -Dnacos > /mysql-schema.sql

然后使用 nacos 用户登录 mysql,查看初始化结果。(其实用哪个账号登都行,只要有nacos库的权限就可以)

mysql -unacos -p

use nacos;
show tables;

 如果出现nacos出现下面的表,则初始化成功。

二、下载javaJDK

下载地址:Java Downloads | Oracle 中国icon-default.png?t=N7T8https://www.oracle.com/cn/java/technologies/downloads/#java11以java11为例

首先需要登录linux系统,查看系统支持的java版本。

uname -a  # 查看结果中是否有包含arrch64

如果查询结果中包含 arrch64,就直接下载下面两个即可,本文以.tar.gz版本的压缩包为例

否则下载下面两个版本

 三、部署JDK环境

1. 检查系统是否安装jdk

yum list installed | grep java  # 查看系统中是否已经安装了java

2. 卸载已安装jdk

yum -y remove <第一步命令出现的所有文件>  # 删除已安装的jdk

3. 解压缩JDK11

将下载的jdk-11.0.21_linux-x64_bin.tar.gz拷贝到linux系统的 /opt 目录下,执行解压命令

cd /opt
tar -zxvf jdk-11.0.21_linux-x64_bin.tar.gz

 4. 添加环境变量

vim /etc/profile

在文件后面追加

export JAVA_HOME=/opt/jdk-11.0.21
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin

保存退出后执行

source /etc/profile

查看安装结果

java --version

出现以下结果表示安装成功

 5. 生成JRE

java8以后,安装的jdk不再包含jre

进入JDK的安装目录

cd /opt/jdk-11.0.21

执行下面命令生成JRE

bin/jlink --module-path jmods --add-modules java.desktop --output jre

四、下载nacos

下载地址: 

Releases · alibaba/nacos (github.com)icon-default.png?t=N7T8https://github.com/alibaba/nacos/releases

点击 2.2.3,页面跳转后找到 nacos-server-2.2.3.tar.gz 版本进行下载

 五、解压nacos

将下载的nacos压缩包上传到服务器的 /usr/local 下并执行命令解压。

cd /usr/local
tar -zxvf ./nacos-server-2.2.3.tar.gz

 解压完成后会直接在目录下生成名称为 nacos 的目录

六、配置nacos

vim /usr/local/nacos/conf/application.properties

按如下配置, 

  • db.url.0 中的 ip: 如果是mysql与nacos在同一台机器上,就不用更改,使用原来的127.0.0.1。
  • db.url.0 中的 connectTimeout、socketTimeout 如果设置时间较短可能在启动nacos时会连接不上数据库而启动失败。
  • 数据库用户密码为 1.1 中创建的用户密码,也可以直接使用 root 用户。

 七、启动nacos

进入nacos安装目录下

cd /usr/local/nacos/bin

执行启动脚本

sh startup.sh -m standalone    # -m standalone 代表单机模式启动
或
nohup sh startup.sh -m standalone &

停止 nacos 服务

cd /usr/local/nacos/bin
sh shutdown.sh

主机浏览器访问 http://虚拟机IP:8848/nacos,看到nacos主页,则启动成功。

八、nacos 集群部署 

在第六步配置 nacos 时,还需更改配置文件,在 nacos 的安装目录 nacos/conf 下,还有一个配置文件 cluster.conf.example ,我们复制这个配置文件并改名为 cluster.conf

cd /usr/local/nacos/conf
cp cluster.conf.example cluster.conf

在其中添加其它机器的地址信息,如我以三台机器为例(nacos集群至少需要三个nacos服务)

 

在三台机器上都添加该配置,添加完成后,再配置 application.properties ,然后启动三台服务

cd /usr/local/bin/
nohup sh ./startup.sh &      # nacos 默认的启动方式就是以集群模式启动

启动后访问查看三个nacos服务的集群节点

九、问题排查

启动失败:

  • 查看配置文件中 db.url.0 中 connectTimeout、socketTimeout 的时间是否需要增加。
  • 设置 db.url.0 中 useSSL=true
  • 如果nacos与mysql不在同一台机器上,查看8848端口的防火墙是否开放
firewall-cmd --query-port=8848/tcp  # 查看端口状态 yes 为已开放
firewall-cmd --add-port=8848/tcp --permanent  # 永久开放端口
systemctl restart firewalld  # 重启防火墙
  • 如果还不能解决,查看启动日志,cat /usr/local/nacos/logs/start.out ,或查看 nacos 日志cat /usr/local/nacos/logs/nacos.log
  • 23
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yax1n9

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值