Nacos部署

zy2025
2026-01-06 / 0 评论 / 4 阅读 / 正在检测是否收录...

一、单机部署Nacos

1.准备工作目录
[root@nacos_141 data]# mkdir -p /data/JAVA_JDK
2.安装JDK
[root@nacos_141 ~]# tar -xf jdk-8u371-linux-x64.tar.gz -C /data/JAVA_JDK/
3.配置jdk环境变量
vim /etc/profile
...
export JAVA_HOME=/data/JAVA_JDK/jdk1.8.0_371
export JRE_HOME=/data/JAVA_JDK/jdk1.8.0_371/jre
export PATH=$PATH:$JAVA_HOME/bin
4.重新加载环境变量
source /etc/profle
5.安装nacos(需要提前准备数据库环境)
[root@nacos_141 ~]# tar -xf nacos-server-2.0.2.tar.gz -C /data/
6.修改配置文件
...
### Count of DB:
db.num=1 

### Connect URL of DB:
# db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
# db.user.0=nacos
# db.password.0=nacos
db.url.0=jdbc:mysql://10.0.0.114:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC  #填写,mysql地址
db.user.0=root #mysql用户
db.password.0=Zy200211@ #mysql密码
7.修改启动脚本
vim /data/nacos/bin/startup.sh
...
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/data/JAVA_JDK/jdk1.8.0_371  #配置jdk目录,将原来的注释掉
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
#[ ! -e "$JAVA_HOME/bin/java" ] && unset JAVA_HOME
...
export MODE="standalone"  #单机模式
8.启动nacos
cd /data/nacos/bin && ./startup.sh
9.查看启动日志
cat /data/nacos/logs/start.out
10.检查启动是否成功
[root@nacos_141 logs]# ps -ef|grep nacos
root      16681      1 95 20:58 pts/1    00:00:20 /data/JAVA_JDK/jdk1.8.0_371/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Djava.ext.dirs=/data/JAVA_JDK/jdk1.8.0_371/jre/lib/ext:/data/JAVA_JDK/jdk1.8.0_371/lib/ext -Xloggc:/data/nacos/logs/nacos_gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Dloader.path=/data/nacos/plugins/health,/data/nacos/plugins/cmdb -Dnacos.home=/data/nacos -jar /data/nacos/target/nacos-server.jar --spring.config.additional-location=file:/data/nacos/conf/ --logging.config=/data/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288 nacos.nacos
root      16718  16563  0 20:59 pts/1    00:00:00 grep --color=auto nacos

[root@nacos_141 logs]# netstat -tnulp|grep 8848
tcp6       0      0 :::8848                 :::*                    LISTEN      16681/java 
11.访问nacos的web页面
http://10.0.0.141:8848/nacos/
初始默认用户密码都是nacos

mk2bb6zd.png

二、集群部署nacos

1.三个节点都安装jdk和nacos
tar -xf jdk-8u371-linux-x64.tar.gz -C /data/JAVA_JDK/
tar -xf nacos-server-2.0.2.tar.gz -C /data/
2.创建nacos普通用户并授权并配置环境变量
useradd nacos && chown -R nacos.nacos /data/nacos
vim /etc/profile
...
export JAVA_HOME=/data/JAVA_JDK/jdk1.8.0_371
export JRE_HOME=/data/JAVA_JDK/jdk1.8.0_371/jre
export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile
3.三个节点都要修改配置文件:
...
### Count of DB:
db.num=1 

