Jump to content

Lohnt sich das aufsetzen einer Ethereum Full Archival Node?


GhostTyper

Recommended Posts

Hallo Forum,

vor langer Zeit hat mir Christoph Bergmann auf die Frage, was man der Crypto-Welt gutes tun könnte geantwortet, dass ich ja eine Ethereum Full Archival Node hosten könnte. Leider habe ich jetzt erst Zeit für ein neues "Hobby-Projekt".

Da einige Zeit vergangen ist nun meine Frage: Würde sich so etwas (Ethereum Full Archival Node) heute noch "lohnen" (hilft das wem, etc.)? Gibt es vielleicht "lohnenderes"?

Wenn ich so eine Node aufsetzen würde, würde ich mich auch daran versuchen einen Blockchain-Explorer oder irgend eine andere Applikation zu entwickeln. Bei anderen Vorschlägen würde ich entsprechend etwas anderes, dass dazu passt "zum Lernen" finden.

Vielen Dank für Euren Input.

Link to comment
Share on other sites

Hallo Kein Mensch,

ich habe 2017 bis Mitte 2018 eine sehr große IRI Node betrieben und auch eine Webseite mit Live-Statistiken (woher kommen die Nutzer, wie viel Traffic benötigt die Node-zu-Node Kommunikation oder die API, etc.) dazu entwickelt. Später (als IRI extrem instabil wurde, weil der letzte Snap-Shot schon so lange her war und die meisten Leute VPS mit zu wenig Leistung verwendet haben) habe ich dann auch Offline-Snapshots der Datenbank zur Verfügung gestellt.

Ich habe die Node schließlich aufgegeben, als ich erkannt habe, dass das damalige Konzept wahrscheinlich nicht wie prognostiziert funktioniert und es unwahrscheinlich wird, dass der Coo jemals abgeschafft werden kann ohne signifikante Änderungen an IOTA.

Ich habe den IOTA Discord verlassen als "Q" so gehyped wurde und noch keiner wusste, was das eigentlich ist. Seither habe ich nicht mehr wirklich verfolgt wie es mit IOTA weiter gegangen ist. Ist der Coordinator mittlerweile abgeschaltet? (Rhetorische Frage.)

Da es mir im Prinzip egal ist, in welches Projekt ich meine Zeit investiere - es nur Leuten nutzen sollte oder sonstwie relevant sein sollte - kann ich mir trotzdem vorstellen so eine Node aufzusetzen. Wenn Dich mein Denken über IOTA nicht abgeschreckt hat würde ich mich sehr gerne mit Dir darüber unterhalten.

Weiterer Input andere Projekte betreffend ist immer noch gerne gesehen.

  • Like 1
Link to comment
Share on other sites

vor 22 Stunden schrieb GhostTyper:

Würde sich so etwas (Ethereum Full Archival Node) heute noch "lohnen" (hilft das wem, etc.)?

Für die Gemeinschaft würde sich das lohnen. Die Anforderungen an eine Full Archival Node sind inzwischen so stark angestiegen, dass man dafür schon einen Server mit mehreren TB an SSD Speicher benötigt. Macht natürlich nur Sinn wenn auch genug Bandbreite vorhanden ist um die Node auch der Allgemeinheit zur Verfügung zu stellen. Falls nicht, würde auch eine normale Full Node reichen.

vor 22 Stunden schrieb GhostTyper:

Gibt es vielleicht "lohnenderes"?

Darf ich dich zusätzlich für Storj begeistern? Wir haben Bedarf an weiteren Storage Nodes und dein Hobby können wir auch etwas fördern. Ich gehöre eher zu der weniger kreativen Sorte daher fällt mir spontan nichts ein. Genug Möglichkeiten gibt es aber sicherlich.

Edit: Huch jetzt habe ich glatt vergessen zu erwähnen, dass ich für Storj arbeite und daher als Befangen einzustufen bin. Das bitte im Hinterkopf behalten.

Edited by skunk
  • Haha 1
Link to comment
Share on other sites

Hallo Skunk,

ich habe wirklich viele freie Ressourcen (CPU, RAM und Bandbreite) und könnte so eine Ethereum Full Archival Node ohne weiteres betreiben.

Ich werde dir betreffend Storj eine Nachricht schreiben. Dann kannst Du mir ja vielleicht ein paar Dinge dazu erzählen. :)

Link to comment
Share on other sites

Im Prinzip kannst du insgesamt bereits was gutes tun wenn du Fullnodes mit Wallets laufen lässt. Wenn die Bandbreite hoch genug ist kannst du mehrere einfach laufen lassen. Z.b. schonmal für die Coins die du auch selber hast.

Und wenn du billigen Strom bekommst kannst du auch minen.

