在 Kubernetes 上运行的 Cassandra 备份

sev*_*ryn 5 database-backups kubernetes

我有一个在 Kubernetes 上运行的 3 个 Cassandra pod 集群。我想自动备份我的数据,为此我需要在每个容器内运行 nodetool snaphot 命令,我需要远程调用它。从架构的角度来看,正确的做法是什么?我是否需要修改 cassandra 映像以在其中包含 ssh 守护程序,或者我是否需要在 cassandra pod 中使用辅助容器或通过“kubectl exec”Kubernetes API 调用来执行此操作?其他选择?

Kon*_*tin 0

我认为 k8scronJob资源 - 是您通过nodetool. 一般来说,cronJobjobTemplate部分,spec内有部分。该spec部分又具有容器定义,几乎与Deployment. 您可以使用其中构建您自己的 docker 映像nodetool(或尝试在 dockerhub 上找到某个位置)并使用您自己的特定配置运行它。

更多信息: https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/