:DE: Relay & Block Producer auf einem Host?

Ich arbeite mich gerade in die Cardano-Materie tiefer ein. Selbst für mich als Entwickler ist der Einstieg ziemlich schwer. In den Dokumentationen liest man das der Relay Node und der Block Producer auf getrennten Nodes ist. Gibt es einen triftigen technischen Grund dafür (außer vielleicht das der Host dann Single Point Of Failure ist)?

Oder fahren von euch welche beides auf einem physischen Host?

1 Like

Hallo,
Die erste Frage ist ob Du einen Block-producer hast, mit einigen Millionen active-stake damit er auch selbst Blöcke erzeugen kann.

Als Entwickler kannst du einen Relay/Passive node problemlos verwenden, mit allen Schnittstellen, db-sync, usw.

Ein echter Block-producer sollte aus Sicherheitsgründen gar nicht aus dem Internet erreichbar sein.
Von den Ressourcen her kann ein Server leicht mehrere Instanzen bedienen, wie gesagt wenn ein BP mit Stake vorhanden ist.

Es gibt übrigens auch ein Testnet, wo du mit testADA risikofrei entwickeln kannst.

1 Like

Offen gesagt sehe ich keinen zwingenden Grund, BP und Relay nicht auf demselben Host zu haben. Es heisst, dass der BP nicht direkt im Internet hängen soll, damit er besser “geschützt” sei, wovor auch immer. Vermutlich vor einem Angreifer, der den Host übernimmt.

Nehmen wir also an, das Relay ist im Internet und es läuft dort nur der Cardano-Node und ein sshd mit public-key authentication. Falls dann ein Angreifer Zugriff auf den Relay-Node bekommen kann, sagen wir über eine remote execution im cardano-node, dann kann er auf demselben Weg vom Relay aus auf den BP zugreifen. So gesehen bringt es genau gar nichts, den BP auf einem separaten Host zu haben. Oder übersehe ich hier vielleicht etwas?

Wenn der Pool allerdings viele Blöcke produziert, wird es irgendwann wichtig, die Hosts unabhängig voneinander updaten zu können, ohne dass der Pool jemals offline ist. In diesem Fall ist es in der Tat sinnvoll, mehr als ein Relay zu haben und auch mehrere BP auf separaten Hosts, die man unabhängig voneinander runterfahren kann.

Allerdings habe ich noch von keiner Architektur gehört, bei der ein Pool mehr als einen aktiven BP gleichzeitig hat. Zwar kann man ohne Weiteres zwei BP mit den gleichen Keys fahren, allerdings würden diese dann alle Blöcke doppelt produzieren, was der Gesundheit des Netzes wohl kaum zuträglich sein kann.

Überhaupt gibt es kaum Dokumentation über best Practice Architekturen von Stake Pools, oder jedenfalls habe ich diese bisher nicht gefunden. Für sachdienliche Hinweise wäre ich sehr dankbar.

1 Like