12.4.3.7. root_squash を有効にして NFS ストレージから移行する場合の Restic パーミッションエラー
NFS ストレージからデータを移行していて、root_squash が有効にされている場合、Restic は nfsnobody にマップされ、これには移行を実行するパーミッションがありません。Restic Pod ログには以下のエラーが表示されます。
Restic パーミッションエラー
backup=openshift-migration/<backup_id> controller=pod-volume-backup error="fork/exec
/usr/bin/restic: permission denied" error.file="/go/src/github.com/vmware-tanzu/
velero/pkg/controller/pod_volume_backup_controller.go:280" error.function=
"github.com/vmware-tanzu/velero/pkg/controller.(*podVolumeBackupController).processBackup"
logSource="pkg/controller/pod_volume_backup_controller.go:280" name=<backup_id>
namespace=openshift-migration
Restic の補助グループを作成し、グループ ID を MigrationController CR マニフェストに追加して、この問題を解決することができます。
手順
-
NFS ストレージで
Resticの補助グループを作成します。 -
NFS ディレクトリーに
setgidビットを設定して、グループの所有権が継承されるようにします。 restic_supplemental_groupsパラメーターを、ソースおよびターゲットクラスターのMigrationControllerCR マニフェストに追加します。spec: restic_supplemental_groups: <group_id>1 - 1
- 補助グループ ID を指定します。
-
ResticPod が再起動し、変更が適用されるまで待機します。