Bootstrap

在Ubuntu 22.04 上安装配置Nacos

1. 下载安装文件

Nacos基于Java开发,在部署Nacos前,需要先配置Java运行环境。本例采用Java 11和Nacos 2.1.1。
1.1 下载Java 11
Java下载链接:https://www.oracle.com/java/technologies/downloads/#java11。
1.2 下载Nacos
当前Nacos的版本为2.1.1,建议使用最新版本,下载地址:https://github.com/alibaba/nacos/releases/

将Java和Nacos文件下载到当前用户目录。

2. 安装配置Java

创建Java安装文件夹,并进入该文件夹,命令如下所示:

mkdir /usr/local/java
cd /usr/local/java

将jdk解压到/usr/local/java文件夹中:

sudo tar -zxvf ~/jdk-11.0.16.1_linux-x64_bin.tar.gz -C /usr/local/java/

打开环境配置文件:

sudo nano /etc/profile

将Java配置信息写入profile文件,如下所示:

JAVA_HOME=/usr/local/java/jdk-11.0.16.1
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CLASSPATH=.:$JAVA_HOME/lib/
export CLASSPATH

关闭文件后,需要执行以下命令让配置生效:

source /etc/profile

在终端中测试Java是否安装成功:

java --version
# 有以下输出表示Java安装配置成功
java version "11.0.16.1" 2022-08-18 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.16.1+1-LTS-1)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.16.1+1-LTS-1, mixed mode)

3. Nacos基础配置

创建nacos文件夹,并进入该文件夹:

sudo mkdir /usr/local/nacos
cd /usr/local/nacos

解压Nacos安装文件到该目录:

sudo tar -zxvf ~/nacos-server-2.1.1.tar.gz -C /usr/local/nacos
# 解压后的nacos文件夹名称为nacos,为方便以后升级,将nacos重命名为nacos-server-2.1.1
mv nacos nacos-server-2.1.1
cd nacos-server-2.1.1

在启动Nacos时,会出现找不到JAVA_HOME的问题,需要手动帮Nacos配置JAVA_HOME信息,打开启动文件startup.sh:

cd bin
sudo nano startup.sh

在启动文件startup.sh中加入JAVA_HOME信息:

export JAVA_HOME=/usr/local/java/jdk-11.0.16.1

现在,就可以启动Nacos,测试一下安装效果了,启动脚本如下:

# 单机启动模式
sudo ./startup.sh -m standalone

Nacos启动后,在浏览器中打开http://ip:8848/nacos,可以看到Nacos的界面,输入初始用户名密码(nacos/nacos),即可登录Nacos。

4 配置Nacos为系统服务

在Nacos使用过程中,如果系统重启或系统出现不可知问题时,在终端手动启动的Nacos服务将关闭而不能提供服务。为保证Nacos持续有效,需要将Nacos配置为自启动服务。
首先,在/usr/local/nacos文件夹下创建nacos.service文件:

sudo nano /usr/local/nacos/nacos.service

然后将服务信息输入到该文件中:

[Unit]
Description=nacos
After=network.target

[Service]
Type=forking

ExecStart=/usr/local/nacos/nacos-server-2.1.1/bin/startup.sh -m standalone
ExecReload=/usr/local/nacos/nacos-server-2.1.1/bin/shutdown.sh
ExecStop=/usr/local/nacos/nacos-server-2.1.1/bin/shutdown.sh

# Let systemd restart this service always
Restart=always

PrivateTmp=true

[Install]
WantedBy=multi-user.target
Alias=nacos.service

输入完成后,保存退出。接下来让服务生效:

# 在/lib/systemd/system中创建nacos.service的软连接(主要是为了升级方便)
sudo ln -s /usr/local/nacos/nacos.service  /lib/systemd/system/nacos.service

# 让服务生效
systemctl daemon-reload
systemctl enable nacos.service

# 启动nacos服务
systemctl start nacos

为测试效果,可以直接重启Ubuntu;当系统重启后,Nacos服务将自动启动。

5 配置MySQL数据库

在Nacos集群中,必须采用MySQL数据库存储配置Nacos信息,且只能使用MySQL(其他数据库会忽略)。

5.1 创建数据库

首先在MySQL中创建一个名称为nacos的schema:

CREATE DATABASE  `nacos` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

然后创建用于访问nacos数据库schema的用户并授权:

# 创建用户
create user 'nacos'@'%' identified by 'your-passwd';
# nacos.* 表示nacos的所有表
grant all privileges on nacos.* to 'nacos'@'%' identified by 'your-passwd' with grant option;
flush privileges;

5.2 导入SQL语句

将nacos安装目录中conf文件夹下的nacos-mysql.sql导入数据库nacos中。

5.3 配置Nacos

打开Nacos配置文件:

修改一下内容


### If use MySQL as datasource: 取消spring.datasource.platform的注释
spring.datasource.platform=mysql

### Count of DB: 取消db.num注释
db.num=1

### Connect URL of DB:
# 取消db所有属性的注释,并配置数据库schema、用户名和密码
db.url.0=jdbc:mysql://IP:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=nacos
db.password.0=your-passwd

配置完成后,重启nacos服务即可。

;