Curator 5.8.1执行报错:Schema error: expected dict for dictionary value @ data['actions'] 问题排查求助
问题分析与解决
从你提供的重复报错Schema error: expected dict for dictionary value @ data['actions'],可以直接定位到核心问题:你的快照备份动作配置文件 /opt/curator-5.8.1/actions/snapshot_backup.yml 是不完整的空配置。
看你贴出的该文件内容:
# Ansible managed actions: [root@ ~]#
这里的actions键下面没有任何符合Curator要求的动作定义(参考你正常的delete_indices.yml,actions需要是一个包含序号+动作字典的结构),Curator解析配置时找不到预期的字典格式,所以持续抛出这个Schema验证错误。
修复步骤
你需要给snapshot_backup.yml补充完整的快照动作配置,下面是一个基础的可用示例,你可以根据实际需求调整:
# Ansible managed actions: 1: action: snapshot description: >- 对所有索引执行快照备份到指定仓库 options: repository: your_backup_repo_name # 替换为你ES中已创建的备份仓库名 name: snapshot_%Y%m%d%H%M%S ignore_unavailable: False include_global_state: True partial: False wait_for_completion: True filters: - filtertype: pattern kind: regex value: ^.*$ # 匹配所有索引,可根据需求修改 exclude:
配置完成后,建议先手动执行一次命令测试是否正常:
/root/curatorvenv/bin/python3 /opt/curator-5.8.1/run_curator.py --config /opt/curator-5.8.1/curator.yaml /opt/curator-5.8.1/actions/snapshot_backup.yml
确认无报错后,再让cron任务正常运行即可。
内容的提问来源于stack exchange,提问作者prat
相关产品推荐
相关产品推荐

