No description
  • Go 66.4%
  • Shell 14.4%
  • Makefile 14.1%
  • Dockerfile 2.5%
  • Smarty 2.1%
  • Other 0.5%
Find a file
mergify[bot] be496992af
Merge pull request #226 from backube/dependabot/go_modules/sigs.k8s.io/controller-runtime-0.13.0
Bump sigs.k8s.io/controller-runtime from 0.12.3 to 0.13.0
2022-09-07 12:39:49 +00:00
.ci-scripts Add a release checklist 2021-07-29 12:26:43 -04:00
.github Bump github/codeql-action from 2.1.21 to 2.1.22 2022-09-05 14:00:49 +00:00
api/v1 Upgrade to osdk 1.11.0 2021-12-13 13:12:17 -05:00
bundle Update OLM bundle for v3.1 release 2022-08-01 09:54:46 -04:00
config Update OLM bundle for v3.1 release 2022-08-01 09:54:46 -04:00
controllers Switch external-snapshotter client to v6 2022-05-24 10:52:17 -04:00
docs Prep for release v3.1 2022-08-01 09:45:50 -04:00
hack Update to csi-hostpath 1.9 & enable fsGroup 2022-07-26 11:02:56 -04:00
helm/snapscheduler Prep for release v3.1 2022-08-01 09:45:50 -04:00
test-kuttl Move tests closer to meeting PodSecurity restricted 2022-07-21 15:31:56 -04:00
.codecov.yml Trying again w/ codecov comment config 2019-11-08 14:45:46 -05:00
.dockerignore Update dockerignore to not interfere w/ bundle generation 2021-07-21 12:20:31 -04:00
.gitignore Update ghactions to ubuntu-20.04 2020-12-02 14:51:35 -05:00
.golangci.yml Update tools 2021-12-13 13:43:10 -05:00
.mergify.yml ci(Mergify): configuration update 2022-05-23 15:41:42 -04:00
bundle.Dockerfile Update bundle files 2022-06-21 12:52:47 -04:00
CHANGELOG.md Prep for release v3.1 2022-08-01 09:45:50 -04:00
DCO Add DCO file 2019-08-27 20:04:26 -04:00
Dockerfile Update to go 1.18 & kube 1.24 2022-05-23 13:55:29 -04:00
go.mod Merge branch 'master' into dependabot/go_modules/sigs.k8s.io/controller-runtime-0.13.0 2022-09-07 12:31:52 +00:00
go.sum Merge branch 'master' into dependabot/go_modules/sigs.k8s.io/controller-runtime-0.13.0 2022-09-07 12:31:52 +00:00
LICENSE Add license 2019-08-02 11:29:12 -04:00
main.go Upgrade to operator-sdk 1.22 2022-06-21 12:50:43 -04:00
Makefile Make e2e debugging easier by leaving failed resources 2022-07-21 15:30:56 -04:00
PROJECT Upgrade to operator-sdk 1.9.0 2021-07-15 11:04:18 -04:00
README.md Fix artifact hub link in readme 2021-07-30 08:53:06 -04:00
release-checklist.md Add annotation for min OpenShift version 2022-04-01 11:21:24 -04:00
SECURITY.md Document use of ResourceQuota to limit snapshots 2020-01-17 14:36:14 -05:00

SnapScheduler

Build
Status Go Report
Card codecov

SnapScheduler provides scheduled snapshots for Kubernetes CSI-based volumes.

Quickstart

Install:

$ helm repo add backube https://backube.github.io/helm-charts/
"backube" has been added to your repositories

$ kubectl create namespace backube-snapscheduler
namespace/backube-snapscheduler created

$ helm install -n backube-snapscheduler snapscheduler backube/snapscheduler
NAME: snapscheduler
LAST DEPLOYED: Mon Jul  6 15:16:41 2020
NAMESPACE: backube-snapscheduler
STATUS: deployed
...

Keep 6 hourly snapshots of all PVCs in mynamespace:

$ kubectl -n mynamespace apply -f - <<EOF
apiVersion: snapscheduler.backube/v1
kind: SnapshotSchedule
metadata:
  name: hourly
spec:
  retention:
    maxCount: 6
  schedule: "0 * * * *"
EOF

snapshotschedule.snapscheduler.backube/hourly created

In this example, there is 1 PVC in the namespace, named data:

$ kubectl -n mynamespace get pvc
NAME   STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS      AGE
data   Bound    pvc-c2e044ab-1b24-496a-9569-85f009892ccf   1Gi        RWO            csi-hostpath-sc   9s

At the top of each hour, a snapshot of that volume will be automatically created:

$ kubectl -n mynamespace get volumesnapshots
NAME                       AGE
data-hourly-202007061600   82m
data-hourly-202007061700   22m

More information

Interested in giving it a try? Check out the docs.

The operator can be installed from:

Other helpful links:

Licensing

This project is licensed under the GNU AGPL 3.0 License with the following exceptions: