प्रमुख मजकुराकडे जा

Raspeberry Pi 4 वर एक Ethereum नोड चालवा

क्लायंट्स
एक्झिक्यूशन लेयर
कन्सेंसस लेयर
नोड्स
मध्यम
EthereumOnArm
१० जून, २०२२
7 मिनिट वाचन

Ethereum on Arm ही एक कस्टम Linux इमेज आहे जी Raspberry Pi ला Ethereum नोडमध्ये बदलू शकते.

Ethereum on Arm वापरून Raspberry Pi ला Ethereum नोडमध्ये बदलण्यासाठी, खालील हार्डवेअरची शिफारस केली जाते:

  • Raspberry 4 (model B 8GB), Odroid M1 किंवा Rock 5B (8GB/16GB RAM) बोर्ड
  • MicroSD कार्ड (किमान 16 GB वर्ग 10)
  • किमान 2 TB SSD USB 3.0 डिस्क किंवा USB ते SATA केस असलेली SSD.
  • पॉवर सप्लाय
  • इथरनेट केबल
  • पोर्ट फॉरवर्डिंग (अधिक माहितीसाठी क्लायंट्स पहा)
  • हीटसिंक आणि फॅनसह एक केस
  • USB कीबोर्ड, मॉनिटर आणि HDMI केबल (मायक्रो-HDMI) (पर्यायी)

Ethereum on ARM का चालवावे?

ARM बोर्ड खूप स्वस्त, लवचिक, लहान संगणक आहेत. ते Ethereum नोड चालवण्यासाठी चांगले पर्याय आहेत कारण ते स्वस्तात विकत घेता येतात, त्यांची सर्व संसाधने फक्त नोडवर केंद्रित होतील अशा प्रकारे कॉन्फिगर केलेले आहेत, ज्यामुळे ते कार्यक्षम बनतात, ते कमी प्रमाणात वीज वापरतात आणि भौतिकदृष्ट्या लहान आहेत त्यामुळे ते कोणत्याही घरात सहजपणे बसू शकतात. नोड सुरू करणे देखील खूप सोपे आहे कारण Raspberry Pi चे MicroSD फक्त एका प्रीबिल्ट इमेजसह फ्लॅश केले जाऊ शकते, कोणतेही सॉफ्टवेअर डाउनलोड किंवा तयार करण्याची आवश्यकता नाही.

हे कसे कार्य करते?

Raspberry Pi चे मेमरी कार्ड एका प्रीबिल्ट इमेजसह फ्लॅश केले जाते. या इमेजमध्ये Ethereum नोड चालवण्यासाठी आवश्यक असलेली प्रत्येक गोष्ट आहे. फ्लॅश केलेल्या कार्डसह, वापरकर्त्याला फक्त Raspberry Pi पॉवर-ऑन करायचे आहे. नोड चालवण्यासाठी आवश्यक असलेल्या सर्व प्रक्रिया आपोआप सुरू होतात. हे कार्य करते कारण मेमरी कार्डमध्ये Linux-आधारित ऑपरेटिंग सिस्टम (OS) आहे, ज्याच्या वर सिस्टम-स्तरीय प्रक्रिया आपोआप चालवल्या जातात ज्या युनिटला Ethereum नोडमध्ये बदलतात.

लोकप्रिय Raspberry Pi Linux OS "Raspbian" वापरून Ethereum चालवता येत नाही कारण Raspbian अजूनही 32-बिट आर्किटेक्चर वापरते ज्यामुळे Ethereum वापरकर्त्यांना मेमरी समस्या येतात आणि कन्सेन्सस क्लायंट 32-बिट बायनरींना सपोर्ट करत नाहीत. यावर मात करण्यासाठी, Ethereum on Arm टीमने "Armbian" नावाच्या नेटिव्ह 64-बिट OS वर स्थलांतर केले.

इमेजेस सर्व आवश्यक पायऱ्यांची काळजी घेतात, पर्यावरण सेट करण्यापासून आणि SSD डिस्क फॉरमॅट करण्यापासून ते Ethereum सॉफ्टवेअर इंस्टॉल आणि रन करण्यापर्यंत तसेच ब्लॉकचेन सिंक्रोनाइझेशन सुरू करण्यापर्यंत.

एक्सिक्युशन आणि कन्सेन्सस क्लायंट्सवर टीप

