经典应用服务常见问题

经典应用服务支持哪些操作系统?

技术栈 1.0 架构应用仅支持 Centos 6.5 版本操作系统的服务器自动化发布。

技术栈 2.0 架构应用可支持 Centos 6.5 与 7.2 版本操作系统的服务器自动化发布。

用户可通过自定义技术栈来支持其他操作系统发布。

发布单或运维单为什么初始化失败?

初始化发布单会检测应用的服务器状态,要求服务器状态是 待发布发布完成发布中发布失败。 初始化失败可能的原因如下:

  • 应用下未创建服务器。

  • 服务器状态不是允许发布的状态,如 创建中已关机重启中 等。

如何部署应用?

经典应用服务提供应用发布及回滚的功能,您可以编辑待发布应用的依赖关系及服务器分组,选择发布策略。在部署大盘页面可新建发布单。

  1. 在发布大盘界面,单击 新建发布,进入 发布申请 页面。

  2. 填写发布基本信息后,单击 快速创建,则直接创建应用的发布单,且应用之间无依赖关系。

  3. 若需编辑 部署策略部署参数依赖关系 等信息,单击 编辑高级信息,进入高级信息编辑页面。

  4. 单击 下一步,进入发布单预览界面,确认无误后单击 创建 按钮,创建发布单。

  5. 单击应用,进入应用详情页,可进行分组调整、回滚操作。

云上应用发布完成后如何对外提供访问?

推荐您使用 SLB 挂载多台 ECS 提供对外访问。外部用户访问流量经 SLB IP 转发到后端应用服务器上。

云上应用发布后不是最新代码版本如何处理?

此种情况可能由以下原因导致:

  • 应用发布的版本选择错误,可通过查看应用详情中的代码版本确认是否错误。

  • 用户文件夹权限问题。发布部署服务使用的是 admin 用户权限操作。若您的 app-run 文件夹非 admin 账户所有则会出现此种情况。

排查方法:查看 /home/admin/app-run 目录,使用 ll app-run 命令确认目录是否归 admin 账户所有。

解决方案

  • 直接初始化服务器重新发布。

  • 登录服务器将 app-ru 目录改成 admin 用户权限,再重试发布流程即可。

发布部署过程中为什么分组被自动加锁?

分组被自动加锁,是由于有其他发布单正在发布该分组内的服务器,应用页面顶部会出现提示 该应用下有服务器正在其他发布单XXX发布,单击发布单链接,可查看正在发布的应用。

当正在发布的服务器发布完成后,已加锁的分组可进行解锁继续发布。

如何升级应用的技术栈版本?

在应用详情页面可查看应用的技术栈及技术栈版本。应用的技术栈版本可在部署的过程中升级。具体的升级步骤如下:

  1. 进行新建发布操作,进入发布申请的 编辑高级信息 页。

  2. 编辑高级信息 页,在 部署策略 选项中勾选 升级/降级技术栈。选择要升降级的目标版本,进行发布部署。

如何在创建应用后修改技术栈?

发布部署服务暂不提供直接修改技术栈的功能。如确定需修改,则必须将应用上绑定的各种资源从该应用上解绑,重新创建新的应用,选择目标技术栈,然后再把资源重新分配到新的应用上。

如何排查发布部署执行失败的原因?

排查思路如下:

  1. 查看报错日志,单击分组右侧的 详情,弹出部署各个步骤的详情页面。单击失败步骤右侧的 详情,可展开详细日志。

  2. 应用部署失败的常见原因如下:

    • 应用系统的配置问题,可通过错误日志具体分析。

    • 应用服务检测失败:通常是应用启动失败,可登录到机器上查看具体的部署日志。部署日志的目录为 /home/admin/logs

    • 下载应用失败:通常会出现在上线、回滚、重启的操作中。通常是由于手动修改过服务器的应用包,而上线、回滚、重启操作会对应用包作 md5 校验。处理方法是重新进行部署操作。

    • 关流量、下载脚本包、环境安装、环境配置、开流量的步骤出现失败,请先单击分组右侧的 分组重试。若重试仍然失败,请联系售后技术支持获取帮助。

如何在金融科技 gitlab 的 project 中增加 user?

使用管理员所在租户的成员的金融科技账号添加。因此,如需新增用户必须先有一个该租户下的金融科技账号。

如何自定义技术栈?

自定义技术栈支持 Java、C/C++、PHP 等主流开发语言,您可以自定义技术栈实例,给用户提供常用软件、自定义软件、自定义脚本以及创建代码库、编译打包等功能。

操作步骤如下:

  1. 运维管理 > 应用 > 技术栈 模块,单击 添加

  2. 填写技术栈名称,选择技术栈框架,单击 确定,进入 技术栈实例详情 页面。

  3. 技术栈实例详情 页面,您可进行通用软件配置、自定义软件配置、自定义脚本上传等。

  4. 编辑完成之后,单击 提交,技术栈状态变成 已提交 状态。

    创建应用时即可选择该技术栈实例进行创建。

经典发布失败,但是应用健康检查成功

现象

  • 通过经典应用服务发布,发布单显示应用启动失败,但在相关机器执行健康检查脚本,健康检查成功。

  • 报错信息:HealthCheck Remaining Time 120 seconds.

原因

由于健康检查脚本默认检查 120s,如果应用启动时间超过 120s,发布部署平台认为健康检查超时,返回部署失败。

解决方案

  1. 在 logs 目录下搜索关键字 Started XXX inXXX 替换为应用的启动类),即可在日志中获取应用的启动耗时信息,例如:

    2019-01-2511:32:38,550[-/// - ] INFO  bootstrap.SOFABootWebApplication - Started SOFABootWebApplication in 10.848 seconds (JVM running for 12.085)
  2. 在应用根目录下的 conf/bin/healthcheck.sh 健康检查脚本中,根据应用实际情况,修改健康检查时间。