Link to comment
Share on other sites

Hallo battlecore,

Minen lohnt sich für mich in den meisten Fällen nicht, da ich nur viel CPU, RAM und Bandbreite habe, nicht aber Grafikkarten oder andere spezielle Hardware.

Ich kenne mich mit Ethereum nicht so gut aus. Was würde das laufen lassen von Wallets denn bringen?

Link to comment
Share on other sites

vor 14 Stunden schrieb GhostTyper:

Hallo Kein Mensch,

ich habe 2017 bis Mitte 2018 eine sehr große IRI Node betrieben und auch eine Webseite mit Live-Statistiken (woher kommen die Nutzer, wie viel Traffic benötigt die Node-zu-Node Kommunikation oder die API, etc.) dazu entwickelt. Später (als IRI extrem instabil wurde, weil der letzte Snap-Shot schon so lange her war und die meisten Leute VPS mit zu wenig Leistung verwendet haben) habe ich dann auch Offline-Snapshots der Datenbank zur Verfügung gestellt.

Ich habe die Node schließlich aufgegeben, als ich erkannt habe, dass das damalige Konzept wahrscheinlich nicht wie prognostiziert funktioniert und es unwahrscheinlich wird, dass der Coo jemals abgeschafft werden kann ohne signifikante Änderungen an IOTA.

Ich habe den IOTA Discord verlassen als "Q" so gehyped wurde und noch keiner wusste, was das eigentlich ist. Seither habe ich nicht mehr wirklich verfolgt wie es mit IOTA weiter gegangen ist. Ist der Coordinator mittlerweile abgeschaltet? (Rhetorische Frage.)

Da es mir im Prinzip egal ist, in welches Projekt ich meine Zeit investiere - es nur Leuten nutzen sollte oder sonstwie relevant sein sollte - kann ich mir trotzdem vorstellen so eine Node aufzusetzen. Wenn Dich mein Denken über IOTA nicht  abgeschreckt hat würde ich mich sehr gerne mit Dir darüber unterhalten.

Weiterer Input andere Projekte betreffend ist immer noch gerne gesehen.

Ja, diese Probleme waren bekannt und vieles wurde zwischenzeitlich behoben und besser gemacht. 

Eine Permanode ist auch etwas anderes als eine IRI Node.  Sie dient zum speichern von Daten. Snapshot unabhängig. 

Der Coo der Mainnetzes ist noch nicht durch, soll aber in nicht allzu ferner Zukunft durchgehen.

Lösungsansätze sind fast fertig, Testphasen laufen gerade.

Edited by Kein Mensch
Link to comment
Share on other sites

Hallo Kein Mensch,

diese Link-Sammlung hilft mir leider nicht besonders. Mit den Basics kenne ich mich wie oben bereits geschrieben aus. Ich hab' mir jetzt mal angeguckt, wie man eine Permanode mit Chronicle aufsetzt. Meiner Erfahrung nach wollen Leute für Daten leider nichts bezahlen, die sie auch einfach so downloaden können. (Meine Spenden-Adresse hat damals nur knappe 3 Mi "eingenommen" für über 2500 Downloads der Datenbank durch Spenden auf freiwilliger Basis.) Würde ich so eine Node also anbieten, dann unentgeltlich und somit das zukünftige Geschäft anderer Leute kaputt machen.

Ich habe jetzt Mal eine Storj-Storagenode aufgesetzt. Ich bitte trotzdem noch um weitere Vorschläge, was ich tun könnte. Vielleicht gibt es noch den einen oder anderen Vorschlag.

Link to comment
Share on other sites

vor 13 Stunden schrieb GhostTyper:

Hallo battlecore,

Minen lohnt sich für mich in den meisten Fällen nicht, da ich nur viel CPU, RAM und Bandbreite habe, nicht aber Grafikkarten oder andere spezielle Hardware.

Ich kenne mich mit Ethereum nicht so gut aus. Was würde das laufen lassen von Wallets denn bringen?

Da wäre Monero geeignet. Der wird Ende November auf einen reinen CPU-Algorithmus namens RandomX umgestellt.

Wenn du einen Ryzen 7 3700X oder mehr hast dann biste vorn mit dabei. Zwei Ram-Riegel wegen Speicherbandbreite sind ratsam.

Und Large Pages / Hughe Pages im Betriebssystem aktivieren damit die CPU voll genutzt wird.

XMRig als Miner ist schon gut vorbereitet.

Zieht etwa 135-150 Watt aus der Steckdose mit Ubuntu. Mit Windows 10 etwa 15 Watt mehr.

