Vai al contenuto principale

Trasferimento di utenti tra FASTPANEL

Introduzione

Questo articolo descrive il processo di trasferimento degli account utente e dei relativi dati associati (siti web, database, email, ecc.) da un server FASTPANEL a un altro utilizzando l'utilità di migrazione integrata.

Termini chiave

  • Server di origine - Il server da cui vengono trasferiti i dati.
  • Server di destinazione - Il server verso cui vengono trasferiti i dati.

Note importanti

  • Per impostazione predefinita, la migrazione funziona correttamente solo per i siti con una configurazione FASTPANEL standard.

  • I siti con modifiche di configurazione manuale possono essere trasferiti solo se viene utilizzato il flag -m per la mappatura degli indirizzi IP.

  • Se una password cifrata per un proprietario di database non è disponibile, il database non verrà trasferito.

  • Se un sito web non viene trasferito, anche i database associati non verranno trasferiti.

  • È possibile trasferire solo database locali.

Processo di migrazione

Connessione

Il server di destinazione si connette al server di origine tramite SSH. Durante la prima connessione, il server di destinazione installa una chiave SSH sul server di origine (fornita in precedenza o generata da una password).

Fasi della migrazione

  • Installazione del modulo
  • Raccolta di informazioni sugli oggetti trasferibili
  • Creazione degli utenti
  • Trasferimento dei certificati SSL
  • Creazione di siti web, account FTP, domini email e account email
  • Creazione di database e utenti di database
  • Trasferimento dei file dei siti web e delle caselle email
  • Trasferimento dei processi cron

Il trasferimento dei file viene eseguito utilizzando rsync. I database vengono trasferiti creando un dump attraverso un tunnel SSH.

Comando per avviare la migrazione

Il comando viene eseguito sul server di destinazione come utente con privilegi di root:

/usr/local/fastpanel2/fastpanel transfer run [SSH_PARAMETERS] [IP_PARAMETERS] [ADDITIONAL_OPTIONS]

Flag della riga di comando

Connessione SSH

  • --remote_host="SOURCE_IP" - Indirizzo IP del server di origine.
  • --remote_port="SSH_PORT" - Porta SSH.
  • --remote_username="SSH_USER" - Utente (deve essere root).
  • --remote_password="USER_PASSWORD" - Password per l'utente SSH specificato.
  • --ssh_key_path="PATH_TO_KEY" - Percorso della chiave SSH privata sul server di destinazione per connettersi al server di origine. Se viene utilizzata una chiave, la password (--remote_password) non è necessaria.

Indirizzi IP

Devi utilizzare solo uno dei seguenti flag per gestire gli indirizzi IP dei siti durante il trasferimento. Il flag -m ha la priorità.

  • -i "IP_ADDRESS_ON_DESTINATION" - Assegna l'indirizzo IP specificato a tutti i siti trasferiti sul server di destinazione. Per specificare più IP (ad esempio, se sul server di origine ce n'erano diversi), ripeti il flag per ogni IP di origine che deve essere trasferito.

  • -m "SOURCE_IP,DESTINATION_IP" - Metodo consigliato. Stabilisce una mappatura diretta: tutti i siti che utilizzano SOURCE_IP sul server di origine utilizzeranno DESTINATION_IP sul server di destinazione. Questo flag può essere specificato più volte per diverse coppie di IP. Obbligatorio per trasferire siti con modifiche manuali della configurazione, poiché consente la corretta sostituzione degli indirizzi IP nelle direttive listen.

Impostazioni aggiuntive

  • --users="USER_LIST" - Trasferisce solo gli utenti specificati (separati da virgole). Se non specificato, vengono trasferiti tutti gli utenti.
  • --disable_disk_quota - Disabilita il trasferimento delle quote disco degli utenti.
  • --with_user_data - Include la copia dell'intero contenuto delle directory home degli utenti (tranne la sottodirectory logs/). Usare con cautela, poiché ciò può aumentare significativamente il tempo di trasferimento e la quantità di dati trasferiti.
  • --only_data - Trasferisce solo i dati (file dei siti web, file di posta, dump dei database). Utile se la migrazione iniziale della struttura (utenti, siti, DB, ecc.) è riuscita, ma si sono verificati errori durante la fase di copia dei file o dei dump. Consente di rieseguire solo la parte di copia dei dati.
  • --transfer_timeout - Imposta il timeout dell'operazione (il valore predefinito è 60 minuti).

Comando di esempio

Trasferisce tutti gli utenti dal server 11.22.33.44 al server corrente. Sul vecchio server, i siti utilizzavano gli IP 11.22.33.44 e 11.22.33.55; sul nuovo server dovrebbero utilizzare rispettivamente 99.88.77.66 e 99.88.77.67. Connessione tramite SSH con una password.

/usr/local/fastpanel2/fastpanel transfer run \
--remote_host=11.22.33.44 \
--remote_username=root \
--remote_password=YourSourceRootPassword \
-m 11.22.33.44,99.88.77.66 \
-m 11.22.33.55,99.88.77.67

Possibili problemi e tipi di errore

Un errore nel log di migrazione non indica sempre un problema critico, ma potrebbe indicare il motivo per cui un oggetto specifico non è stato trasferito.

  • Conflitti: si verificano quando il trasferimento di un oggetto è impossibile a causa della configurazione corrente del server di destinazione (ad esempio, esiste già un utente o un sito con lo stesso nome) oppure se la configurazione del sito sul server di origine è sconosciuta al pannello (ad esempio, a causa di estese modifiche manuali).

  • Password salvata mancante: come già detto, gli utenti di database MySQL senza una password salvata in FASTPANEL sul server di origine non possono essere trasferiti.

  • Impostazioni manuali e indirizzi IP: se un sito sul server di origine presenta modifiche manuali alla configurazione del server web e durante la migrazione non viene utilizzato il flag -m per mappare il suo indirizzo IP, tale sito non verrà trasferito perché il pannello non sa quale IP specificare nella configurazione sul server di destinazione.