DaDesktop

Instalacja nowego serwera DaDesktop

Wdrażanie węzła DD na serwerze GTHost / Hetzner

Poniższe notatki mają na celu pomóc we wdrożeniu węzła DaDesktop (Serwer) na serwerze dedykowanym GTHost, Hetzner lub innym podobnym serwerze Linux. Należy pamiętać, że te notatki mogą ulec zmianie wraz ze zmianami skryptu instalacyjnego i wdrożeniowego.


Zakładamy, że serwer został już zakupiony i będzie skonfigurowany z systemem Ubuntu Jammy 22.04. Zwróć uwagę, że użycie RAID0, czyli striping, może przyspieszyć dostęp do dysku, jeśli masz dużo miejsca na dwóch lub więcej dyskach. W Hetzner należy to zdefiniować podczas procesu 'installimage' w trybie Rescue. 
 

Przygotowanie, instalacja systemu operacyjnego na serwerze GTHost / Hetzner
 

Hetzner install
  1. Najpierw zaloguj się przez SSH używając dostarczonych poświadczeń root, wykonaj 'apt update' oraz 'apt upgrade', aby upewnić się, że wszystkie pakiety są aktualne. Następnie wykonaj 'apt autoremove', aby usunąć wszelkie przestarzałe pakiety przed aktualizacją.
  2. Jeśli korzystasz z Hetzner, zostaniesz uruchomiony w trybie Rescue, więc będziesz musiał zdefiniować wymagania dystrybucji, programowy RAID - mdm, xfs, ipv4 itp. przed ponownym uruchomieniem i aktualizacją. Zasadniczo zaakceptuj domyślne ustawienia dla małych partycji /boot i /boot/esp używających ext4 (nie xfs) i nie używaj partycji swap, ponieważ nie jest ona wymagana. Pozwól, aby partycja / korzystała z xfs i wykorzystaj resztę dostępnego miejsca.
  3. Jeśli korzystasz z LeaseWeb lub innego dostawcy, będziesz musiał zmienić główny system plików / na xfs zamiast ext4 lub btrfs. Poniższe wskazówki są jedynie przewodnikiem, jednak zapewnienie, że partycja / używa xfs, jest trudniejsze niż zdefiniowanie /bigdisk jako xfs, ponieważ wszelkie zmiany systemu plików muszą być dokonane poza systemem operacyjnym, gdyż zmiana typu systemu plików / nie może być łatwo/bezpiecznie przeprowadzona, gdy / jest zamontowane.
  4. Aby utworzyć system plików xfs, użyj narzędzia dostawcy, jeśli jest dostępne, ponieważ jest to znacznie łatwiejsze. W przeciwnym razie wykonaj podobne polecenie z poziomu systemu ratunkowego:
    mkfs.xfs -f /dev/mdx (formatuje z użyciem xfs /, a opcja -f wymusza nadpisanie). 
    Uwaga: nie definiujemy już /bigdisk jako osobnej partycji; teraz jest to po prostu katalog w /.
  5. Zamontuj /dev/mdX jako xfs poza systemem operacyjnym lub użyj panelu systemowego, aby to zrobić.
  6. Jeśli używasz partycji /bigdisk (obecnie raczej się tego nie robi), użyj opcji defaults,nofail 0 0 w /etc/fstab, aby system mógł się uruchomić, nawet jeśli osobna partycja /bigdisk nie została poprawnie zamontowana.
  7. Wykonaj systemctl daemon-reload, aby pozwolić systemd na ponowne wczytanie /etc/fstab
  8. Wykonaj mount -a, aby sprawdzić, czy partycje zostały utworzone zgodnie z wymaganiami, zweryfikuj za pomocą df -T
  9. Zrestartuj

     

