最近在看 RuoYi 的分布式微服务架构权限管理系统,RuoYi 的注册中心和配置中心都是采用 alibaba 的 nacos,本文主要介绍使用 Windows10 电脑安装 nacos 1.3.2 以及启动 nacos 中遇到的一些问题以及解决方法。

一、下载 nacos 安装程序

1.1 下载 nacos

按照 nacos 官网的快速开始手册,下载 nacos 的方式有 2 种,第一种下载编译后压缩包的 nacos,第二种方式,直接在 github 上下载源程序,然后编译生成最终可执行的程序。

本次主要是安装 nacos,没有选择难度稍微较高的源程序编译的方式,直接选择下载已经编译后的程序包,从 nacos 最新稳定版本列表[1] 下载 nacos-server-$version.zip 包,这个过程比较简单,选择最新版本nacos-server-1.3.2.zip 下载。

编译后的压缩包有两种压缩方式,一种是 zip 压缩文件后缀,另外一种是 tar.gz 的压缩文件后缀,如果在 Windows 操作系统上,建议下载 zip 结尾的程序包,直接解压即可,tar.gz 后缀的文件使用 7zip 解压 2 次才算解压完成,通常在 linux 等操作系统更方便解压。除此之外,解压后的内容没有其他的差异,大家可以放心使用。

1.2 启动 nacos

nacos 提供两个启动脚本,分别是startup.cmd和startup.sh;由于使用 Windows 操作系统,选择直接执行startup.cmd文件,在 nacos 快速开始手册中,建议双击startup.cmd 或者在命令窗口使用cmd startup.cmd的方式,在这里使用 cmd 命令窗口,执行startup.cmd命令。

建议:使用双击方式也可以启动 nacos,但是如果命令启动过程中出现错误,命令窗口会一闪而过,还需要通过查看日志才能知道出现哪些错误

技巧:在这里跟大家说一个小的技巧,在 cmd 窗口中如何快速到达指定文件目录,只需要指定的文件目录的文件导航窗口输入cmd回车即可。可以看到在 cmd 的文件目录直接到达指定的文件目录,避免不断的编写 cd 命令

cmd窗口快速到达指定文件目录

效果图

二、出现问题列表

在执行启动命令的时候,大坑、小坑不断的出现,本章节主要通过罗列出现的问题,最后放出最优的解决方法。

2.1 小坑:在命令行执行 cmd startup.cmd 没有反应

在 nacos 官网文档中,Windows 操作系统启动 nacos 的命令

cmd startup.cmd

问题现象

启动nacos无响应

不知是否因为是 win10 的原因,建议阿里的相关程序员能够看到这,完善快速手册,避免小白踩坑。

解决方法: 直接在 cmd 中输入startup.cmd回车即可

2.2 大坑: 启动失败,提示java.io.IOException: java.lang.IllegalArgumentException: db.num is null

问题现象: 控制台中出现db.num is null的错误提示信息

db.num is null

解决方法: 参考 nacos 的 issues 中找到了解决办法,需要在启动时,指定启动的模式

如果是非单机模式启动 默认使用 mysql 作为外置数据库,此时需要到 conf/application.properties 内添加 mysql 的相关配置参数。否则就会去找 jdbc.properties,两者都没有,那相当于依赖没有启动成功,自然就启动不起来。解决方法是启动时加上 -p embedded 使用 derby + jraft 的内嵌数据库,或者-m standalone 启动单机模式

修改启动代码,可以在下面的代码中任选其一进行执行,在这里直接选择了单机模式。

# 使用derby +jraft的内嵌数据库启动集群模式startup.cmd -p embedded# 使用 -m standalone 启动单机模式startup.cmd -m standalone

2.3 大大坑:使用 mysql 数据库的集群模式,提示java.net.UnknownHostException

使用 mysql 数据库启动集群模式,需要将相关的 sql 脚本在数据库中进行执行 **第一步:**创建数据库:nacos **第二步:**创建相关表,可以执行脚本conf/nacos-mysql.sql,创建相关表以及导入相关数据 **第三步:**修改配置文件,修改conf/application.properties,将 Config Module Related Configurations 注释的内容释放

#*************** Config Module Related Configurations ***************#### If use MySQL as datasource:spring.datasource.platform=mysql### 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=UTCdb.user=rootdb.password=123456

**第四步:**执行startup.cmd

问题出现了,在命令窗口中,出现了错误,提示java.net.UnknownHostException: jmenv.tbsite.net

UnknownHostException

解决方法

复制 conf/cluster.conf.example 到 conf/cluster.conf 设置 ip 和端口 重启服务

修改代码如下:

#it is ip#example127.0.0.1:8847

终于看到成功启动的标识了

集群模式启动成功

三、验证一下

nacos 启动成功后,会启用一个 web 程序,默认端口号为:8848(珠穆拉玛峰的高度,还是阿里会找端口号),可以修改 conf/application.properties 中的server.port 设定自定义的端口号,直接访问 http://localhost:8848/nacos/

登陆界面

使用用户名:nacos,密码:nacos 可登陆系统

节点列表

如果使用单机模式的情况,节点列表中只有一个节点 IP,截图中节点为启动集群模式,修改 conf/cluster.conf 后,启动 nacos,节点列表中会出现一个 down 的节点

Down节点

这是因为该节点没有启动,只需要将 nacos 文件夹复制一份,修改 conf/application.properties 的server.port,使用相同方式启动即可。

四、总结

在安装 nacos 遇到的问题,都可以在度娘中找到答案,由于 nacos 的不断更新,使用新版本的 nacos 遇到的问题,最好到nacos 的 github 主页[2]中 issue 搜索,基本上都可以找到解决办法,如果在度娘和 github 上都无法找到解决办法,需要我们深入 nacos 的源码,查看具体原因。

