È possibile utilizzare Plug-in Velero per vSphere per il backup e il ripristino dei carichi di lavoro in esecuzione in Pod vSphere installando Plug-in Velero per vSphere nel Cluster supervisore.
Panoramica
Plug-in Velero per vSphere fornisce una soluzione per il backup e il ripristino dei carichi di lavoro di vSphere with Tanzu. La soluzione richiede l'installazione e la configurazione di diversi componenti. Dopo aver installato e configurato Plug-in Velero per vSphere nel Cluster supervisore, è possibile eseguire il backup e il ripristino di Pod vSphere. Per i carichi di lavoro persistenti, Plug-in Velero per vSphere consente di creare snapshot dei volumi persistenti.
Prerequisiti
- La gestione del carico di lavoro è abilitata con la rete di NSX-T Data Center. Vedere Abilitazione della gestione del carico di lavoro con la rete NSX-T Data Center.
- La versione di Cluster supervisore è 1.21.1 o successiva.
- È stato creato e configurato lo Spazio dei nomi vSphere.
- È necessario essere membri del ruolo di amministratore di vSphere o disporre dei privilegi di vSphere seguenti:
- SupervisorServices.Manage
- Namespaces.Manage
- Namespaces.Configure
- Viene utilizzata la rete NSX-T per supportare la distribuzione di Pod vSphere
- Viene distribuita una macchina virtuale Data Manager
- Velero vSphere Operator è abilitato e in esecuzione nello spazio dei nomi
velero-vsphere-domain-cXX
- È configurato uno spazio dei nomi denominato
velero
- Plug-in Velero per vSphere è in esecuzione come Pod vSphere nello spazio dei nomi
velero
Aggiornamenti
Queste istruzioni presuppongono che si stia utilizzando vSphere 7 U3. Se in precedenza Plug-in Velero per vSphere è stato installato in un ambiente di vSphere 7 U2 P3, durante l'aggiornamento la macchina virtuale Data Manager e l'operatore Velero vSphere vengono migrati nel nuovo framework. Velero vSphere Operator viene convertito nel nuovo formato di vSphere Services. Non è richiesta alcuna azione.
Creare una rete dedicata per il backup e il ripristino del traffico (facoltativo)
- Assegnare tag agli host ESXi per supportare la copia del file di rete (NFC)
- Configurare la rete di backup e ripristino utilizzando NSX-T Data Center
Per configurare gli host ESXi vSphere 7.x per il supporto di un trasporto NBD (Network Block Device) dedicato, aggiungere una scheda NIC VMkernel in ogni host ESXi nel cluster di vCenter Server in cui la gestione del carico di lavoro è abilitata e impostare vSphereBackupNFC
su tale NIC. Quando per una scheda VMkernel viene applicato il tag vSphereBackupNFC
al tipo di NIC, il traffico di backup e ripristino passa attraverso la NIC virtuale scelta.
vSphereBackupNFC
non è abilitato nella scheda NIC VMkernel, il traffico di backup e ripristino non viene inviato nella rete di backup e ripristino, anche se ne viene configurata una. Se
vSphereBackupNFC
non è abilitato, il traffico passa attraverso la rete di gestione di vSphere.
vSphereBackupNFC
, configurare la rete di backup e ripristino mediante NSX-T aggiornando il vSphere Distributed Switch (vDS) esistente per il cluster come indicato di seguito:
- In vSphere Client selezionare .
- Selezionare il vDS esistente per il cluster.
- Fare clic con il pulsante destro del mouse sul vDS e scegliere .
- Creare un nuovo gruppo di porte distribuite denominato BackupRestoreNetwork.
- Aggiungere una scheda VMkernel al gruppo di porte distribuite BackupRestoreNetwork.
- Collegare tutti gli host ESXi nel cluster vCenter in cui è abilitata la gestione del carico di lavoro al gruppo di porte distribuite BackupRestoreNetwork.
- Abilitare il tag
vSphereBackupNFC
.
Per istruzioni sulla creazione di una rete NSX-T nel vDS esistente, vedere Installare e configurare NSX-T Data Center per vSphere with Tanzu.
Creare un archivio di oggetti compatibile con S3
Per il backup e il ripristino dei volumi persistenti, è necessario fornire un archivio di oggetti compatibile con S3. Velero supporta diversi provider di archivi di oggetti.
Per installare Plug-in Velero per vSphere, è necessario fornire le seguenti informazioni sull'archivio di oggetti compatibile con S3:
Elemento dati | Valore di esempio |
---|---|
s3Url | http://my-s3-store.example.com |
aws_access_key_id | ACCESS-KEY-ID-STRING |
aws_secret_access_key | SECRET-ACCESS-KEY-STRING |
s3-credentials
con le informazioni seguenti. Si farà riferimento a questo file durante l'installazione di
Plug-in Velero per vSphere.
aws_access_key_id = ACCESS-KEY-ID-STRING aws_secret_access_key = SECRET-ACCESS-KEY-STRING
MinIO è un archivio di oggetti compatibile con S3 semplice da installare e utilizzare. vSphere with Tanzu viene fornito con un servizio supervisore MinIO che è possibile abilitare. Per ulteriori informazioni, vedere Abilitazione dei servizi stateful in vSphere with Tanzu.
In alternativa, è possibile installare manualmente un server MinIO in una macchina virtuale Linux. Per istruzioni, vedere Installazione e configurazione di Restic e Velero in modalità autonoma in un cluster di Tanzu Kubernetes.
Installare e configurare Data Manager
Per semplificare il backup e il ripristino utilizzando Plug-in Velero per vSphere, distribuire una o più macchine virtuali Data Manager per spostare i dati di backup dei volumi persistenti all'interno e all'esterno dello storage di oggetti compatibile con S3. Data Manager sposta i dati dello snapshot del volume dal volume di vSphere allo storage permanente remoto compatibile con S3 in fase di backup e dallo storage remoto compatibile con S3 a un volume di vSphere durante il ripristino.
- Scaricare il file OVA di Data Manager:
- Utilizzando vSphere Client, fare clic con il pulsante destro del mouse sul Data center in cui è abilitata la gestione del carico di lavoro e selezionare Distribuisci modello OVF.
- Selezionare il file OVA di Data Manager scaricato e caricarlo in vCenter Server.
- Assegnare ad esempio il nome DataManager alla macchina virtuale.
- Selezionare la risorsa di elaborazione che rappresenta il cluster di vCenter in cui è configurato Cluster supervisore.
- Controllare i dettagli della distribuzione della macchina virtuale e fare clic su Avanti.
- Accettare il contratto di licenza e fare clic su Avanti.
- Selezionare lo storage e fare clic su Avanti.
- Selezionare la rete di destinazione per la macchina virtuale Data Manager.
- Selezionare BackupRestoreNetwork se è stata configurata una rete di backup e ripristino dedicata. Vedere Creare una rete dedicata per il backup e il ripristino del traffico (facoltativo).
- Selezionare la Rete di gestione se non è stata configurata una rete di backup e ripristino dedicata.
- Confermare le selezioni e fare clic su Fine per completare il processo.
- Utilizzare il pannello Attività recenti per monitorare l'avanzamento della distribuzione.
Nota: Se viene visualizzato un messaggio di errore che indica che il descrittore OVF non è disponibile, utilizzare il browser Chrome.
- Una volta distribuita la macchina virtuale Data Manager, configurare i parametri di input per la macchina virtuale.
- Fare clic con il pulsante destro del mouse sulla macchina virtuale e scegliere .
- Nella scheda Hardware virtuale, per Unità CD/DVD, passare da Dispositivo host a Dispositivo client.
Nota: Se non si esegue questa operazione, non sarà possibile salvare le impostazioni di configurazione avanzate necessarie.
- Nella scheda selezionare .
- Configurare i parametri di input per ciascuna delle seguenti impostazioni:
Parametro Valore guestinfo.cnsdp.vcUser
Assegnare al nome utente vCenter Server privilegi sufficienti per distribuire le macchine virtuali. guestinfo.cnsdp.vcAddress
Immettere l'indirizzo IP o il nome di dominio completo di vCenter Server. guestinfo.cnsdp.vcPasswd
Immettere la password dell'utente di vCenter Server. guestinfo.cnsdp.vcPort
Il valore predefinito è 443. Non modificare questo valore. guestinfo.cnsdp.wcpControlPlaneIP
Immettere l'indirizzo IP del cluster supervisore. Per recuperare questo valore, passare al cluster vCenter in cui è abilitata la gestione del carico di lavoro e selezionare
guestinfo.cnsdp.updateKubectl
Il valore predefinito è false. Non modificare questo valore. guestinfo.cnsdp.veleroNamespace
L'impostazione predefinita è velero e, a meno che non vi sia un motivo valido, non deve essere modificata. Nel corso del processo verrà creato uno spazio dei nomi di vSphere nel cluster supervisore con il nome velero
. I nomi devono corrispondere.guestinfo.cnsdp.datamgrImage
Se non è configurato (impostazione annullata), per impostazione predefinita il sistema estrarrà l'immagine del container da Docker Hub in vsphereveleroplugin/data-manager-for-plugin:1.1.0
- Fare clic su OK per salvare la configurazione, quindi di nuovo su OK per salvare le impostazioni della macchina virtuale.
Nota: Se l'unità CD/DVD non è stata modificata da Dispositivo host a Dispositivo client, non è possibile salvare le impostazioni. In questo caso, annullare l'operazione, cambiare unità e ripetere le impostazioni di configurazione avanzate.
- Non accendere la macchina virtuale Data Manager finché non si abilita Operatore vSphere Velero (sezione successiva).
Installazione e configurazione di Operatore vSphere Velero nel Cluster supervisore
vSphere with Tanzu fornisce Operatore vSphere Velero come servizio vSphere. Operatore vSphere Velero funziona con Plug-in Velero per vSphere per supportare il backup e il ripristino dei carichi di lavoro di Kubernetes, inclusa la creazione di snapshot dei volumi persistenti. Per ulteriori informazioni su vSphere Services, vedere Gestione dei Servizi supervisori con vSphere with Tanzu.
Eseguire le attività seguenti per installare e configurare il servizio vSphere Velero vSphere Operator utilizzando vSphere Client.
La prima attività consiste nello scaricare la specifica del servizio per Velero vSphere Operator e installarla nel vCenter Server in cui è abilitata la Gestione carico di lavoro.
- Scaricare il file YAML per Velero vSphere Operator dalla seguente posizione:
- Dal menu home di vSphere Client, selezionare Gestione carico di lavoro.
- Selezionare la scheda Servizi.
- Selezionare il vCenter Server di destinazione dal menu a discesa nella parte superiore.
- Trascinare il file delle specifiche del servizio
velero-supervisorservice-1.0.0.yaml
scaricato nella scheda Aggiungi nuovo servizio. - Fare clic su Avanti e accettare il contratto di licenza.
- Fare clic su Fine.
Velero vSphere Operator viene installato e il servizio viene registrato in vCenter Server. Verificare che lo stato del servizio sia Attivo. Se il servizio è disattivato, non è possibile procedere con la configurazione.
L'attività successiva consiste nel configurare Velero vSphere Operator in Cluster supervisore.
- Dal menu home di vSphere Client, selezionare Gestione carico di lavoro.
- Selezionare la scheda Servizi.
- Selezionare il servizio Velero vSphere Operator che si desidera configurare.
- Selezionare il Cluster supervisore di destinazione in cui si desidera configurarlo.
- Configurare il servizio Velero vSphere Operator come indicato di seguito:
- Selezionare la versione nel menu a discesa: 1.1.0.
- In Endpoint repository non specificare alcun valore.
- Non immettere un nome utente.
- Non immettere una password.
- Fare clic su Avanti.
- Fare clic su Fine.
L'ultima attività consiste nel verificare il servizio Velero vSphere Operator nel Cluster supervisore e avviare la macchina virtuale Data Manager.
- Dal menu Home di vSphere Client selezionare Inventario.
- Selezionare il cluster vCenter in cui è abilitata Gestione carico di lavoro.
- Selezionare .
- Verificare che Velero vSphere Operator sia installato e che il suo stato sia Configurato.
- Nel pool di risorse Spazi dei nomi verificare che sia presente un nuovo spazio dei nomi denominato
svc-velero-vsphere-domain-xxx
, dovexxx
è un token alfanumerico univoco. Si tratta dello spazio dei nomi creato dal sistema per Velero vSphere Operator.Nota: Lo spazio dei nomi non deve essere modificato e non è necessario configurarlo. - Nella vista Host e cluster selezionare la macchina virtuale Data Manager.
- Fare clic con il pulsante destro del mouse sulla macchina virtuale Data Manager e accenderla.
Creare uno spazio dei nomi di vSphere per Plug-in Velero per vSphere
- Assegnare allo spazio dei nomi il nome velero.
- Selezionare lo spazio dei nomi velero e configurarlo.
- Specificare lo storage per lo spazio dei nomi velero.
- Concedere a un utente con i privilegi appropriati l'autorizzazione Modifica nello spazio dei nomi velero.
Installare Plug-in Velero per vSphere.
kubectl-vsphere
e
kubectl
.
- Creare una macchina virtuale Linux in cui eseguire la CLI. In alternativa, utilizzare un jump host Linux esistente da cui accedere a Cluster supervisore.
- Scaricare la CLI di Plug-in Velero per vSphere dalla posizione seguente:
- Copiare in modo sicuro la CLI nel jump host Linux. Ad esempio:
pscp -P 22 C:\temp\velero-vsphere-1.1.0-linux-amd64.tar.gz [email protected]:/home/ubuntu/tanzu
- Estrarre la CLI
velero-vsphere
e renderla scrivibile.tar -xf velero-vsphere-1.1.0-linux-amd64.tar.gz chmod +x velero-vsphere
- Creare il file
s3-credentials
con il seguente contenuto.aws_access_key_id = ACCESS-KEY-ID-STRING aws_secret_access_key = SECRET-ACCESS-KEY-STRING
- Recuperare la regione, l'URL e il nome del bucket per l'archivio di oggetti compatibile con S3.
- Accedere a Cluster supervisore utilizzando Plug-in vSphere per kubectl.
- Passare al contesto del Cluster supervisore.
kubectl config use-context SUPERVISOR-CLUSTER-IP-ADDRESS
- Eseguire il seguente comando della CLI
velero-vsphere
per installare Plug-in Velero per vSphere nello spazio dei nomi velero creato.Sostituire i valori dei segnaposto per i campi BUCKET-NAME, REGION (due istanze) e s3Url con i valori appropriati. Se una delle istruzioni precedenti non è stata seguita, modificare anche tali valori, ad esempio il nome o la posizione del file dei segreti, il nome dello spazio dei nomi
velero
creato manualmente e così via../velero-vsphere install \ --namespace velero \ --image velero/velero:v1.5.1 \ --provider aws \ --plugins velero/velero-plugin-for-aws:v1.1.0,vsphereveleroplugin/velero-plugin-for-vsphere:1.1.0 \ --bucket BUCKET-NAME \ --secret-file s3-credentials \ --snapshot-location-config region=REGION \ --backup-location-config region=REGION,s3ForcePathStyle="true",s3Url=http://my-s3-store.example.com
Nota: È possibile utilizzare Plug-in Velero per vSphere v1.1.0 e versioni successive nel Cluster supervisore, ad esempiovsphereveleroplugin/velero-plugin-for-vsphere:v1.1.1
ovsphereveleroplugin/velero-plugin-for-vsphere:v1.2.0
. La versione di Velero deve essere v1.5.1 (velero/velero:v1.5.1
). - Verificare la corretta installazione di Plug-in Velero per vSphere.
Al completamento dell'installazione, dovrebbe essere visualizzato il messaggio seguente:
Send the request to the operator about installing Velero in namespace velero
Eseguire il comando seguente per un'ulteriore verifica. Dovrebbero essere visualizzate la dicitura "Completata" e la versione.kubectl -n velero get veleroservice default -o json | jq '.status'
Risultato previsto:{ "enabled": true, "installphase": "Completed", "version": "v1.5.1" }
Nota: Il comando precedente presuppone che sia installata l'utilitàjq
, che formatta l'output JSON inviato al terminale. Se non è installatojq
, installarlo o rimuovere tale parte del comando specifica (tutto ciò che seguejson
). - Risolvere i problemi in base alle necessità.
Se l'installazione non riesce, rimuoverla e riprovare. Per rimuovere l'installazione, completare i passaggi nella sezione successiva nell'ordine in cui sono elencati.
Installare il plug-in Velero in un ambiente con air gap
Se si prevede di installare Plug-in Velero per vSphere in un ambiente con air gap, è necessario installarlo con immagini personalizzate. È necessario assicurarsi che le immagini di backup-driver
e data-manager-for-plugin
corrispondenti delle immagini personalizzate siano disponibili nel registro previsto e siano accessibili dal cluster di Kubernetes. In un ambiente con air gap, sono previste immagini personalizzate dal registro privato, dal momento che le immagini rilasciate in Docker Hub non sono accessibili.
- Scaricare le immagini rilasciate di
velero-plugin-for-vsphere
,backup-driver
edata-manager-for-plugin
. - Rinominare le immagini, ovvero contrassegnarle con
<Registry endpoint and path>
e<Version tag>
corrispondenti e caricarle in repository personalizzati. - Installare il plug-in dell'immagine
velero-plugin-for-vsphere
personalizzata.Quando si installa Plug-in Velero per vSphere in un cluster di Vanilla, vengono distribuiti due componenti aggiuntivi, una distribuzione di
backup-driver
e un DaemonSetdata-manager-for-plugin
in background. Nei cluster di Cluster supervisore e Tanzu Kubernetes viene distribuita solo una distribuzione dibackup-driver
.Quando si specifica l'immagine di container di
velero-plugin-for-vsphere
, le immaginibackup-driver
edata-manager-for-plugin
corrispondenti vengono analizzate utilizzando un meccanismo di analisi dell'immagine.Le immagini dei contenitori sono modellate nel seguente modello:<Registry endpoint and path>/<Container name>:<Version tag>
Quando si specifica l'immagine di container
velero-plugin-for-vsphere
, vengono analizzate le immagini corrispondenti dibackup-driver
edata-manager-for-plugin
con i<Registry endpoint and path>
e<Version tag>
corrispondenti.Si consideri ad esempio la seguente immagine del containervelero-plugin-for-vsphere
:abc.io:8989/x/y/.../z/velero-plugin-for-vsphere:vX.Y.Z
È prevista l'estrazione delle seguenti immagini corrispondenti dibackup-driver
edata-manager-for-plugin
:abc.io:8989/x/y/.../z/backup-driver:vX.Y.Z abc.io:8989/x/y/.../z/data-manager-for-plugin:vX.Y.Z
- Risoluzione dei problemi relativi all'installazione.
Se si verificano problemi o errori durante l'analisi delle immagini corrispondenti di
backup-driver
edata-manager-for-plugin
, l'installazione ripristina le immagini corrispondenti dei repositoryvelerovsphereplugin
ufficiali in Docker Hub. Il meccanismo di fallback viene attivato dai seguenti problemi:- Nell'immagine
velero-plugin-for-vsphere
personalizzata viene utilizzato un nome di container non previsto nell'input dell'utente.Ad esempio, viene utilizzato
x/y/velero-velero-plugin-for-vsphere:v1.1.1
. - Il nome della distribuzione Velero è personalizzato per tutto ciò che è diverso da
velero
. Ad esempio, se il nome della distribuzione di Velero viene aggiornato impostandolo suvelero-server
nel filemanifests
di Velero prima di distribuire Velero, viene generato un problema.Il meccanismo di analisi dell'immagine esistente in
velero-plugin-for-vsphere
è in grado di riconoscere solo la distribuzione di Velero con il nome corretto, ovverovelero
.
- Nell'immagine
Disinstallare Plug-in Velero per vSphere
- Eseguire la CLI
velero-vsphere
per disinstallare Plug-in Velero per vSphere../velero-vsphere uninstall -n velero
- Verificare che il Pod vSphere denominato
velero
venga rimosso.kubectl get pods -n velero
Se lo stato del pod è "Completamento in corso", attendere che venga rimosso prima di procedere.
- Utilizzando vSphere Client, eliminare lo Spazio dei nomi vSphere denominato
velero
creato manualmente.Nota: Non procedere con il passaggio successivo finché l'eliminazione dello spazio dei nomi non verrà completata. È possibile utilizzare kubectl per verificare che lo spazio dei nomivelero
venga rimosso (ma non utilizzare kubectl per rimuovere lo spazio dei nomivelero
). - Utilizzando vSphere Client, disinstallare Velero vSphere Operator da Cluster supervisore.
- Selezionare il cluster vCenter in cui è abilitata Gestione carico di lavoro.
- Selezionare .
- Selezionare Velero vSphere Operator.
- Fare clic su Disinstalla.
Questa azione disinstalla Velero vSphere Operator da Cluster supervisore. L'operatore rimane disponibile per la reinstallazione nella pagina . Per rimuovere completamente il servizio, selezionare .