开发者社区 > 云原生 > 正文

chaosblade-box 部署后web页面访问频繁返回500

我在一台离线服务器上部署chaosblade-box,
安装官方文档指导,部署了ansible,expect,mysql,准备了java 环境(1.8.0-292),部署的chaosblade-box 的版本是 1.0.0。
在启动之后,在 web 页面访问,频繁返回 500报错。
查看 log,先是报错了
“org.quartz.JobPersistenceException: Couldn't store trigger 'DEFAULT.1753259054709309442_trigger' for 'DEFAULT.1753259054709309442' job:Table 'chaosblade.t_chaos_m_quartz_paused_trigger_grps' doesn't exist”
后面继续报错
"
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.alibaba.chaosblade.box.common.infrastructure.exception.PermissionDeniedException] with root cause

com.alibaba.chaosblade.box.common.infrastructure.exception.PermissionDeniedException: null
"

按照之前的提问,从启动配置,java 依赖,log 查找异常,但没有结果,请帮忙看看我这个问题的原因?如何解决?

展开
收起
游客2wajjgplfprio 2024-02-02 13:39:43 310 0
4 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    根据您提供的信息,这个问题可能是由于数据库表不存在导致的。您可以尝试以下步骤来解决这个问题:

    1. 登录到MySQL数据库,执行以下命令创建缺失的表:
    CREATE TABLE `chaosblade`.`t_chaos_m_quartz_paused_trigger_grps` (
      `SCHED_NAME` varchar(120) NOT NULL,
      `TRIGGER_GROUP` varchar(200) NOT NULL,
      PRIMARY KEY (`SCHED_NAME`,`TRIGGER_GROUP`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    1. 重启Chaosblade-box服务,查看是否仍然出现500错误。

    如果问题仍然存在,请检查您的配置文件和日志,确保所有设置都是正确的。如果仍然无法解决问题,建议您联系Chaosblade-box的技术支持寻求帮助。

    2024-02-04 13:45:04
    赞同 展开评论 打赏
  • 登录到ChaosBlade-Box所在的服务器,检查其运行日志(例如:Tomcat、Nginx、应用程序日志等),找到500错误的具体原因。

    2024-02-02 19:01:43
    赞同 展开评论 打赏
  • 根据您提供的日志信息,报错提示数据库表't_chaos_m_quartz_paused_trigger_grps'不存在,这说明ChaosBlade-Box在启动过程中尝试访问的数据库表结构不完整。解决方法是检查数据库初始化脚本是否完整执行,确保所有必要的表结构都已经正确建立。对于后续的"PermissionDeniedException"异常,可能是权限验证环节出现问题,确认用户账号是否有足够的权限操作相关资源,按照ChaosBlade-Box的部署文档检查并配置正确的权限设置。

    2024-02-02 16:09:20
    赞同 展开评论 打赏
  • 你在部署ChaosBlade-Box过程中遇到了两个问题:

    1. 第一个错误:“org.quartz.JobPersistenceException: Couldn't store trigger... Table 'chaosblade.t_chaos_m_quartz_paused_trigger_grps' doesn't exist”表明 Quartz Scheduler 在尝试持久化触发器到数据库时找不到所需的表。这是因为ChaosBlade-Box启动时,Quartz Scheduler试图访问的数据库表尚未创建。你可以检查一下ChaosBlade-Box的数据库初始化脚本是否已成功执行,以确保所有必需的表已经存在于数据库中。

    2. 第二个错误:“PermissionDeniedException”表示在处理请求时出现了权限拒绝异常。这可能是由于认证授权模块在处理请求时出现问题,例如用户权限不足或配置不当。请检查以下内容:

      • ChaosBlade-Box的配置文件中关于认证和授权的相关设置是否正确;
      • 用户账号和密码是否正确配置,并且拥有足够的权限访问所需资源;
      • 如果ChaosBlade-Box与外部身份验证系统集成,确保该系统返回的有效token可以正确解析并赋予相应权限。

    解决步骤:

    1. 确保数据库初始化完成:根据ChaosBlade-Box的官方文档指引,执行数据库初始化脚本,创建所有必要的表结构。

    2. 检查并修复权限问题:

      • 检查配置文件,确保所有的认证授权配置正确无误;
      • 如果有内置的账户体系,请确认登录账户具有足够的权限;
      • 如果是首次部署,请尝试使用管理员账户登录并确认权限配置。
    2024-02-02 13:50:46
    赞同 展开评论 打赏

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
Web应用系统性能优化 立即下载
高性能Web架构之缓存体系 立即下载
PWA:移动Web的现在与未来 立即下载