Die CPU sollte gute Kühlung haben und wenn ein kleiner Zusatzlüfter auf die Spannungswandler des Boards pustet wärs gut. Die Spannungswandler sind bei AMD-Systemen um die CPU-Sockel rum, die kleinen schwarzen Chips, so 10 Stück oder mehr. Bessere Boards haben da einen grossen Kühlkörper drauf.

An sich simpel, bei Fragen einfach fragen.

Edited by battlecore
Link to comment
Share on other sites

Hallo battlecore,

ich habe leider keine AMD-Hardware. Allerdings habe ich noch ungefähr 85 Cores Intel Xeon Gold 6146 und 700 GB RAM frei die sowieso bezahlt sind. Hast Du mir einen Link zu einem guten Tutorial (eines, welches mir auch sagt, wie ich die einzelnen Mining-Prozesse gut dimensioniere, bzw. Erfahrungswerte angibt)? Leider müsste ich dafür auch ein Wallet aufsetzen, etc. und habe davon noch keine Ahnung.

Fragen, die sich mir direkt nach kurzem anlesen stellen:

  1. Ist die Software idr. so, dass sie dann am 30.11. automatisch auf RandomX umstellt oder muss ich dort dann noch etwas manuell machen?
  2. Ich würde gerne solo-mining mit dem cli-wallet probieren. Betreffend Frage 1: Müsste das Offizielle Wallet hierfür schon alles bieten? (Ich habe gelesen, dass diesen Monat die Update-Phase ist, daher nehme ich an, die Wallet ist hier schon passend? Oder muss ich dann am 30.11. die Software nochmals updaten?)
Edited by GhostTyper
+Fragen
Link to comment
Share on other sites

Am 20.11.2019 um 16:40 schrieb Christoph Bergmann:

Probier' doch mal einfach, wie lange der Ethereum Archival Node synchronisiert. Bin gespannt :)

Allrighty, then.

Ich kenne mich mit Ethereum nicht so aus und hoffe, dass ich alles richtig gemacht habe, nachdem ich mich jetzt kurz eingelesen habe.

Die Node läuft unter den Standard-Ports auf eth-archive.intb.io mit nur der eth-API aktiviert. (HTTP-RPC und WebSocket-API.) Wenn hier andere APIs nötig sind muss man mir das sagen. :D

Synchronisation hat begonnen um 16:39 CET am 21.11.2019.

Ich gebe Bescheid, wenn diese fertig ist. Ich nehme auch gerne Wetten an. Im Internet steht, dass die Synchronisation Wochen benötigt.

  • Thanks 1
Link to comment
Share on other sites

Am 20.11.2019 um 16:40 schrieb Christoph Bergmann:

Probier' doch mal einfach, wie lange der Ethereum Archival Node synchronisiert. Bin gespannt :)

Um 17:30 CET am 29.11.2019 ist die Node gesynced gewesen. Da die Node zwischendrin ungefähr drei Stunden offline gewesen ist bedeutet dies eine Sync-Zeit von:

7 Tagen und 22 Stunden.

Die Blockchain ist jetzt 3.305,32 GB groß.

Abfragen sind mittel eth- und web3-Protokoll möglich:

eth-archive.intb.io

Weiß jemand, wie man das testen kann? Christoph?

Edited by GhostTyper
+Host
Link to comment
Share on other sites

Mit web3 kannst du das testen. Der Unterschied zwischen einer Full Archive und einer normalen Node ist die Transaktionshistorie. Den aktuellen Kontostand zeigen dir beide an. Was vor einigen Jahren an Ein und Ausgängen auf der Adresse waren, dass kann dir nur die Full Archive Node sagen.

Link to comment
Share on other sites

Wow, das geht ja eigentlich. Eine Tomatenpflanze braucht viel länger zu wachsen, sogar ein Brief nach Österreich dauert manchmal länger ... was für eine Maschine steckt bei dir da denn dahinter? Und weißt du, welche Ressourcen am meisten beansprucht worden sind?

Hm, theoretisch könnte man mit der web3 api - das kenne ich als javascript library - einige Anfragen durchführen. Ich würde sagen, du kannst einfach die web3 Library bei dir installieren und dann per localhost abfragen.

https://web3js.readthedocs.io/en/v1.2.4/

Falls du einen offenen Server hast, könnte man das auch von außen machen.

Du könntest mit dem Node jetzt auch Etherscan Konkurrenz machen ...

Link to comment
Share on other sites

vor 12 Stunden schrieb skunk:

Der Unterschied zwischen einer Full Archive und einer normalen Node ist die Transaktionshistorie.

Äh, ja, danke. Das war mir schon klar. :)

vor 10 Stunden schrieb Christoph Bergmann:

was für eine Maschine steckt bei dir da denn dahinter? Und weißt du, welche Ressourcen am meisten beansprucht worden sind?

