苍穹服务启动报错,can not find the bos.xml file原创
金蝶云社区-吴辉宇
吴辉宇
9人赞赏了该文章 1,963次浏览 未经作者许可,禁止转载编辑于2021年12月20日 09:43:19

苍穹服务启动,提示找不到bos.xml,导致服务启动失败。那么我们应该怎么定位问题原因呢?

  1. 首先,我们需要了解下苍穹启动过程,苍穹服务启动,第一步读取setenv.sh配置环境变量,第二步从appstore拉取苍穹的依赖包,第三步引用第二步下载的苍穹依赖包,调用服务启动。具体可查看start.sh/start.bat脚本。

    图片.png

  2. 既然苍穹的jar包,都是从appstore拉取的,那么日志提示bos.xml找不到,那就是appstore出了问题,我们的关注点在appstore上。

  3. 确认苍穹服务配置的appstore地址是什么,在苍穹服务bin目录下,找到setappenv.sh,查看文件找到appstore地址。

    图片.png

  4. 根据第三步获取到的地址,我们拼接出bos.xml的访问路径,因为bos.xml属于bos的,因此访问地址应该是APPSTORE_URL/bos/bos.xml,例如:http://127.0.0.1:8090/appstore/cosmic/bos/bos.xml

  5. 在服务后台通过curl访问第四步拼接的地址,就可以判断出是什么原因导致bos.xml下载不了。


情况分析
问题原因
解决方案
访问地址等待很久一直没响应8090端口未开放,一般这种问题出现在云服务较多,可以通过telnet IP port命令,进一步确认。
  1. 配置安全组,开放8090端口

  2. 修改appstoe地址,改成内网IP。

访问返回404
appstore不存在,安装nginx执行installnginx-appstatic.sh失败,或者没有软连接到/var目录。确认/var/appstatic下目录结构。
  1. 若/var/appstatic为空,则到苍穹安装目录nginx-appstatic下执行installnginx-appstatic.sh脚本。

  2. 若已安装,则通过ln -s 安装目录/nginx-appstatic/appstore/appstatic /var 挂载软连接。

访问报502
5xx,服务器异常,确认第四步拼接的地址是否正确,nginx默认关闭索引参数,可开启参数确认地址
找到nginx的配置文件,搜mc.conf,修改mc.conf,找到/appstore,将autoindex_localtime和autoindex值设置为on。重启nginx即可在浏览器直接访问appstore,按目录找到bos.xml


赞 9