consensys.teku

Ansible Rolle: Teku

Beschreibung

Ansible-Rolle, die Teku installiert, konfiguriert und ausführt: ein Java Ethereum 2 Client für Unternehmen.

Inhaltsverzeichnis

Unterstützte Plattformen

* MacOS
* Debian
* Ubuntu
* Redhat (CentOS/Fedora)
* Amazon

Abhängigkeiten

  • JDK 11 oder höher

Rollenvariablen

Alle Variablen, die überschrieben werden können, sind in der Datei defaults/main.yml gespeichert. Diese Variablen sind im Allgemeinen Konfigurationsoptionen. Weitere Informationen finden Sie in der Teku Dokumentation.

Name Standardwert Beschreibung
teku_version unset ERFORDERLICH Version von Teku, die installiert und ausgeführt werden soll. Alle verfügbaren Versionen sind auf unserer Teku Release Seite aufgeführt.
teku_user teku Teku-Benutzer
teku_group teku Teku-Gruppe
teku_download_url https://artifacts.consensys.net/public/teku/raw/names/teku.tar.gz/versions/{{ teku_version }}/teku-{{ teku_version }}.tar.gz Die heruntergeladene tar.gz-Datei. Sie können dies verwenden, wenn Sie Teku von einem benutzerdefinierten Speicherort wie einem internen Repository abrufen müssen.
teku_install_dir /opt/teku Installationspfad
teku_config_dir /etc/teku Pfad für die Standardkonfiguration
teku_data_dir /opt/teku/data Pfad für das Datenverzeichnis
teku_log_dir /var/log/teku Pfad für das Verzeichnis der Protokolle
teku_log_filename {{ teku_log_dir }}/teku.log Pfad mit dem Speicherort (relativ oder absolut) und dem Dateinamen des Protokolls
teku_profile_file /etc/profile.d/teku-path.sh Pfad, um Teku in den System-PATH zu laden
teku_managed_service true Aktiviert einen systemd-Dienst (oder launchd, wenn es sich um Darwin handelt)
teku_launchd_dir /Library/LaunchAgents Das Standard-Lauchd-Verzeichnis
teku_systemd_dir /etc/systemd/system/ Das Standard-systemd-Verzeichnis
teku_systemd_state restarted Die Standardeinstellung für den Status des systemd-Dienstes
teku_output_transition_dir /tmp/teku
teku_node_private_key_file ""
teku_network minimal Vorgegebene Netzwerkkonfiguration
teku_host_ip ""
teku_p2p_enabled True Aktiviert oder deaktiviert die gesamte P2P-Kommunikation
teku_p2p_interface 0.0.0.0 Gibt die Netzwerk-Schnittstelle an, über die der Knoten P2P-Kommunikation empfängt
teku_p2p_port 9000 Gibt die P2P-Anschlussports (UDP und TCP) an
teku_p2p_advertised_port 9000 Der angegebene P2P-Port
teku_p2p_discovery_enabled True Aktiviert oder deaktiviert das Entdecken von P2P-Peers
teku_interop_genesis_time 0
teku_interop_start_state ""
teku_interop_owned_validator_start_index 0
teku_interop_owned_validator_count 64
teku_interop_number_of_validators 64
teku_interop_enabled False
teku_validators_key_file "" Pfad zur YAML-Formatierten Datei für die Entschlüsselung der Validator-Schlüssel
teku_deposit_mode normal
teku_deposit_input_file ""
teku_deposit_number_validators 64
teku_deposit_contract_address 0x Eth1-Adresse des Einzahlungsvertrags
teku_deposit_eth1_endpoint "" JSON-RPC-URL des Eth1-Knotens
teku_metrics_enabled True Auf "true" setzen, um den Metriken-Exporter zu aktivieren
teku_metrics_interface 0.0.0.0
teku_metrics_port 8008 Metrikport bei Bereitstellung als Monolith
teku_beacon_metrics_port 8008 Metrikport des Beacon-Dienstes, wenn er als eigenständiger Dienst bereitgestellt wird
teku_validator_metrics_port 8009 Metrikport des Validator-Dienstes, wenn er als eigenständiger Dienst bereitgestellt wird
teku_metrics_categories [] (Alle Kategorien aktiviert) Kategorien, für die Metriken erfasst werden sollen
teku_data_path /data Verwenden Sie denselben Ordner für sowohl Validator- als auch Beacon-Dienste im Standalone-Modus
teku_data_storage_mode prune Legt die Strategie für den Umgang mit historischen Kettendaten fest
teku_beacon_rest_api_port 5051
teku_beacon_rest_api_docs_enabled False
teku_beacon_rest_api_enabled True Aktiviert den REST-API-Dienst
teku_beacon_rest_api_interface 127.0.0.1 Schnittstelle für den REST-API-Dienst
teku_beacon_rest_api_host_allowlist ["*"] Host-Zulassungsliste für den REST-API-Dienst
teku_cmdline_args []
teku_cmdline_args_beacon teku_cmdline_args Nur im Standalone-Modus anwendbar. Ermöglicht das Festlegen von beacon-spezifischen Werten
teku_cmdline_args_validator teku_cmdline_args Nur im Standalone-Modus anwendbar. Ermöglicht das Festlegen von validator-spezifischen Werten
teku_env_opts []
teku_env_opts_beacon teku_env_opts Nur im Standalone-Modus anwendbar. Ermöglicht das Festlegen von beacon-spezifischen Werten
teku_env_opts_validator teku_env_opts Nur im Standalone-Modus anwendbar. Ermöglicht das Festlegen von validator-spezifischen Werten
teku_standalone_validator False Validator im Standalone-Modus ausführen
teku_beacon_enabled True Ob der Beacon-Knoten bereitgestellt werden soll