Ethereum on Arm इमेजमध्ये सेवा म्हणून प्रीबिल्ट एक्सिक्युशन आणि कन्सेन्सस क्लायंट्सचा समावेश आहे. Ethereum नोडला दोन्ही क्लायंट सिंक केलेले आणि चालू असणे आवश्यक आहे. तुम्हाला फक्त इमेज डाउनलोड आणि फ्लॅश करणे आणि नंतर सेवा सुरू करणे आवश्यक आहे. इमेजमध्ये खालील एक्सिक्युशन क्लायंट्स प्रीलोड केलेले आहेत:

  • Geth
  • Nethermind
  • Besu

आणि खालील कन्सेन्सस क्लायंट्स:

  • लाइटहाऊस
  • निंबस
  • Prysm
  • Teku

तुम्ही चालवण्यासाठी प्रत्येकी एक निवडला पाहिजे - सर्व एक्सिक्युशन क्लायंट्स सर्व कन्सेन्सस क्लायंट्ससोबत सुसंगत आहेत. तुम्ही स्पष्टपणे क्लायंट निवडत नसल्यास, नोड त्याच्या डीफॉल्टवर परत जाईल - Geth आणि Lighthouse - आणि बोर्ड पॉवर अप झाल्यावर ते आपोआप चालवेल. तुम्ही तुमच्या राउटरवर पोर्ट 30303 उघडले पाहिजे जेणेकरून Geth पिअर्स शोधू शकेल आणि त्यांच्याशी कनेक्ट होऊ शकेल.

इमेज डाउनलोड करणे

Raspberry Pi 4 Ethereum इमेज ही एक "प्लग अँड प्ले" इमेज आहे जी एक्सिक्युशन आणि कन्सेन्सस दोन्ही क्लायंट्स आपोआप इंस्टॉल आणि सेट करते, त्यांना एकमेकांशी बोलण्यासाठी आणि Ethereum नेटवर्कशी कनेक्ट करण्यासाठी कॉन्फिगर करते. वापरकर्त्याला फक्त एक साधी कमांड वापरून त्यांची प्रक्रिया सुरू करायची आहे.

Ethereum on Armopens in a new tab वरून Raspberry Pi इमेज डाउनलोड करा आणि SHA256 हॅश सत्यापित करा:

1# डाउनलोड केलेली इमेज असलेल्या डिरेक्टरीमधून
2shasum -a 256 ethonarm_22.04.00.img.zip
3# हॅश आउटपुट असे असावे: fb497e8f8a7388b62d6e1efbc406b9558bee7ef46ec7e53083630029c117444f

लक्षात घ्या की Rock 5B आणि Odroid M1 बोर्डसाठी इमेजेस Ethereum-on-Arm डाउनलोड पेजopens in a new tab वर उपलब्ध आहेत.

MicroSD फ्लॅश करणे

Raspberry Pi साठी वापरले जाणारे MicroSD कार्ड प्रथम डेस्कटॉप किंवा लॅपटॉपमध्ये घातले पाहिजे जेणेकरून ते फ्लॅश करता येईल. नंतर, खालील टर्मिनल कमांड्स डाउनलोड केलेली इमेज SD कार्डवर फ्लॅश करतील:

1# MicroSD कार्डचे नाव तपासा
2sudo fdisk -l
3
4>> sdxxx

नाव बरोबर मिळवणे खूप महत्त्वाचे आहे कारण पुढील कमांडमध्ये dd समाविष्ट आहे, जे त्यावर इमेज टाकण्यापूर्वी कार्डवरील विद्यमान सामग्री पूर्णपणे पुसून टाकते. पुढे जाण्यासाठी, झिप केलेली इमेज असलेल्या डिरेक्टरीवर नेव्हिगेट करा:

1# इमेज अनझिप करा आणि फ्लॅश करा
2unzip ethonarm_22.04.00.img.zip
3sudo dd bs=1M if=ethonarm_22.04.00.img of=/dev/<sdxx> conv=fdatasync status=progress

कार्ड आता फ्लॅश झाले आहे, त्यामुळे ते Raspberry Pi मध्ये घालता येते.

नोड सुरू करा

Raspberry Pi मध्ये SD कार्ड घातल्यावर, इथरनेट केबल आणि SSD कनेक्ट करा आणि नंतर पॉवर चालू करा. OS बूट होईल आणि क्लायंट सॉफ्टवेअर इंस्टॉल आणि तयार करण्यासह, Raspberry Pi ला Ethereum नोडमध्ये बदलणारी प्रीकॉन्फिगर केलेली कार्ये आपोआप करण्यास प्रारंभ करेल. यासाठी कदाचित 10-15 मिनिटे लागतील.

एकदा सर्वकाही इंस्टॉल आणि कॉन्फिगर झाले की, ssh कनेक्शनद्वारे डिव्हाइसमध्ये लॉग इन करा किंवा बोर्डला मॉनिटर आणि कीबोर्ड जोडलेले असल्यास थेट टर्मिनल वापरा. लॉग इन करण्यासाठी ethereum खाते वापरा, कारण त्यात नोड सुरू करण्यासाठी आवश्यक परवानग्या आहेत.

1वापरकर्ता: ethereum
2पासवर्ड: ethereum

डीफॉल्ट एक्सिक्युशन क्लायंट, Geth, आपोआप सुरू होईल. तुम्ही खालील टर्मिनल कमांड वापरून लॉग तपासून याची पुष्टी करू शकता:

1sudo journalctl -u geth -f

कन्सेन्सस क्लायंट स्पष्टपणे सुरू करणे आवश्यक आहे. हे करण्यासाठी, प्रथम तुमच्या राउटरवर पोर्ट 9000 उघडा जेणेकरून Lighthouse पिअर्स शोधू शकेल आणि त्यांच्याशी कनेक्ट होऊ शकेल. नंतर lighthouse सेवा सक्षम करा आणि सुरू करा:

1sudo systemctl enable lighthouse-beacon
2sudo systemctl start lighthouse-beacon

लॉग वापरून क्लायंट तपासा:

1sudo journalctl -u lighthouse-beacon

लक्षात घ्या की कन्सेन्सस क्लायंट काही मिनिटांत सिंक होईल कारण ते चेकपॉइंट सिंक वापरते. एक्सिक्युशन क्लायंटला जास्त वेळ लागेल - संभाव्यतः अनेक तास, आणि कन्सेन्सस क्लायंट सिंक होईपर्यंत ते सुरू होणार नाही (कारण एक्सिक्युशन क्लायंटला सिंक करण्यासाठी लक्ष्याची आवश्यकता असते, जे सिंक केलेला कन्सेन्सस क्लायंट प्रदान करतो).

Geth आणि Lighthouse सेवा चालू आणि सिंक झाल्यावर, तुमचा Raspberry Pi आता एक Ethereum नोड आहे! Geth च्या Javascript कन्सोलचा वापर करून Ethereum नेटवर्कशी संवाद साधणे सर्वात सामान्य आहे, जो पोर्ट 8545 वर Geth क्लायंटशी जोडला जाऊ शकतो. Curl सारख्या विनंती साधनांचा वापर करून JSON ऑब्जेक्ट्स म्हणून फॉरमॅट केलेल्या कमांड्स सबमिट करणे देखील शक्य आहे. Geth माहितीopens in a new tab मध्ये अधिक पहा.

Geth मेट्रिक्स Grafana डॅशबोर्डवर रिपोर्ट करण्यासाठी प्रीकॉन्फिगर केलेले आहे जे ब्राउझरमध्ये पाहिले जाऊ शकते. अधिक प्रगत वापरकर्ते ipaddress:3000 वर नेव्हिगेट करून, user: admin आणि passwd: ethereum पास करून त्यांच्या नोडच्या आरोग्यावर लक्ष ठेवण्यासाठी हे वैशिष्ट्य वापरू शकतात.

व्हॅलिडेटर्स

एक व्हॅलिडेटर देखील पर्यायीपणे कन्सेन्सस क्लायंटमध्ये जोडला जाऊ शकतो. व्हॅलिडेटर सॉफ्टवेअर तुमच्या नोडला कन्सेन्ससमध्ये सक्रियपणे सहभागी होण्याची परवानगी देतो आणि नेटवर्कला क्रिप्टोकॉनॉमिक सुरक्षा प्रदान करतो. तुम्हाला या कामासाठी ETH मध्ये बक्षीस मिळते. व्हॅलिडेटर चालवण्यासाठी, तुमच्याकडे प्रथम 32 ETH असणे आवश्यक आहे, जे डिपॉझिट कॉन्ट्रॅक्टमध्ये जमा करणे आवश्यक आहे. Launchpadopens in a new tab वरील चरण-दर-चरण मार्गदर्शकाचे अनुसरण करून डिपॉझिट केले जाऊ शकते. हे डेस्कटॉप/लॅपटॉपवर करा, परंतु की (keys) तयार करू नका — हे थेट Raspberry Pi वर केले जाऊ शकते.

Raspberry Pi वर एक टर्मिनल उघडा आणि डिपॉझिट की (keys) तयार करण्यासाठी खालील कमांड चालवा:

1sudo apt-get update
2sudo apt-get install staking-deposit-cli
3cd && deposit new-mnemonic --num_validators 1

