
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Kube-backup是一款将Kubernetes集群资源状态备份到Git仓库的工具。它能够自动拉取远程Git仓库,保存Kubernetes资源状态,生成结构化的备份文件,并提交、推送变更至远程仓库,实现集群资源的版本控制与历史追踪,便于灾难恢复和配置审计。
备份文件在Git仓库中按以下结构组织:
_global_ - 全局资源,如Node、ClusterRole、StorageClass等 _grafana_ - Grafana配置(启用Grafana时) <namespace> - 命名空间,如kube-system、default等 <ResourceType> - 资源类型文件夹 <resource-name.yaml> - 单个资源文件
部署所需的YAML清单位于https://github.com/kuberhost/kube-backup/tree/master/deploy%E3%80%82
GitHub和GitLab支持为单个仓库添加访问密钥:
ssh-keygen -f ./new_key推荐通过Kubernetes CronJob定期执行备份。如需立即测试,可修改CronJob调度时间或使用相同参数创建临时Pod。
kube_backup backup:拉取远程Git仓库,保存Kubernetes资源状态,在本地仓库创建提交kube_backup push:将本地提交推送到远程仓库kube_backup help:显示帮助信息默认行为:Docker镜像默认执行kube_backup backup && kube_backup push
通过环境变量配置备份行为:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
GIT_REPO_URL | 远程Git仓库URL(如git@github.com:user/repo.git) | (必填) |
BACKUP_VERBOSE | 启用详细日志(1为启用) | - |
TARGET_PATH | 本地Git仓库目录 | ./kube_state |
SKIP_NAMESPACES | 排除的命名空间(逗号分隔) | - |
ONLY_NAMESPACES | 白名单命名空间(逗号分隔) | - |
GLOBAL_RESOURCES | 全局资源列表(覆盖默认) | node, apiservice, clusterrole, clusterrolebinding, podsecuritypolicy, storageclass, persistentvolume, customresourcedefinition, mutatingwebhookconfiguration, validatingwebhookconfiguration, priorityclass |
EXTRA_GLOBAL_RESOURCES | 添加到全局资源列表的资源 | - |
SKIP_GLOBAL_RESOURCES | 排除的全局资源 | - |
RESOURCES | 命名空间资源默认列表(见KubeBackup::TYPES) | - |
EXTRA_RESOURCES | 添加到命名空间资源列表的资源 | - |
SKIP_RESOURCES | 排除的资源类型 | - |
SKIP_OBJECTS | 排除的单个对象(格式:namespace/ResourceType/name,逗号分隔) | - |
GIT_USER | Git提交用户 | kube-backup |
GIT_EMAIL | Git提交*** | kube-backup@$(HOSTNAME) |
GIT_BRANCH | Git分支 | master |
GIT_PREFIX | 仓库中子目录路径 | - |
GRAFANA_URL | Grafana API URL(如https://grafana.example.com) | - |
GRAFANA_TOKEN | Grafana API令牌(在Grafana的/org/apikeys创建) | - |
TZ | 提交时间时区(如Europe/Berlin) | - |
为避免中间人***,建议提供known_hosts文件。默认known_hosts包含github.com、gitlab.com和bitbucket.org的密钥。
若集群包含自定义资源(如Prometheus、CertManager相关CRD),可通过环境变量添加到备份范围:
bash# 列出所有CRD kubectl get crd # 获取更详细的CRD信息(需jq工具) kubectl get crd -o json | jq -r '.items | (.[] | [.spec.names.singular, .spec.group, .spec.scope]) | @tsv'
在容器规格中添加环境变量:
yamlenv: - name: EXTRA_GLOBAL_RESOURCES value: "clusterissuer" # 集群级CRD(scope=Cluster) - name: EXTRA_RESOURCES value: "alertmanager, prometheus, prometheusrule, servicemonitor, certificate, issuer" # 命名空间级CRD(scope=Namespaced)
特别感谢Pieter Lange提供的https://github.com/pieterlange/kube-backup/%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。






来自真实用户的反馈,见证轩辕镜像的优质服务