Liste der Variablen, die in der Ansible-Rolle nicht mit Standardwerten definiert sind. Diese Variablen werden jedoch über die Befehlszeile gesetzt und in der Teku-Konfigurationsdatei konfiguriert.

Name Konfigurationsdatei-Parameter Beschreibung
teku_data_beacon_path data-beacon-path Pfad zu den Beacon-Daten
teku_data_storage_archive_frequency data-storage-archive-frequency Legt die Häufigkeit in Slots fest, mit der endgültige Zustände auf die Festplatte gespeichert werden
teku_data_validator_path data-validator-path Pfad zu den Daten des Validator-Clients
teku_ee_endpoint ee-endpoint Die URL des Standorts der Ausführungsengine
teku_ee_jwt_secret_file ee-jwt-secret-file Datei zum Lesen des JWT-Authentifizierungsgeheimnisses der Ausführungsengine
teku_log_level logging Protokollierungsebene: OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
teku_log_validator_duties log-include-validator-duties-enabled Ob Ereignisse protokolliert werden, wenn Validatoren Aufgaben erfüllen
teku_p2p_discovery_bootnodes p2p-discovery-bootnodes Liste von ENRs der Bootknoten z.B: ['enr:-enr-string','enr:-enr-string']
teku_p2p_peer_lower_bound p2p-peer-lower-bound Untergrenze für die Zielanzahl der Peers
teku_p2p_peer_upper_bound p2p-peer-upper-bound Obergrenze für die Zielanzahl der Peers
teku_p2p_static_peers p2p-static-peers Statische Peers. z.B: ['peer1-address','peer2-address']
teku_p2p_subscribe_all_subnets_enabled p2p-subscribe-all-subnets-enabled Wahr/Falsch
teku_validators_external_signer_public_keys validators-external-signer-public-keys Die Liste der öffentlichen Schlüssel externer Unterzeichner z.B: ['key1','key2']
teku_validators_external_signer_timeout validators-external-signer-timeout Timeout (in Millisekunden) für den externen Signierdienst
teku_validators_external_signer_url validators-external-signer-url URL für den externen Signierdienst
teku_validators_proposer_default_fee_recipient validators-proposer-default-fee-recipient Standardgebührenempfänger, der bei der Vorschlagserstellung von Blöcken verwendet wird
teku_validators_proposer_config validators-proposer-config Remote-URL oder lokaler Datei-Pfad zum Laden der Vorschlagskonfiguration
teku_validators_proposer_config_refresh_enabled validators-proposer-config-refresh-enabled Ob die Vorschlagskonfiguration regelmäßig aktualisiert werden soll
teku_validators_graffiti validators-graffiti Graffiti, das während der Blockerstellung eingeschlossen werden soll (wird in Bytes umgewandelt und auf Bytes32 aufgefüllt)
teku_validators_keystore_locking_enabled validators-keystore-locking-enabled Aktiviert die Sperrung von Validator-Keystore-Dateien (gültige Werte: True, False)
teku_validators_performance_tracking_enabled validators-performance-tracking-enabled Aktiviert die Verfolgung und Protokollierung der Validator-Leistung (gültige Werte: True, False)
teku_validators_early_attestations_enabled validators-early-attestations-enabled Aktiviert die Produktion früher Attestationen (gültige Werte: True, False)
teku_ws_checkpoint ws-checkpoint Ein aktueller Kontrollpunkt innerhalb des schwachen Subjektivitätszeitraums. Format :
teku_beacon_node_api_endpoints beacon-node-api-endpoints Array. Die API-Endpunkte des Beacon-Knotens, mit denen der Validator-Client verbinden soll.