### Connect URL of DB:
# db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
# db.user.0=nacos
# db.password.0=nacos
db.url.0=jdbc:mysql://10.0.0.114:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC  #填写,mysql地址
db.user.0=root #mysql用户
db.password.0=Zy200211@ #mysql密码
4.三个节点都要修改启动脚本:
vim /data/nacos/bin/startup.sh
...
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/data/JAVA_JDK/jdk1.8.0_371  #配置jdk目录,将原来的注释掉
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
#[ ! -e "$JAVA_HOME/bin/java" ] && unset JAVA_HOME
...
export MODE="cluster"  #集群模式
5.修改集群配置文件
[root@nacos_141 conf]# cp cluster.conf.example cluster.conf
vim cluster.conf
#添加nacos三个节点ip和端口
10.0.0.141:8848
10.0.0.142:8848
10.0.0.143:8848
6.进入mysql服务器节点导入mysql表(将/data/nacos/conf/nacos-mysql.sql文件导入mysql)
1)将sql文件复制mysql节点上
[root@nacos_141 conf]# scp nacos-mysql.sql 10.0.0.114:/root/ 
创建nacos数据库:
mysql> CREATE DATABASE IF NOT EXISTS nacos_config CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
mysql> CREATE USER 'nacos_config' IDENTIFIED BY 'Zy200211@';  修改nacos密码
mysql> GRANT ALL PRIVILEGES ON nacos_config.* TO 'nacos_config';
mysql> FLUSH PRIVILEGES;
mysql> use nacos_config; #进入nacos库
mysql> SOURCE /root/nacos-mysql.sql
# 验证
SHOW TABLES;
SELECT COUNT(*) FROM config_info;
7.编写System启动脚本
vim /etc/systemd/system/nacos.service
[Unit]
Description=Nacos Server
After=network.target

[Service]
Type=forking
User=nacos
Group=nacos
Environment="JAVA_HOME=/data/JAVA_JDK/jdk1.8.0_371"
Environment="MODE=cluster"

ExecStart=/data/nacos/bin/startup.sh
ExecStop=/data/nacos/bin/shutdown.sh
Restart=on-failure
RestartSec=10
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

#将文件拷贝其他节点上
scp /etc/systemd/system/nacos.service 10.0.0.142:/etc/systemd/system/nacos.service
scp /etc/systemd/system/nacos.service 10.0.0.143:/etc/systemd/system/nacos.service
8.启动nacos集群,在每个节点执行
systemctl daemon-reload
systemctl start nacos.service
systemctl enable nacos.service
检查状态
systemctl status nacos.service
停止
systemctl stop nacos.service
9.集群验证
[root@nacos_141 logs]# curl http://10.0.0.141:8848/nacos/v1/ns/operator/servers
{"servers":[{"ip":"10.0.0.141","port":8848,"state":"UP","extendInfo":{"lastRefreshTime":1767541268714,"raftMetaData":{"metaDataMap":{"naming_instance_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_persistent_service":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.143:7848","10.0.0.142:7848"],"term":3},"naming_persistent_service_v2":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_service_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4}}},"raftPort":"7848","readyToUpgrade":true,"version":"2.0.2"},"address":"10.0.0.141:8848","failAccessCnt":0,"abilities":{"remoteAbility":{"supportRemoteConnection":true},"configAbility":{"supportRemoteMetrics":false},"namingAbility":{"supportJraft":true}}},{"ip":"10.0.0.143","port":8848,"state":"UP","extendInfo":{"lastRefreshTime":1767541296760,"raftMetaData":{"metaDataMap":{"naming_instance_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_persistent_service":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.143:7848","10.0.0.142:7848"],"term":3},"naming_persistent_service_v2":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_service_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4}}},"raftPort":"7848","readyToUpgrade":true,"version":"2.0.2"},"address":"10.0.0.143:8848","failAccessCnt":0,"abilities":{"remoteAbility":{"supportRemoteConnection":true},"configAbility":{"supportRemoteMetrics":false},"namingAbility":{"supportJraft":true}}},{"ip":"10.0.0.142","port":8848,"state":"UP","extendInfo":{"lastRefreshTime":1767541295863,"raftMetaData":{"metaDataMap":{"naming_instance_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_persistent_service":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.143:7848","10.0.0.142:7848"],"term":3},"naming_persistent_service_v2":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4},"naming_service_metadata":{"leader":"10.0.0.141:7848","raftGroupMember":["10.0.0.141:7848","10.0.0.142:7848","10.0.0.143:7848"],"term":4}}},"raftPort":"7848","readyToUpgrade":true,"version":"2.0.2"},"address":"10.0.0.142:8848","failAccessCnt":0,"abilities":{"remoteAbility":{"supportRemoteConnection":true},"configAbility":{"supportRemoteMetrics":false},"namingAbility":{"supportJraft":true}}}]}[root@nacos_141 logs]# 
10.进入nacos的web页面,查看集群管理列表(三个节点都为UP表示集群正常)

mk2bbohg.png

1

评论 (0)

取消