目前公司在KVM虚拟出来的虚拟机是双ip,即一个floating ip 和一个虚拟机用的 fixed ip。在安装jboss应用服务器时,host.xml配置文件必须指定管理应用服务器的管理ip,这时在配置问题上,有了难题:
具体分析如下:
1、如果host.xml配置文件配置管理ip为floating ip,能外面能访问到该管理服务器,但是在启动JBoss AS7时,发现报错。
JBoss AS7报错为:host.xml 里的management ip configure error. 这说明jbossAS7在KVM虚拟机里配置管理ip时需要默认指定KVM fixed ip。
2、当JBoss AS7 host.xml 配置文件的ip 指定为KVM 虚拟机内部ip的时候,这时候启动,发现一切正常,能正常启动,在adduser 之后,这时很高兴的在外面机器的浏览器输入:9990 去登陆JBoss AS7控制台时,发现
无法连接控制台。这时回想,原来是KVM fixed ip 是无法被外部访问的。
3、如何解决这个问题,通过询问KVM管理人员之后发现,原来KVM fixed ip是通过一种网络映射到外部的ip方式,在KVM管理虚拟机时,只需要做好虚拟机这个fixed ip与floating ip 相互直接的映射,就可以通过JBoss AS7 配置KVM fixed ip,而在外面
通过KVM floating ip加JBoss7管理端口9990来进行访问。
4、在设置过KVM 映射、JBoss AS7 配置之后,还是无法通过KVM 外部机器访问,这时就需要检查你的防火墙是否拦截你的9990、8080、9999 端口,这种情况下只需要关闭虚拟机的防火墙就能解决问题了。
注意事项:如果jboss 的port-offset端口偏移量存在值,则JBoss 的9990、8080、9999端口就为9990+port-offset、8080+port-offset、9999+port-offset值,这些端口在防火墙确保开启。
解决办法有2种,关闭防火墙或者在防火墙规则里添加相应的端口。