Standalone-Modus

Es ist möglich, Teku so zu konfigurieren, dass es entweder im Monolith-Modus (Beacon und Validator laufen im selben Prozess) oder im Standalone-Modus (Beacon und Validator laufen in ihrem eigenen Prozess) läuft. Der Standalone-Modus führt den Beacon-Dienst in einem eigenen Prozess aus und den Validator-Dienst in einem eigenen Prozess. Der systemd-Dienstname teku wird für den Beacon-Dienst verwendet und teku-validator für den Validator-Dienst, wenn im Standalone-Modus ausgeführt. Die Ansible-Rolle läuft standardmäßig Teku im Monolith-Modus, das Verhalten kann mit der Variablen teku_standalone_validator=False/True gesteuert werden.

Beispiel Playbook

  1. Standardsetup: Installieren Sie die Rolle aus der Galaxy
ansible-galaxy install pegasyseng.teku

Erstellen Sie eine requirements.yml mit folgendem Inhalt: Ersetzen Sie x.y.z durch die Version, die Sie von der Teku Release Seite verwenden möchten.

---
- hosts: localhost
  connection: local
  force_handlers: True

  roles:
  - role: pegasyseng.teku
    vars:
      teku_version: x.y.z

Führen Sie es mit ansible-playbook aus:

ansible-playbook -v /path/to/requirements.yml
  1. Installation über GitHub
ansible-galaxy install git+https://github.com/pegasyseng/ansible-role-teku.git

Erstellen Sie eine requirements.yml mit folgendem Inhalt: Ersetzen Sie x.y.z durch die Version, die Sie von der Teku Release Seite verwenden möchten.

---
- hosts: localhost
  connection: local
  force_handlers: True

  roles:
  - role: ansible-role-teku
    vars:
      teku_version: x.y.z

Führen Sie es mit ansible-playbook aus:

ansible-playbook -v /path/to/requirements.yml

Lizenz

Apache

Autoreninformationen

PegaSysEng, 2020

Über das Projekt

Teku is an open-source java enterprise ethereum 2 client

Installieren
ansible-galaxy install consensys.teku
Lizenz
Unknown
Downloads
6.2k
Besitzer
Consensys is the software engineering leader of the blockchain space. Our full-stack Ethereum products help developers build next-generation networks.