一、问题描述
首先说一下我的问题,我注册的dubbo服务的IP地址是:192.168.52.130,我部署结束之后,访问:http://192.168.52.130:8080是可以访问成功的,但是访问:http://192.168.52.130:8080/dubbo-admin时就报404错误。
二、解决方法
在网上查找了很多方法之后,有的说是jdk、tomcat、dubbo-admin的版本不一致造成的,我只试了将tomcat的版本升级了一下,从原来的7.0.47版本换成了8.5.56版本,但是结果还是一样的。
我是通过重新下载dubbo源码,进行打包,再发布到tomcat上之后成功的。我想有可能是我之前从网上找的现成的:dubbo-admin-2.5.3.war有问题。具体操作步骤如下:
1、下载dubbo源码
可以从https://github.com/apache/dubbo/tree/2.5.x进行下载。
2、打成war包
在cmd.exe中进入到dubbo-admin目录下,输入命令:mvn package -Dmaven.skip.test,出现BUILD SUCCESS则说明打包成功。
打包成功之后会在dubbo-admin/target目录下出现一个war包。
3、部署到tomcat
将打包好的war包复制到linux环境下的tomcat的webapp目录下:注:接下来的顺序很重要,一定要按照该顺序进行。
三、启动zookeeper
1、关闭防火墙
在启动zookeeper之前要关闭防火墙,具体操作为使用命令sudo systemctl stop firewalld关闭防火墙,然后使用sudo systemctl status firewalld查看防火墙状态。
关于防火墙命令:
-
sudo systemctl stop firewalld:暂时关闭,重启centos之后就会失效; -
sudo systemctl disabled firewalld:永久关闭, -
sudo systemctl status firewalld:查看防火墙状态
2、启动zookeeper
进入zookeeper的安装目录的bin目录下,使用命令:.zkServer.sh start来启动zookeeper,启动之后可以使用命令:.zkServer.sh status来查看启动状态。
四、启动tomcat
进入到tomcat的bin目录下,输入命令./startup.sh start来启动tomcat,然后进入tomcat的logs目录下使用命令tail -f catalina.out来查看启动是否成功。
五、访问dubbo-admin
访问dubbo-admin,终于看见了这个界面。
最后说一下我的各个工具的版本供大家参考:
- jdk:1.8
- tomcat:8.5.56
- dubbo-admin.war:2.5.10
- dubbo:2.5.3
- zookeeper:3.4.12