1,先安装jdk,nacos需要依赖于jdk
2,官网前往GitHub下载安装包
官网:https://nacos.io/zh-cn/ 官方文档:https://nacos.io/docs/v2/what-is-nacos/ GitHub:https://github.com/alibaba/nacos
cd /usr/local wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz
3,解压压缩包,并查看
tar -zxvf nacos-server-2.2.3.tar.gz
4,编辑配置文件
#进入nacos配置文件目录 cd /usr/local/nacos/conf #编辑nacos配置文件 vim application.properties
4.1 修改端口
#*************** Spring Boot Related Configurations ***************# ### Default web context path: server.servlet.contextPath=/nacos ### Default web server port: server.port=8848
4.2 修改数据库
修改数据库前先创建数据库,执行脚本(创建集群才执行schema.sql):
/usr/local/nacos/conf/nacos-mysql.sql
修改数据源:
### Connect URL of DB: db.url=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user=root db.password=123456
5,进入bin目录启动nacos
cd /usr/local/nacos/bin
sh startup.sh -m standalone
# 查看运行状态
/usr/local/nacos/logs/start.out
6,开放端口(可选)
查询端口是否开放: firewall-cmd --query-port=8848/tcp 添加要开放的端口号 firewall-cmd --add-port=8848/tcp --permanent 重载入添加的端口 firewall-cmd --reload
7,访问nacos
网址:http://ip:8848/nacos
账号:nacos 密码:nacos
8,设置开机自启
8.1,默认是没有这个文件的,当vim命令的时候会创建这个文件,并且添加以下内容
vim /lib/systemd/system/nacos.service
[Unit] Description=nacos After=network.target [Service] Type=forking TimeoutSec=0 #防止启动超时 User=root Group=root # ExecStart、ExecReload、ExecStop为nacos脚本的实际路径 ExecStart=/bin/bash /opt/nacos/nacos/bin/startup.sh -m standalone ExecReload=/opt/nacos/nacos/bin/shutdown.sh ExecStop=/opt/nacos/nacos/bin/shutdown.sh Restart=on-failure PrivateTmp=true [Install] WantedBy=multi-user.target
8.2,分步执行以下命令
systemctl daemon-reload
systemctl enable nacos.service
systemctl start nacos.service
systemctl status nacos.service
9,查看开机自启项目
ll /etc/systemd/system/multi-user.target.wants
三、报错原因
-
当nacos客户端升级为2.x版本后,新增了gRPC的通信方式,新增了两个端口。这两个端口在nacos原先的端口上(默认8848),进行一定偏移量自动生成。
端口 与主端口的偏移量 描述 9848 1000 客户端gRPC请求服务端端口,用于客户端向服务端发起连接和请求 9849 1001 服务端gRPC请求服务端端口,用于服务间同步等
四、解决方式
-
当客户端升级为2.x版本,服务端需要进行相应的升级。
-
在centos7环境中服务端需要开放9848端口
#开启防火墙 systemctl start firewalld #开放9848端口 firewall-cmd --zone=public --add-port=9848/tcp --permanent #使配置生效 firewall-cmd --reload #查看所有端口 firewall-cmd --zone=public --list-ports
-
再次启动微服务项目,报错消失。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)