Transfer użytkowników między serwerami FASTPANEL
Wprowadzenie
Ten artykuł opisuje proces przenoszenia kont użytkowników i powiązanych z nimi danych (witryn internetowych, baz danych, poczty e-mail itp.) z jednego serwera FASTPANEL na inny przy użyciu wbudowanego narzędzia migracji.
Kluczowe pojęcia
- Serwer źródłowy - Serwer, z którego przenoszone są dane.
- Serwer docelowy - Serwer, na który przenoszone są dane.
Ważne uwagi
-
Domyślnie migracja działa poprawnie tylko w przypadku witryn ze standardową konfiguracją FASTPANEL.
-
Witryny z ręcznymi zmianami konfiguracji mogą zostać przeniesione tylko wtedy, gdy do mapowania adresów IP użyta zostanie flaga
-m. -
Jeśli zaszyfrowane hasło właściciela bazy danych nie jest dostępne, baza danych nie zostanie przeniesiona.
-
Jeśli witryna internetowa nie zostanie przeniesiona, powiązane z nią bazy danych również nie zostaną przeniesione.
-
Można przenosić tylko lokalne bazy danych.
Proces migracji
Połączenie
Serwer docelowy łączy się z serwerem źródłowym przez SSH. Podczas pierwszego połączenia serwer docelowy instaluje klucz SSH na serwerze źródłowym (wcześniej dostarczony lub wygenerowany z hasła).
Etapy migracji
- Instalacja modułu
- Zbieranie informacji o obiektach, które można przenieść
- Tworzenie użytkowników
- Przenoszenie certyfikatów SSL
- Tworzenie witryn internetowych, kont FTP, domen e-mail i kont e-mail
- Tworzenie baz danych i użytkowników baz danych
- Przenoszenie plików witryn internetowych i skrzynek e-mail
- Przenoszenie zadań cron
Transfer plików jest wykonywany przy użyciu rsync. Bazy danych są przenoszone przez utworzenie zrzutu przez tunel SSH.
Polecenie uruchamiające migrację
Polecenie jest uruchamiane na serwerze docelowym przez użytkownika z uprawnieniami root:
/usr/local/fastpanel2/fastpanel transfer run [SSH_PARAMETERS] [IP_PARAMETERS] [ADDITIONAL_OPTIONS]
Flagi wiersza poleceń
Połączenie SSH
--remote_host="SOURCE_IP" - Adres IP serwera źródłowego.--remote_port="SSH_PORT" - Port SSH.--remote_username="SSH_USER" - Użytkownik (musi być root).--remote_password="USER_PASSWORD" - Hasło dla określonego użytkownika SSH.--ssh_key_path="PATH_TO_KEY" - Ścieżka do prywatnego klucza SSH na serwerze docelowym służącego do połączenia z serwerem źródłowym. Jeśli używany jest klucz, hasło (--remote_password) nie jest potrzebne.
Adresy IP
Aby zarządzać adresami IP witryn podczas przenoszenia, należy użyć tylko jednej z następujących flag. Flaga -m ma priorytet.
-
-i"IP_ADDRESS_ON_DESTINATION" - Przypisuje określony adres IP do wszystkich przenoszonych witryn na serwerze docelowym. Aby określić wiele adresów IP (np. jeśli na serwerze źródłowym było ich kilka), powtórz flagę dla każdego źródłowego adresu IP, który ma zostać przeniesiony. -
-m"SOURCE_IP,DESTINATION_IP" - Zalecana metoda. Ustanawia bezpośrednie mapowanie: wszystkie witryny używające SOURCE_IP na serwerze źródłowym będą używać DESTINATION_IP na serwerze docelowym. Tę flagę można podać wiele razy dla różnych par adresów IP. Wymagane do przenoszenia witryn z ręcznymi zmianami konfiguracji, ponieważ umożliwia poprawne zastępowanie adresów IP w dyrektywach listen.
Dodatkowe ustawienia
--users="USER_LIST" - Przenosi tylko określonych użytkowników (oddzielonych przecinkami). Jeśli nie określono, przenoszeni są wszyscy użytkownicy.--disable_disk_quota- Wyłącza przenoszenie limitów quota dysku użytkowników.--with_user_data- Obejmuje kopiowanie całej zawartości katalogów domowych użytkowników (z wyjątkiem podkatalogulogs/). Należy używać ostrożnie, ponieważ może to znacząco zwiększyć czas transferu i ilość przesyłanych danych.--only_data- Przenosi tylko dane (pliki witryn internetowych, pliki poczty, zrzuty baz danych). Przydatne, jeśli początkowa migracja struktury (użytkownicy, witryny, bazy danych itp.) zakończyła się powodzeniem, ale podczas etapu kopiowania plików lub zrzutów wystąpiły błędy. Umożliwia ponowne uruchomienie tylko części odpowiedzialnej za kopiowanie danych.--transfer_timeout- Ustawia limit czasu operacji (domyślnie 60 minut).
Przykładowe polecenie
Przenieś wszystkich użytkowników z serwera 11.22.33.44 na bieżący serwer. Na starym serwerze witryny używały adresów IP 11.22.33.44 i 11.22.33.55; na nowym serwerze powinny używać odpowiednio 99.88.77.66 i 99.88.77.67. Połączenie przez SSH z użyciem hasła.
/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
Możliwe problemy i typy błędów
Błąd w dzienniku migracji nie zawsze oznacza problem krytyczny, ale może wskazywać przyczynę, dla której określony obiekt nie został przeniesiony.
-
Konflikty: Występują, gdy przeniesienie obiektu jest niemożliwe z powodu bieżącej konfiguracji serwera docelowego (np. użytkownik lub witryna o tej samej nazwie już istnieje) albo gdy konfiguracja witryny na serwerze źródłowym jest nieznana panelowi (np. z powodu rozległych ręcznych zmian).
-
Brak zapisanego hasła: Jak wspomniano wcześniej, użytkownicy bazy danych MySQL bez zapisanego hasła w FASTPANEL na serwerze źródłowym nie mogą zostać przeniesieni.
-
Ustawienia ręczne i adresy IP: Jeśli witryna na serwerze źródłowym ma ręczne zmiany konfiguracji serwera WWW, a podczas migracji nie zostanie użyta flaga
-mdo mapowania jej adresu IP, taka witryna nie zostanie przeniesiona, ponieważ panel nie wie, jaki adres IP należy określić w konfiguracji na serwerze docelowym.