运营商(horus-operator
一个使用restic备份工具的操作者,通过restic备份工具从k8s PVC备份/还原/迁移到S3/Minio/Ceph/NFS。
说明
有四个API:
GroupVersion: storage.hybfkuf.io/v1alpha1, Kind: BackupGroupVersion: storage.hybfkuf.io/v1alpha1, Kind: RestoreGroupVersion: storage.hybfkuf.io/v1alpha1, Kind: MigrationGroupVersion: networking.hybfkuf.io/v1alpha1, Kind: Traffic
API描述。
开始使用
你需要一个Kubernetes集群来对抗运行。你可以使用KIND获得一个本地集群进行测试,或者针对一个远程集群运行。**注意:**你的控制器将自动使用你的kubeconfig文件中的当前上下文(即任何集群kubectl cluster-info 显示)。
在集群上运行
- 安装自定义资源的实例:
kubectl apply -f config/samples/
- 构建并推送你的镜像到
IMG指定的位置:
make docker-build docker-push IMG=<some-registry>/horus-operator:tag
- 用
IMG所指定的镜像将控制器部署到集群上:
make deploy IMG=<some-registry>/horus-operator:tag
卸载CRD
要从集群中删除CRD:
make uninstall
卸载控制器
卸载控制器到集群上:
make undeploy
贡献
// TODO(用户)。添加详细的信息,说明你希望别人如何为这个项目做贡献
它是如何工作的
本项目旨在遵循Kubernetes运营商的模式
它使用了控制器,提供了一个协调功能,负责同步资源,直到集群上达到所需的状态。
测试一下
- 在集群中安装CRD:
make install
- 运行你的控制器(这将在前台运行,所以如果你想让它运行,请切换到一个新的终端):
make run
注意:你也可以通过运行以下程序一步到位。make install run
修改API定义
如果你正在编辑API定义,请用以下方法生成清单,如CRs或CRD:
make manifests
注意:运行make --help ,了解所有潜在的make 目标的更多信息
更多信息可以在Kubebuilder文档中找到。