Lista kontrolna walidatora

Ta lista kontrolna pomoże Ci zrozumieć rolę walidatora i przygotować Cię do roli.Odwiedź EthStaker na Discord lub Reddit w dowolnym momencie podczas konfiguracji, aby uzyskać przyjazną pomoc!

Sekcja 1 - Przed rozpoczęciem

Przejrzyj tę sekcję przed podjęciem decyzji o kontynuowaniu konfiguracji walidatora.

Wyłączenie odpowiedzialności za rekomendacje

Sugestie sprzętowe stale ewoluują. Obecne minimalne wymagania mogą wzrosnąć o rząd wielkości po wprowadzeniu shardingu. Zrób własne badania przed wpłaceniem środków.

Dysk twardy

  • Musisz uruchomić klient wykonania oraz klient konsensusu.
  • Od czasu połączenia dostawcy zewnętrzni (tacy jak Infura i Alchemy) przestali być realnymi opcjami outsourcingu odpowiedzialności za warstwę wykonania. Wszyscy stakerzy muszą uruchomić zarówno klienta wykonania, jak i konsensu w celu prawidłowego poświadczenia w sieci.
  • Od maj 2022 będziesz potrzebować około 1 TB miejsca na same dane łańcucha wykonania sieci głównej (ze wzrostem o około 1 GB/dzień).
  • Sieć Ethereum powstała 30 czerwca 2015 roku. Z biegiem czasu jej rozmiar rośnie, a wprowadzenie shardingu zwiększy również wymagania dotyczące wielkości pamięci masowej, pamięci operacyjnej i przepustowości.
  • Będziesz potrzebował pamięci SSD, aby konsekwentnie obsługiwać niezbędne prędkości odczytu/zapisu.
  • Pamiętaj, aby uwzględnić wystarczającą ilość miejsca na dysku, dopóki nie uruchomisz konserwacji w węźle.

Procesory CPU i RAM

  • Sprawdź w dokumentacji klienta, czy sprzęt, którego chcesz użyć, jest wystarczający i obsługiwany.
  • Wykorzystanie zasobów może się znacznie różnić między klientami. Zbadaj różnych klientów, jeśli pracujesz z ograniczeniami zasobów.

Internet

  • Idealnie byłoby, gdyby Twoje połączenie internetowe było niezawodne i działało możliwie bez przerwy 24/7.
  • Upewnij się, że Twoja przepustowość nie może być dławiona i nie jest ograniczona, aby Twój węzeł pozostawał zsynchronizowany i był gotowy do weryfikacji po wywołaniu.
  • Potrzebujesz również wystarczającej przepustowości przesyłania. Od maj 2022 jest to około 1,2–1,3 GB w przypadku pobierania i około 0,9–1 GB w przypadku przesyłania, i prawdopodobnie się zwiększy.

Uwagi

  • Unikaj zbyt skomplikowanych ustawień i miej świadomość kompromisów. Bycie offline przez krótki czas spowoduje niewielkie kary za brak aktywności, ale zostaną one łatwo odzyskane po ponownym przejściu w tryb online na mniej więcej taki sam okres. Skomplikowane kopie zapasowe mogą zwiększyć koszty konfiguracji, a nadmiarowi zapasowi walidatorzy mogą prowadzić do poważniejszej kary, znanej jako odcinanie. Więcej na temat ograniczenia ryzyka
  • Synchronizacja klienta wykonania może potrwać w najgorszym przypadku kilka dni.

Sekcja 2 - Podczas konfiguracjiUżyj tego jako odniesienia podczas konfiguracji klienta, aby sprawdzić ważne kroki.

Wstępna konfiguracja

  • Zacznij od skonfigurowania wybranego sprzętu i systemu operacyjnego.
  • Aby zmaksymalizować bezpieczeństwo i wydajność swojego węzła, użyj dedykowanego sprzętu do obsługi klientów. Zmniejsza to ryzyko narażenia na złośliwe oprogramowanie i minimalizuje konkurencję o zasoby obliczeniowe, zapewniając, że Twój węzeł przez cały czas radzi sobie z obciążeniem sieci i obowiązkami sprawdzania poprawności.

Zabezpieczenie węzła

Klient wykonaniaPort domyślny
Nethermind30303 TCP/UDP
Geth30303 TCP/UDP
Erigon30303 TCP/UDP
Besu30303 TCP/UDP
Klient konsensusuPort domyślny
Nimbus9000 TCP/UDP
Teku9000 TCP/UDP
Lighthouse9000 TCP/UDP
Prysm13000 TCP, 12000 UDP
Dowiedz się więcej o portach w sieci

Konfiguruj synchronizację czasu

Dla Ubuntu 20.04
  • Uruchom następujące polecenie:
    timedatectl
  • Sprawdź, czy NTP Service to active.
  • Sprawdź, czy Local time, Time zone i Universal time są poprawne.
  • Jeśli NTP Service nie jest active, uruchom
    sudo timedatectl set-ntp on
  • Jeśli zobaczysz komunikat o błędzie Failed to set ntp: NTP not supported, może być konieczne zainstalowanie pakietu chrony lub ntp.
  • Uwaga: domyślnie maszyny wirtualne mogą wyłączyć NTP, więc może być konieczne znalezienie obejścia dla swojego środowiska.
  • Uwaga: czas RTC (zegar czasu rzeczywistego) może być ustawiony na lokalną strefę czasową zamiast UTC, szczególnie w maszynie wirtualnej, która ma skonfigurowany zegar w systemie Windows.