最后也建议阿里的同事能够将文档更新到最新版本,避免大家走弯路。

参考文献

[1] nacos 最新稳定版本列表: https://github.com/alibaba/nacos/releases

[2] nacos 的 github 主页: https://github.com/alibaba/nacos

[3] Nacos 快速开始: https://nacos.io/zh-cn/docs/quick-start.html

[4] nacos1.3.2 无法启动: https://github.com/alibaba/nacos/issues/3529

[5] Caused by: java.net.UnknownHostException: jmenv.tbsite.net: https://github.com/alibaba/nacos/issues/2902

linux nacos启动_nacos初体验-踩坑与填坑篇相关推荐

  1. Linux启动nacos成功日志_nacos初体验踩坑与填坑篇

    点击上方"蓝字"关注我们 最近在看 RuoYi 的分布式微服务架构权限管理系统,RuoYi 的注册中心和配置中心都是采用 alibaba 的 nacos,本文主要介绍使用 Wind ...

  2. linux nacos启动_Nacos集群安装配置

    上篇文章讲到Nacos从v1.3.2开始,windows系统启动脚本默认改成了集群模式(也就是不带参数"-m standalone"),那么如果双击startup.cmd启动就会失 ...

  3. jQuery Mobile使用中遇到的坑!填坑很难,但很有成就感。。

    jQuery Mobile使用中遇到的坑!填坑很难,但很有成就感.. 最近参与到一个项目的前端开发中,为了提高用户体验使用到了jQuery Mobile.主要是用到了页面过渡效果,这种效果可以做到页面 ...

  4. Ubuntu安装搜狗输入法以及入坑和填坑教程(多图!全!)

    本人招坑体质,Ubuntu下安装搜狗输入法尝试了两种安装方法,入了两次坑,在论坛和度娘那看了好多方法,备受摧残之后终于装上了,于是总结了一个比较全面的图文并茂的教程. 我用的Ubuntu版本是16.0 ...

  5. WebBrowser,挖坑,跳坑,填坑

    最近在 C# Asp.net 平台上的一个项目中用到了 WebBrowser 控件.自然而然就进入了 一连串的坑了.用网络上一同行的话"用WebBrowse,就是在给自己挖坑". ...

  6. Hadoop集群启动、初体验

    1. 启动方式 要启动Hadoop集群,需要启动HDFS和YARN两个集群. 注意:首次启动HDFS时,必须对其进行格式化操作.本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的. h ...

  7. nacos启动_nacos微服务注册中心

    nacos主要可作为微服务架构中 动态服务发现.服务配置.服务元数据及流量管理 快速使用方法:(k8s集群内) 1.下载包,并解压放到服务器,准备用dockerfile打包镜像 FROM 192.16 ...

  8. 我的GO+语言初体验-Go+入门安装避坑手册

    一.入门简介 英文介绍 For engineering: working in the simplest language that can be mastered by children. For ...

  9. 从Myeclipe转向Idea,各种遇坑与填坑经验,持续更新(图文)

    我相信超过90%的java开发人员在刚开始学习java的第一个ide都是eclipse,没错,我也是,并且在工作过后,公司用的是Myeclipse,操作习惯其实和eclipse无差.有些人由于某些原因 ...

最新文章

  1. 一些JSON相关的函数
  2. 差点败北!B站疯传3W次,堪称最强Java面试题,顺利拿下阿里P7的35K*16 薪 Offer...
  3. win7下不能替换系统文件的解决办法
  4. 微信小程序家庭记账本开发进度二
  5. 展讯召开2017全球合作伙伴大会,发布两款新平台及新战略
  6. 特斯拉AI Day首秀:FSD终极进化?AI超算Dojo、D1芯片、人形机器人亮相!
  7. 怎样呵护友谊_呵护友谊需要学会尊重对方.PPT
  8. java删除文件和文件夹
  9. 20140419-MCSA 2012 Server R2 Command
  10. 新浪微博共享登录后无法退出切换账号问题解决
  11. 傅立叶变换、Gabor变换与小波变换
  12. 许昌一高2021年高考成绩查询,2020年许昌高中高考成绩怎么样啊??
  13. 未能解析主引用“Fiddler”,因为它是针对“.NETFramework,Version=v4.6.1”框架生成的。该框架版本高于当前目标框架“.NETFramework,Version=v4.5
  14. Ubuntu上MPI编程环境部署
  15. edge打开pdf不显示印章_一旦碰到Edge浏览器打不开pdf文件,只需这样做就可完美解决!...
  16. php什么框架,php快速开发用什么框架
  17. 作为一个程序员,你是怎么管理文档资料的?我这个方法特别方便
  18. 大型网站Mysql的演变史
  19. 中国教育信息化行业发展价值分析与运营前景展望报告2022版
  20. 测量地球半径的古希腊方法

热门文章

  1. Java中List.remove报UnsupportedOperationException异常
  2. 日常工作问题解决:rhel7下配置多路径设备
  3. npm缺少css-loader,/style-compiler,stylus-loader问题,npm没有权限无法全局更新问题【已解决】
  4. MacBook Pro休眠掉电、耗电量大问题解决方案
  5. JavaScript数学,四舍五入到小数点后两位[重复]
  6. 如何识别未使用的CSS定义[关闭]
  7. 4、通过uiautomatorviewer实现appium元素定位
  8. 学习 spring-boot (一)
  9. 2013 年最不可思议的 10 个硬件开源项目
  10. 适合自己的vim配置文件