velero备份还原

https://github.com/vmware-tanzu/velero/tree/v1.10.0
https://github.com/yangpeng14/DevOps/blob/master/kubernetes/K8S备份-恢复-迁移神器-Velero.md

https://github.com/vmware-tanzu/velero/tree/v1.10.0

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 新版本
########################################
kubectl create ns velero

velero completion bash
 
cat > ./credentials-velero <<EOF
[default]
aws_access_key_id = pfnJjCoizCCMQdL2qa
aws_secret_access_key = L1ZmwkrKMOPitWmuEzJQEuzMcO0___Aa1
EOF


velero install \
  --provider aws \
  --plugins velero/velero-plugin-for-aws:v1.0.0 \
  --bucket velero \
  --namespace velero  \
  --secret-file ./credentials-velero \
  --use-restic \
  --backup-location-config region=minio,s3ForcePathStyle=true,insecureSkipTLSVerify=true,s3Url=https://xiantest04v.xian.zzt.qianxin-inc.cn:9345
 
velero backup create default-backup --include-namespaces default --wait
 
velero restore create --from-backup default-backup --wait      
 
kubectl -n velero get backupstoragelocation -o yaml
 
 
 
kubectl delete namespace/velero clusterrolebinding/velero
kubectl delete crds -l component=veler



################################################## 早期版本
kubectl create ns velero

velero completion bash
 

cat > ./credentials-velero <<EOF
[default]
aws_access_key_id = pfnJjCoizCCMQdL2qa
aws_secret_access_key = L1ZmwkrKMOPitWmuEzJQEuzMcO0___Aa1
EOF


kubectl create secret generic cloud-credentials \
  --namespace velero \
  --from-file cloud=credentials-velero

examples/common/  
kubectl apply -f 00-prereqs.yaml 

examples/minio/
kubectl apply -f 05-backupstoragelocation.yaml

examples/minio/
kubectl apply -f 20-deployment.yaml

/qaxdata/s/services/minio/9345/bin/mc mb minio/velero 

        

        image: gcrioheptioimages/velero:v0.11.0
        imagePullPolicy: IfNotPresent


kubectl create configmap ca-cert --from-file=ca.crt=QAX-ATS-CA.crt  -n velero



        - mountPath: /plugins
          name: plugins
        - mountPath: /scratch
          name: scratch
        - mountPath: /etc/ssl/certs/ca-certificates.crt
          name: ca-cert
          subPath: ca.crt
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: velero
      serviceAccountName: velero
      terminationGracePeriodSeconds: 30
      volumes:
      - name: cloud-credentials
        secret:
          defaultMode: 420
          secretName: cloud-credentials
      - emptyDir: {}
        name: plugins
      - emptyDir: {}
        name: scratch
      - configMap:
          defaultMode: 420
          items:
          - key: ca.crt
            path: ca.crt
          name: ca-cert
        name: ca-cert
        
velero backup create default-backup --include-namespaces default --wait
 
velero restore create --from-backup default-backup --wait      
 
kubectl -n velero get backupstoragelocation -o yaml
 
 
 
kubectl delete namespace/velero clusterrolebinding/velero
kubectl delete crds -l component=veler



新版本k8s
spec:
  replicas: 1
  template:
    metadata:
      labels:
        component: velero
      annotations:
        prometheus.io/scrape: "true"
        prometheus.io/port: "8085"
        prometheus.io/path: "/metrics"
  selector:
    matchLabels:
      app: velero
  template:
    metadata:
      labels:
        app: velero

apiVersion: apps/v1
   

 

posted on 2025-07-11 18:40  吃草的青蛙  阅读(13)  评论(0)    收藏  举报

导航