Ćwiczenie w sieci testowej

Zdecydowanie zalecamy wykonanie tych kroków w bieżącej sieci testowej przed siecią główną. Goerli

Skonfiguruj swojego klienta wykonania

Przejrzyj role i obowiązki walidatora

Pamiętaj

Wszyscy stakerzy muszą obsługiwać klienta wykonania wraz z klientem konsensusu.

Rekomendowane

Discord: Nethermind | Geth | Erigon | Besu

Skonfiguruj klienta konsensusu

Ostrzeżenie!

Uruchamianie walidatora w wielu miejscach jest bardzo ryzykowne. Doprowadzi to do zdarzenia, które można slashować i wyrzucenia z sieci. Więcej na temat ograniczenia ryzyka

Rekomendowane

Discord: Nimbus | Teku | Lighthouse | Prysm

Uwierzytelnianie JWT

Komunikacja między warstwą wykonania a warstwą konsensusu odbywa się za pomocą Interfejs API mechanizmu. Jest to zestaw metod JSON-RPC, które mogą być używane do komunikacji między dwoma warstwami klienckimi.Komunikacja ta jest zabezpieczona za pomocą JWT, czyli klucza tajnego, który jest współużytkowany tylko między dwoma klientami w celu wzajemnego uwierzytelniania. Ten wspólny klucz tajny JWT musi zostać udostępniony każdemu klientowi (zarówno klientowi wykonania, jak i klientowi konsensusu), aby umożliwić im prawidłową komunikację między sobą.Dokumenty JWT konsensusu: Lighthouse | Nimbus | Prysm | TekuDokumenty wykonania JWT: Besu | Erigon | Geth | Nethermind

Ustaw adres do wycofywania środków

Stakerzy muszą ustawić adres wypłaty, aby odblokować płatności z tytułu nagród z warstwy konsensusu. Ustawienie następuje podczas generowania kluczy walidatorów.
Jeśli nie podasz adresu do wycofywania środków przed wpłatą, konieczne będzie wykonanie dodatkowego kroku w celu zaktualizowania kluczy i umożliwienia wycofywania środków.
Więcej o wypłatach w stakingu

Ustaw odbiorcę opłaty

Stakerzy muszą podać adres odbiorcy opłaty swojemu klientowi konsensusu, aby otrzymać nagrody za opłaty transakcyjne. Jest to zwykły adres Ethereum, do którego wszyscy są przyzwyczajeni.
Jeśli nie podasz adresu klientowi, nie otrzymasz opłat transakcyjnych, gdy walidator zaproponuje bloki.
Instrukcje ustawiania tych opcji można znaleźć w dokumentacji klienta konsensusu.Dokumenty odbiorcy opłaty: Lighthouse | Nimbus | Prysm | Teku

Węzeł latarni (BN) warstwy konsensusu

Wymagany

  • Przeprowadź weryfikację za pomocą następującego polecenia, aby sprawdzić, czy jest zwracana poprawna wersja klienta:
    curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' http://<YourServerLocation>:8545
  • Upewnij się, że Twój węzeł ma więcej niż 20 użytkowników.

Klient walidatora warstwy konsensusu (VC)

Wymagany

Sekcja 3 – Po wpłacieChroń swoje fundusze za pomocą oprogramowania monitorującego i dowiedz się, jak radzić sobie z różnymi scenariuszami w świecie rzeczywistym.

Te kroki są opcjonalne, ale zaleca się zoptymalizowanie Twojego węzła.

Monitorowanie

Monitor Prometheus i Grafana

Klienci wspierają Prometheus i Grafana, aby pomóc Ci wizualizować ważne dane w czasie rzeczywistym dotyczące Twojego walidatora.Dokumenty monitorowania: Lighthouse | Nimbus | Prysm | Teku

Symulacje sieci testowej

Podczas walidacji w sieci testowej przeprowadź te symulacje, aby dowiedzieć się więcej o swoim węźle i lepiej przygotować się na sieć główną:

Zaawansowana architektura systemu

  • Aby uniknąć ujawnienia swojej tożsamości walidatora w sieci, możesz użyć godnej zaufania sieci VPN, aby zmniejszyć ryzyko ujawnienia swojego adresu IP.
  • Co więcej, możesz ustawić klienta walidatora (VC) i węzeł śledzący (BN) na oddzielnych komputerach i adresach IP, dzięki czemu nawet jeśli Twój węzeł śledzący jest zagrożony, Twój magazyn kluczy jest przechowywany na innym komputerze.

Graffiti

Możesz użyć flagi klienta walidatora graffiti, aby dodać osobisty kontakt do proponowanych bloków (jakiś dowolnie wybrany tekst). Będziesz mógł zobaczyć to za pomocą eksploratorów łańcucha bloków Beaconcha.in lub BeaconScan.
Jeśli masz pytania, społeczność EthStaker jest dobrym miejscem do uzyskania pomocy! Możesz znaleźć wsparcie na Discord lub Reddit.