Αντίγραφο ασφαλείας Azure AKS χρησιμοποιώντας το Velero

ψήφοι
28

Παρατήρησα ότι το Velero μπορεί να δημιουργήσει αντίγραφα ασφαλείας AKS PVC μόνο εάν αυτά τα PVC είναι δίσκος και όχι Azure fileshares. Για να το χειριστώ, προσπάθησα να χρησιμοποιήσω το restic για δημιουργία αντιγράφων ασφαλείας από το ίδιο το fileshares αλλά μου δίνει ένα παράξενο αρχείο καταγραφής:

Έτσι φαίνεται το πραγματικό μου pod

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  annotations:
    backup.velero.io/backup-volumes: app-upload
    deployment.kubernetes.io/revision: 17

Και το αρχείο καταγραφής του αντιγράφου ασφαλείας μου:

time=2020-05-20T02:01:09Z level=info msg=Adding pvc upload to additionalItems backup=velero/lbkomas-rocmondriaan-production-20200520020055 cmd=/velero logSource=pkg/backup/pod_action.go:67 pluginName=velero
time=2020-05-20T02:01:09Z level=info msg=Backing up item backup=velero/lbkomas-rocmondriaan-production-20200520020055 group=v1 logSource=pkg/backup/item_backupper.go:169 name=upload namespace=lbkompas-prod resource=persistentvolumeclaims
time=2020-05-20T02:01:09Z level=info msg=Executing custom action backup=velero/lbkomas-rocmondriaan-production-20200520020055 group=v1 logSource=pkg/backup/item_backupper.go:330 name=upload namespace=lbkompas-prod resource=persistentvolumeclaims
time=2020-05-20T02:01:20Z level=info msg=Skipping item because it's already been backed up. backup=velero/lbkomas-rocmondriaan-production-20200520020055 group=v1 logSource=pkg/backup/item_backupper.go:163 name=upload namespace=lbkompas-prod resource=persistentvolumeclaims

Όπως μπορείτε να δείτε κατά κάποιον τρόπο δεν δημιουργεί αντίγραφα ασφαλείας του upload τόμος δεδομένου ότι λέει ότι είναι ήδη στο αντίγραφο ασφαλείας (όπου δεν είναι στην πραγματικότητα).

Μου azurefile ο τόμος περιέχει αυτά τα περιεχόμενα:

allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {allowVolumeExpansion:true,apiVersion:storage.k8s.io/v1beta1,kind:StorageClass,metadata:{annotations:{},labels:{kubernetes.io/cluster-service:true},name:azurefile},parameters:{skuName:Standard_LRS},provisioner:kubernetes.io/azure-file}
  creationTimestamp: 2020-05-18T15:18:18Z
  labels:
    kubernetes.io/cluster-service: true
  name: azurefile
  resourceVersion: 1421202
  selfLink: /apis/storage.k8s.io/v1/storageclasses/azurefile
  uid: e3cc4e52-c647-412a-bfad-81ab6eb222b1
mountOptions:
- nouser_xattr
parameters:
  skuName: Standard_LRS
provisioner: kubernetes.io/azure-file
reclaimPolicy: Delete
volumeBindingMode: Immediate

Όπως μπορείτε να δείτε, έχω διορθώσει την κατηγορία αποθήκευσης για να κρατήσω το nouser_xattr επιλογή προσάρτησης που προτάθηκε νωρίτερα

Όταν ελέγχω τα αρχεία καταγραφής του Restic pod, βλέπω τις ακόλουθες πληροφορίες:

E0524 10:22:08.908190       1 reflector.go:156] github.com/vmware-tanzu/velero/pkg/generated/informers/externalversions/factory.go:117: Failed to list *v1.PodVolumeBackup: Get https://10.0.0.1:443/apis/velero.io/v1/namespaces/velero/podvolumebackups?limit=500&resourceVersion=1212830: dial tcp 10.0.0.1:443: i/o timeout
I0524 10:22:08.909577       1 trace.go:116] Trace[1946538740]: Reflector ListAndWatch name:github.com/vmware-tanzu/velero/pkg/generated/informers/externalversions/factory.go:117 (started: 2020-05-24 10:21:38.908988405 +0000 UTC m=+487217.942875118) (total time: 30.000554209s):
Trace[1946538740]: [30.000554209s] [30.000554209s] END

Καλύτερα, Πιμ

Δημοσιεύθηκε 20/05/2020 στις 16:21
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
0

Έχετε προσθέσει nouser_xattr στη λίστα StorageClass mountOptions;

Αυτή η απαίτηση τεκμηριώνεται στο τεύχος 1800 του GitHub .

Επίσης αναφέρεται στη σελίδα ενοποίησης restic (ανατρέξτε στην ενότητα Azure), όπου παρέχουν αυτό το απόσπασμα για να διορθώσουν τον πόρο StorageClass:

kubectl patch storageclass/<YOUR_AZURE_FILE_STORAGE_CLASS_NAME> \
  --type json \
  --patch '[{"op":"add","path":"/mountOptions/-","value":"nouser_xattr"}]'

Εάν δεν έχετε mountOptions λίστα, μπορείτε να δοκιμάσετε:

kubectl patch storageclass azurefile \
  --type merge \
  --patch '{"mountOptions": ["nouser_xattr"]}'
Απαντήθηκε 20/05/2020 στις 21:52
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more