(किंवा एअरगॅप मशीनवर चालवण्यासाठी staking-deposit-cliopens in a new tab डाउनलोड करा, आणि deposit new-mnemnonic कमांड चालवा)

मेमोनिक वाक्यांश सुरक्षित ठेवा! वरील कमांडने नोडच्या कीस्टोअरमध्ये दोन फाईल्स तयार केल्या: व्हॅलिडेटर की आणि एक डिपॉझिट डेटा फाईल. डिपॉझिट डेटा लॉन्चपॅडमध्ये अपलोड करणे आवश्यक आहे, म्हणून तो Raspberry Pi वरून डेस्कटॉप/लॅपटॉपवर कॉपी करणे आवश्यक आहे. हे ssh कनेक्शन वापरून किंवा इतर कोणत्याही कॉपी/पेस्ट पद्धतीने केले जाऊ शकते.

एकदा डिपॉझिट डेटा फाईल लॉन्चपॅड चालवणाऱ्या संगणकावर उपलब्ध झाली की, ती लॉन्चपॅड स्क्रीनवरील + वर ड्रॅग आणि ड्रॉप केली जाऊ शकते. डिपॉझिट कॉन्ट्रॅक्टला व्यवहार पाठवण्यासाठी स्क्रीनवरील सूचनांचे अनुसरण करा.

Raspberry Pi वर परत, एक व्हॅलिडेटर सुरू केला जाऊ शकतो. यासाठी व्हॅलिडेटर की इम्पोर्ट करणे, बक्षिसे गोळा करण्यासाठी ॲड्रेस सेट करणे आणि नंतर प्रीकॉन्फिगर केलेली व्हॅलिडेटर प्रक्रिया सुरू करणे आवश्यक आहे. खालील उदाहरण Lighthouse साठी आहे—इतर कन्सेन्सस क्लायंटसाठी सूचना Ethereum on Arm डॉक्सopens in a new tab वर उपलब्ध आहेत:

1# व्हॅलिडेटर की इम्पोर्ट करा
2lighthouse account validator import --directory=/home/ethereum/validator_keys
3
4# रिवॉर्ड ॲड्रेस सेट करा
5sudo sed -i 's/<ETH_ADDRESS>' /etc/ethereum/lighthouse-validator.conf
6
7# व्हॅलिडेटर सुरू करा
8sudo systemctl start lighthouse-validator

अभिनंदन, आता तुमच्याकडे Raspberry Pi वर चालणारा एक पूर्ण Ethereum नोड आणि व्हॅलिडेटर आहे!

अधिक तपशील

या पानावर Raspberry Pi वापरून Geth-Lighthouse नोड आणि व्हॅलिडेटर कसे सेट करावे याचा आढावा दिला आहे. अधिक तपशीलवार सूचना Ethereum-on-Arm वेबसाइटopens in a new tab वर उपलब्ध आहेत.

अभिप्रायाचे कौतुक आहे

आम्हाला माहित आहे की Raspberry Pi चा एक मोठा वापरकर्ता वर्ग आहे ज्याचा Ethereum नेटवर्कच्या आरोग्यावर खूप सकारात्मक परिणाम होऊ शकतो. कृपया या ट्यूटोरियलमधील तपशीलांचा अभ्यास करा, टेस्टनेटवर चालवून पहा, Ethereum on Arm GitHub पहा, अभिप्राय द्या, समस्या आणि पुल रिक्वेस्ट्स मांडा आणि तंत्रज्ञान आणि माहिती पुढे नेण्यास मदत करा!

संदर्भ

  1. https://ubuntu.com/download/raspberry-piopens in a new tab
  2. https://wikipedia.org/wiki/Port_forwardingopens in a new tab
  3. https://prometheus.ioopens in a new tab
  4. https://grafana.comopens in a new tab
  5. https://forum.armbian.com/topic/5565-zram-vs-swap/opens in a new tab
  6. https://geth.ethereum.orgopens in a new tab
  7. https://nethermind.ioopens in a new tab
  8. https://www.hyperledger.org/projects/besuopens in a new tab
  9. https://github.com/prysmaticlabs/prysmopens in a new tab
  10. https://lighthouse.sigmaprime.ioopens in a new tab
  11. https://ethersphere.github.io/swarm-homeopens in a new tab
  12. https://raiden.networkopens in a new tab
  13. https://ipfs.ioopens in a new tab
  14. https://status.imopens in a new tab
  15. https://vipnode.orgopens in a new tab

पृष्ठ अखेरचे अद्यतन: १४ फेब्रुवारी, २०२६

हे मार्गदर्शन उपयुक्त होते का?