mirror of
https://github.com/vmware-tanzu/velero.git
synced 2025-12-23 06:15:21 +00:00
Update the Velero CSI version in csi.md (#7570)
Describe how to support Velero with Kopia, when ReadOnlyRootFilesystem is enabled. Signed-off-by: Xun Jiang <blackpigletbruce@gmail.com>
This commit is contained in:
committed by
GitHub
parent
cd0632c5db
commit
7a9d7a83ed
@@ -24,7 +24,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.3.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.7.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -586,6 +586,47 @@ Velero does not provide a mechanism to detect persistent volume claims that are
|
|||||||
|
|
||||||
To solve this, a controller was written by Thomann Bits&Beats: [velero-pvc-watcher][7]
|
To solve this, a controller was written by Thomann Bits&Beats: [velero-pvc-watcher][7]
|
||||||
|
|
||||||
|
## Support ReadOnlyRootFilesystem setting on Velero server pod
|
||||||
|
### Kopia
|
||||||
|
When the Velero server pod's SecurityContext sets the `ReadOnlyRootFileSystem` parameter to true, the Velero server pod's filesystem is running in read-only mode.
|
||||||
|
If the user creates a backup with Kopia as the uploader, or a backup enabling snapshot data mover function, the backup will fail, because the Kopia needs to write some cache and configuration data into the pod filesystem.
|
||||||
|
|
||||||
|
```
|
||||||
|
Errors: Velero: name: /mongodb-0 message: /Error backing up item error: /failed to wait BackupRepository: backup repository is not ready: error to connect to backup repo: error to connect repo with storage: error to connect to repository: unable to write config file: unable to create config directory: mkdir /home/cnb/udmrepo: read-only file system name: /mongodb-1 message: /Error backing up item error: /failed to wait BackupRepository: backup repository is not ready: error to connect to backup repo: error to connect repo with storage: error to connect to repository: unable to write config file: unable to create config directory: mkdir /home/cnb/udmrepo: read-only file system name: /mongodb-2 message: /Error backing up item error: /failed to wait BackupRepository: backup repository is not ready: error to connect to backup repo: error to connect repo with storage: error to connect to repository: unable to write config file: unable to create config directory: mkdir /home/cnb/udmrepo: read-only file system Cluster: <none>
|
||||||
|
```
|
||||||
|
|
||||||
|
The workaround is making those directories as ephemeral k8s volumes, then those directories are not counted as pod's root filesystem.
|
||||||
|
The `user-name` is the Velero pod's running user name. The default value is `cnb`.
|
||||||
|
|
||||||
|
``` yaml
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: velero
|
||||||
|
namespace: velero
|
||||||
|
spec:
|
||||||
|
template:
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: velero
|
||||||
|
......
|
||||||
|
volumeMounts:
|
||||||
|
......
|
||||||
|
- mountPath: /home/<user-name>/udmrepo
|
||||||
|
name: udmrepo
|
||||||
|
- mountPath: /home/<user-name>/.cache
|
||||||
|
name: cache
|
||||||
|
......
|
||||||
|
volumes:
|
||||||
|
......
|
||||||
|
- emptyDir: {}
|
||||||
|
name: udmrepo
|
||||||
|
- emptyDir: {}
|
||||||
|
name: cache
|
||||||
|
......
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
[1]: https://github.com/restic/restic
|
[1]: https://github.com/restic/restic
|
||||||
[2]: https://github.com/kopia/kopia
|
[2]: https://github.com/kopia/kopia
|
||||||
[3]: customize-installation.md#enable-restic-integration
|
[3]: customize-installation.md#enable-restic-integration
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.3.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.4.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.3.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.5.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.3.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.6.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.3.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.7.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.1.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.2.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ Both of these can be added with the `velero install` command.
|
|||||||
```bash
|
```bash
|
||||||
velero install \
|
velero install \
|
||||||
--features=EnableCSI \
|
--features=EnableCSI \
|
||||||
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.1.0 \
|
--plugins=<object storage plugin>,velero/velero-plugin-for-csi:v0.2.0 \
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user