Requisiti per la migrazione dei container di nodi
La funzione di migrazione dei nodi consente di spostare manualmente un nodo da un host all'altro. In genere, entrambi gli host si trovano nello stesso data center fisico.
La migrazione dei nodi consente di eseguire la manutenzione fisica degli host senza interrompere le operazioni di grid. È sufficiente spostare tutti i nodi StorageGRID, uno alla volta, su un altro host prima di portare l'host fisico offline. La migrazione dei nodi richiede solo un breve downtime per ciascun nodo e non deve influire sul funzionamento o sulla disponibilità dei servizi grid.
Se si desidera utilizzare la funzionalità di migrazione dei nodi StorageGRID, l'implementazione deve soddisfare requisiti aggiuntivi:
-
Nomi di interfaccia di rete coerenti tra gli host di un singolo data center fisico
-
Storage condiviso per i metadati StorageGRID e i volumi di repository di oggetti accessibili da tutti gli host in un singolo data center fisico. Ad esempio, è possibile utilizzare gli storage array NetApp e-Series.
Se si utilizzano host virtuali e il layer hypervisor sottostante supporta la migrazione delle macchine virtuali, è possibile utilizzare questa funzionalità invece della funzionalità di migrazione dei nodi di StorageGRID. In questo caso, è possibile ignorare questi requisiti aggiuntivi.
Prima di eseguire la migrazione o la manutenzione dell'hypervisor, arrestare correttamente i nodi. Consultare le istruzioni per chiusura di un nodo di rete.
VMware Live Migration non supportato
OpenStack Live Migration e VMware Live vMotion fanno saltare il tempo di clock della macchina virtuale e non sono supportati per i nodi grid di qualsiasi tipo. Anche se rari, tempi di clock errati possono causare la perdita di dati o aggiornamenti della configurazione.
La migrazione a freddo è supportata. Durante la migrazione a freddo, i nodi StorageGRID vengono arrestati prima della migrazione tra host. Consultare le istruzioni per chiusura di un nodo di rete.
Nomi di interfaccia di rete coerenti
Per spostare un nodo da un host a un altro, il servizio host StorageGRID deve avere la certezza che la connettività di rete esterna del nodo nella sua posizione corrente possa essere duplicata nella nuova posizione. Questa sicurezza viene ottenuta grazie all'utilizzo di nomi di interfaccia di rete coerenti negli host.
Si supponga, ad esempio, che StorageGRID NodeA in esecuzione sull'host 1 sia stato configurato con le seguenti mappature di interfaccia:
Il lato sinistro delle frecce corrisponde alle interfacce tradizionali visualizzate all'interno di un container StorageGRID (ovvero le interfacce griglia, Amministratore e rete client, rispettivamente). Il lato destro delle frecce corrisponde alle interfacce host effettive che forniscono queste reti, che sono tre interfacce VLAN subordinate allo stesso legame di interfaccia fisico.
Supponiamo ora di voler migrare NodeA in Host2. Se l'host 2 ha anche interfacce denominate bond0.1001, bond0.1002 e bond0.1003, il sistema consentirà lo spostamento, supponendo che le interfacce con nome simile forniscano la stessa connettività sull'host 2 di quella sull'host 1. Se l'host 2 non dispone di interfacce con gli stessi nomi, lo spostamento non sarà consentito.
Esistono diversi modi per ottenere un nome coerente dell'interfaccia di rete tra più host; vedere Configurazione della rete host per alcuni esempi.
Storage condiviso
Al fine di ottenere migrazioni dei nodi rapide e a basso overhead, la funzionalità di migrazione dei nodi StorageGRID non sposta fisicamente i dati dei nodi. La migrazione dei nodi viene invece eseguita come coppia di operazioni di esportazione e importazione, come segue:
-
Durante l'operazione “node export”, una piccola quantità di dati di stato persistente viene estratta dal contenitore di nodi in esecuzione su Hosta e memorizzata nella cache del volume di dati di sistema di quel nodo. Quindi, il contenitore di nodi su Hosta viene decreato.
-
Durante l'operazione “node import”, viene creata un'istanza del contenitore di nodi sull'host B che utilizza la stessa interfaccia di rete e le stesse mappature dello storage a blocchi in vigore sull'host. Quindi, i dati dello stato persistente memorizzati nella cache vengono inseriti nella nuova istanza.
Data questa modalità operativa, tutti i dati di sistema e i volumi di storage a oggetti del nodo devono essere accessibili sia da host che da host B affinché la migrazione sia consentita e funzioni. Inoltre, devono essere stati mappati nel nodo utilizzando nomi che sono garantiti per fare riferimento alle stesse LUN su Hosta e HostB.
Nell'esempio riportato di seguito viene illustrata una soluzione per il mapping dei dispositivi a blocchi per un nodo di storage StorageGRID, in cui il multipathing DM è in uso sugli host e il campo alias è stato utilizzato in /etc/multipath.conf
fornire nomi di dispositivi a blocchi coerenti e intuitivi disponibili su tutti gli host.