nacos部署报错(各种奇葩超级坑啊)及openjdk设置JAVA

您所在的位置:网站首页 yum安装openjdk11 nacos部署报错(各种奇葩超级坑啊)及openjdk设置JAVA

nacos部署报错(各种奇葩超级坑啊)及openjdk设置JAVA

2023-09-12 21:32| 来源: 网络整理| 查看: 265

今天算是把nacos的奇葩坑踩了个遍,做个归总吧,留个下一个被折磨的幸运儿

首先,如果你用

sh ./startup.sh 出现错误,那么请先尝试: sh ./startup.sh -m standalon(设置单机模式,nacos默认集群模式) 若仍然报错,请尝试: bash -f ./startup -sh -m standalon

如果经过上面跑通了,nacos注册中心也能正常访问,恭喜你。没跑通的倒霉蛋就往下看看吧。

今天踩的这几个坑吧,奇葩,网上已经发布过的那些常见坑一个都没遇到,呜呜呜 坑点1:当你使用的是openjdk而不是jdk

当进入/nacos/bin进行启动时,如出现: 在这里插入图片描述 最后一行: ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! jdk8 or later is better! !! 这里是讲你的JAVA_HOME路径没有设置对,或者你的jdk版本不对,如果你用的是jdk的话,网上可以很轻松的查到设置流程、方法。如果是openjdk的话,就继续看吧!

随着java的发展,openjdk的使用越来越普遍,其与jdk还是有不少差别,比如版本10以上的openjdk是没有jre的,那么你只能设置JAVA_HOME,就不要想着去按格式copy别人的那一套了。

export JAVA_HOME=***

当然,如果你仍然需要jre的话,应当也是有解决办法的: (摘自其他)

在java根目录下执行: sudo bin/jlink --module-path jmods --add-modules java.desktop --output jre 生成对应的JRE

言归正传,大部分情况下只设置JAVA_HOME足够了 下面是确定路径的过程:

which java

一般情况下你会得到输出:/usr/bin/java 继续:

ls -lrt /usr/bin/java

得到输出:/usr/bin/java -> /etc/alternatives/java 继续

ls -lrt /etc/alternatives/java

得到输出:/etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-amd64/bin/java 这个时候我们已经得到了java的安装路径:

/usr/lib/jvm/java-11-openjdk-amd64

如图 那么,终端vim /etc/profile 在文件底部插入

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 保存退出后在当前终端: source /etc/profile 使设置生效

最后再次启动nacos,查看问题是否解决,如果得到解决,恭喜你!!!

坑点2:

看似启动成功,但出现了 /nacos/logs/start.out: Permission denied 在这里插入图片描述 Permission denied,即权限问题,你的启动日志不能运行,这一点在实际情况中可能并不影响nacos的各种操作,但是以防万一,以及为了你以后的工作中遇到问题便于解决,还是改了吧 解决如下:

1.第一点想到的当然是加个sudo,操作后果然出错:

仔细想想的话,加个sudo当然不会成功,sudo仅对你当前的操作提升权限,而在执行.sh后之后进程仍是以用户身份进行。 但是同时我们也能看到在普通权限下,我们不能访问的仅有一个文件,即start.out 在这里插入图片描述 那么,改权限呗! 进入logs文件夹,ls -l查看,果然,这里文件所有者均为root,这种情况下一般默认我们普通用户不可操作该文件 在这里插入图片描述 那么:sudo chmod 777 start.out (我这里直接将整个logs目录的权限更改了:sudo chmod 777 -R logs 我是懒,怕生幺蛾子,你尝试一下如果只对start.out更改后可成功运行nacos,那么就不要改整个logs目录啦) 这里更改完成后进行测试:

bash -f ./startup -sh -m standalon

在这里插入图片描述 好的!很精神!!我们成功了。哈哈哈,开个玩笑,有些时候这里只是看起来成功了哈哈哈 如果你访问127.0.0.1:8848成功,那么你可以走啦,没有的话接着往下看吧

3.又是一个坑:nacos启动后无法访问注册中心!!!

图我忘记截屏了: 页面大概输出就是这样的信息:

Firefox can't establish a connection to the server at ip:port

首先,这情况的话查看你的防火墙是否关闭,没有关闭的关一下,然后再次测试,当然,,,这玩意一般是默认关闭的 那么接下里查一查端口吧 我们知道,nacos默认使用8848端口,那么考虑一下是否端口冲突了,冲突的话你换个端口就行了 修改默认端口的话,在nacos文件夹中:vim /conf/application.properties进行修改

sudo netstet -anp|grep 8848

在这里插入图片描述 如图,8848端口根本就没开,,,晕了啊,服务不是启动了吗,难受 这时候咋个办嘞,su切入root执行nacos启动!!! 进入root目录下与用户目录下使用sudo执行命令时还是有很多不同的,要我解释的话也不太能叙述整套完备的逻辑,目前还在继续探索中 权限的问题很奇妙,我单纯的想象为:在对某个文件进行简单修改如执行vi/vim时这两种情况并无太多不同,但是当你执行如脚本文件之类的时候,还会引发对一系列文件的操作,这时对其他文件的我们可能并没有权限去调用执行,这种情况下sudo并不如我们之间进入root来执行舒服的多。

直接看执行结果吧: 在这里插入图片描述

首先,source /etc/profile一下,将修改的环境变量也应用到root中,不然要出错的 然后启动nacos,我们看到nacos成功启动 最关键一步:看看端口起来了没?!!!! 在这里插入图片描述 这里我搞错了,应该用netset来查端口状态,然后我中间换了个端口8849

好嘛,赶紧访问127.0.0.1:8849看看

好嘛、http404.。。。。。 在这里插入图片描述 刚开始给我吓一跳,咋又出幺蛾子啦,后来查了一下虚惊一场 端口后加个/nacos试试! 在这里插入图片描述 成功!!十分精神! 最后查一下端口情况: 在这里插入图片描述 一切正常!圆满完成。

一些常见的出错我这里没写了,一般都可以在网上查到! 累死我了,各位看官如果也遇到了一些奇葩的棘手的问题,欢迎发布到评论区,大家一起讨论!



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3