Uruchamianie skryptu instalacyjnego DaDesktop

 

  1. Połącz się przez SSH z serwerem, np. svr@xxxxxxxxx
  2. Zainstaluj za pomocą skryptu instalacyjnego DaDesktop, tj.
  3. curl https://www.dadesktop.com/d > d
  4. W tym momencie należy zaktualizować system bazowy z wersji 22.04 do najnowszej wersji Ubuntu, tj. obecnie Ubuntu 23.10 Mantic, a wkrótce Ubuntu 24.04 Noble.
  5. Najlepiej zrobić to przy użyciu skryptu o nazwie update-os znajdującego się w /apps/dadesktop_npnode_deploy/modules/00-upgrade-os. Jest to łatwiejsze niż ręczne przeprowadzanie aktualizacji dystrybucji i zastępuje źródła apt z 'jammy' na 'mantic' (nautic), co pozwala na przeprowadzenie aktualizacji w jednym kroku, a nie kilku. UWAGA: choć zazwyczaj odradza się aktualizację o dwie wersje na raz, tutaj jest to dość bezpieczne ze względu na bardzo małą liczbę zainstalowanych pakietów.
  6. Jeśli podczas aktualizacji dystrybucji napotkasz problem z niedziałającym DNS (zdarzyło się nam to podczas jednej instalacji), aby rozwiązać problem z DNS:
     rm /etc/resolv.conf ; echo "nameserver 8.8.8.8" > /etc/resolv.conf
  7. Opcjonalnie ustaw nazwę hosta, np. lo33uk.npg.io, jeśli chcesz utworzyć węzeł DD o określonej nazwie, być może takiej, która była wcześniej skonfigurowana i chcesz jej użyć. W razie potrzeby uruchom ponownie system, aby ustawić nazwę hosta.
  8. Następnie uruchamiamy główny skrypt, aby zainstalować węzeł DD. Opcjonalnie użyj programu tmux, aby zabezpieczyć się przed ewentualnym zerwaniem połączenia SSH podczas aktualizacji, a następnie w bieżącym katalogu, do którego pobrano skrypt, wykonaj 'bash d'.
  9. Sprawdzaj komunikaty wyświetlane na ekranie pod kątem błędów; podczas działania skryptu adres IP serwera zostanie dodany do listy dostępu NP; dzieje się to automatycznie, ale może być konieczne odczekanie kilku minut na aktualizację listy dozwolonych adresów przez cron, zanim będzie można kontynuować.
  10. Sprawdź postęp skryptu, napraw/zgłoś wszelkie pojawiające się problemy.
  11. Uruchom skrypt czyszczący /apps/dadesktop_npnode_deploy/modules/00-cleanup. Ten skrypt usuwa wiele nieużywanych pakietów i obniża wersje innych.
  12. Uruchom /apps/zabbix-agent/services/test-all.sh, aby sprawdzić, czy nie ma dalszych problemów.
  13. W przypadku pakietów, które nie są już utrzymywane, usuń je za pomocą apt purge xxx, yyy. Usuń wszystkie widoczne uszkodzone dowiązania.
  14. Następnie uruchom ponownie system i przetestuj działanie.
     

Testowanie węzła DD po instalacji

  1. Sprawdź nowy wpis serwera DD i przetestuj za pomocą testowego TPAPI itp. w interfejsie graficznym DaDesktop.
  2. Dodaj daty rozpoczęcia i wygaśnięcia dla serwera w DaDesktop, dodaj do centrum danych, jeśli jest to wymagane
  3. Sprawdź działanie nowego serwera w Zabbix, wyczyść ewentualne problemy, jeśli jest to konieczne.
  4. Przetestuj, dodając maszynę Standalone do serwera i uruchamiając ją
  5. Dodaj serwer do centrum danych, jeśli wymagane
  6. Opcjonalnie, jeśli wymagane, dodaj reguły rozliczeniowe dla nowego serwera
  7. Skopiuj szablony systemu operacyjnego na serwer, jeśli to konieczne.
  8. W razie potrzeby poinformuj instruktora/koordynatora, aby użył tego konkretnego serwera, jeśli ma on być wykorzystany do konkretnego kursu

 Ciesz się!