Der Server ist ziemlich stark und die der Node zugeteilten Ressourcen mit Ausnahme der Internetanbindung sind nicht "geshared". Die VM besteht konkret aus folgendem:

  • 8 Kerne Intel Xeon Gold 6146. Im Schnitt werden 2-4 Kerne voll benutzt.
  • Während dem Synchronisieren 256 GB RAM, jetzt (also während dem normalen Betrieb) noch 128 GB.
  • 4 TB RAID 10 SSD Speicherplatz für die Blockchain. (Werde ich demnächst erhöhen.)
  • 10 GBit/s Internet, geshared mit 6 Storj-Nodes. Traffic In: 675 GB, Traffic Out: 124 GB, incl. das finden anderer Nodes zum Synchronisieren, etc.

Am meisten benutzt wurde (und wird) die CPU. Danach Disk I/Os. Aber vielleicht schätze ich das auch falsch ein, denn ich habe im Internet Leute gefunden, die das auch versucht haben aufzusetzen und diese sind an "zu langsamer Disk" (laut deren Analyse) gescheitert.

vor 10 Stunden schrieb Christoph Bergmann:

Falls du einen offenen Server hast, könnte man das auch von außen machen.

Aber natürlich ist die Node von außen erreichbar. :DGibt es eine Stelle, wo man so eine Node "registrieren" oder "erwähnen" kann, so dass andere diese evtl. für Nachforschungen benutzen?

Eine Anfrage von außen funktioniert jedenfalls:

$ curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xBE0eB53F46cd790Cd13851d5EFf43D12404d33E8", "latest"],"id":666}' http://eth-archive.intb.io:8545

{"jsonrpc":"2.0","id":666,"result":"0x1e1e83d9813f6f46b1faf"}

Wenn ich wirklich einen guten Ethereum Blockchain Explorer machen möchte muss ich Ethereum erst Mal richtig verstehen. Hast Du mir da eine Buch- oder Link-Empfehlung? Oder jemanden, der mir wenigstens sagt mit welchen Features man beginnen sollte? :D

Link to comment
Share on other sites

vor 2 Stunden schrieb GhostTyper:

Äh, ja, danke. Das war mir schon klar. :)

Web3 hat ein paar Funktionen um die Transaktionshistorie zu erfragen. Warum hast du jetzt ausgerechnet mit getBalance getestet wenn doch klar ist, dass auch eine normale Node darauf antworten würde? Ich habe ein wenig das Gefühl du hast meinen Hinweis falsch verstanden.

Ein passender Test wäre gewesen eine alte Ethereum Adresse von zum Beispiel einer Börse zu nehmen und dann per Web3 die komplette Historie abzufragen. Auf diese Anfrage wird dir nur die Full Archive Node eine vollständige Antwort geben.

 

 

Link to comment
Share on other sites

vor 7 Stunden schrieb skunk:

Warum hast du jetzt ausgerechnet mit getBalance getestet wenn doch klar ist, dass auch eine normale Node darauf antworten würde?

Weil ich damit testen konnte, ob die Node tatsächlich von außen erreichbar ist. Beim überfliegen der verlinkten Doku (im Prinzip Strg+F "history") hab' ich nichts auf Anhieb gefunden, dass sich schnell mit curl realisieren lässt. Aber Du zeigst mir sicher gleich auf, welcher Endpunkt das kann - korrekt? :)

Link to comment
Share on other sites

vor 41 Minuten schrieb GhostTyper:

Weil ich damit testen konnte, ob die Node tatsächlich von außen erreichbar ist. Beim überfliegen der verlinkten Doku (im Prinzip Strg+F "history") hab' ich nichts auf Anhieb gefunden, dass sich schnell mit curl realisieren lässt. Aber Du zeigst mir sicher gleich auf, welcher Endpunkt das kann - korrekt? :)

Versuch mal folgendes Skript. Ich habe das nur schnell aus ein paar meiner alten Skripten zusammen kopiert ohne es zu testen. Kann also sein, dass es nicht funktioniert. Das bekommst du aber sicher hin :)

'use strict';

const Web3 = require('web3');

const web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:8545', 0));
const erc20ABI = [
	{"constant":true,
		"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf",
		"outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},
	{"constant":false,
		"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer",
		"outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"}];

const STORJContract = '0xb64ef51c888972c908cfacf59b47c1afbc0ab8ac';
const STORJ = new web3.eth.Contract(erc20ABI, STORJContract);

STORJ.getPastEvents('Transfer', {
	fromBlock: 1,
	toBlock: 'latest'
}, function(error, events) {
	if (error) {
		console.log('Error:', error);
	} else {
		console.log(events.length);
	}
});

 

Edited by skunk
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.