前言
这两天因为想将自己的项目部署在云服务器上,需要安装Nacos,然后部署后使用JAVA连接Nacos碰到了一些问题,索性记录下来。
分析解决问题
问题情况
一般有两种情况,一种是控制台连接不上,另一种是SpringBoot工程连接Nacos异常(ConnectionException),然后具体跟着以下这几个步骤来就行了,
步骤一
首先不管是哪种异常,都要确保服务器IP+端口是能够被正常访问的,这里如果不知道怎么测试可以去搜下telnet或者nmap,如果发现不能被正常访问,做以下这几件事
1、检查服务器防火墙是否打开对应的端口,8848和9848,以及服务器对应的安全组
2、如果安装了宝塔的话,宝塔也要放行端口,添加位置如下图
3、一般nacos安装下来,控制台要带个/nacos才访问的到,比如 127.0.0.1:8848/nacos,这个相关配置在nacos的conf文件里的application.properties文件中可以看得到
到此基本上控制台是肯定能访问的到的,如果JAVA依然连接不上Nacos的话,接着下面的步骤走
步骤二
到了这一步,基本上就是JAVA依然连接不上NACOS,那可能有的人会疑惑,为啥我控制台能访问,但是JAVA还是连接不上NACOS,这里其实JAVA连接NACOS的端口是9848,其实从JAVA控制台报错就可以看的出来,直接在控制台搜索你连接NACOS的IP地址就行了,下图可以看到说9848端口不可用,把这个端口放开就可以连接上了,跟步骤一操作一样
步骤三
到了这一步,如果确定前面的步骤都执行完了还是JAVA连接NACOS不上的话,基本就是版本问题了,一定要确保你的SpringCloudAlibaba的版本与Nacos版本对的上,不能太低或太高,我自己是碰到过这个问题的,因为版本太低了导致连接不上