# मास्टर्नोड लॉन्च

एक नियमित नोड और एक मास्टर्नोड (सत्यापनकर्ता) के बीच एकमात्र अंतर यह है कि यह ब्लॉक के उत्पादन और सत्यापन/हस्ताक्षर में भाग लेता है। तकनीकी रूप से, ये दोनों नोड लगभग समान रूप से काम करते हैं। उदाहरण के लिए, प्रत्येक नोड का हमेशा अपना पहचानकर्ता (node_id) होता है और नोड के मास्टर्नोड बनने की स्थिति में ब्लॉक पर हस्ताक्षर करने के लिए ed25519 प्रारूप निजी/सार्वजनिक कुंजी की एक जोड़ी का उपयोग किया जाता है।

# Rआवश्यकताएं

1) git;
2) golang 1.14+;
3) खोल उपकरण curl और jq;
4) निर्माण उपकरण;
5) key-value storage लाइब्रेरी लेवलडीबी।

समर्थित ऑपरेटिंग सिस्टम सूची (3 फरवरी, 2022 को):

  • Linux CentOS 7
  • Linux CentOS 8
  • Linux Ubuntu 16.04
  • Linux Ubuntu 18.04
  • Linux Ubuntu 20.04
  • Linux Ubuntu 22.04
  • Linux Debian 9
  • Linux Debian 10

यदि सूची में आपका कोई ऑपरेटिंग सिस्टम नहीं है, तो कृपया https://decimalchain.com/ (opens new window) के माध्यम से सहायता टीम से संपर्क करें

हार्डवेयर न्यूनतम आवश्यकताएं:

4 core CPU, 8 Gb RAM, SSD NVM 500Gb

निर्माण उपकरण स्थापित करने के लिए (जिसमें मेक शामिल है) और LevelDB निम्नलिखित कमांड का उपयोग करते हैं:

# RHEL 8 / CentOS 8:

sudo dnf groupinstall "Development Tools"
sudo dnf install leveldb leveldb-devel snappy

# Ubuntu:

sudo apt-get install build-essential
sudo apt-get install libsnappy-dev libleveldb-dev

# macOS:

brew install coreutils
brew install leveldb snappy

# इंस्टालेशन

नोड के साथ काम करने के लिए आपको decd और deccli प्रोग्राम की आवश्यकता होती है। सबसे पहले, Go (opens new window) कंपाइलर और Make (opens new window) उपयोगिता स्थापित करें और फिर decd और deccli। नोड संकलित करने के लिए:

  1. नोड स्रोत कोड क्लोन करें:

    git clone https://bitbucket.org/decimalteam/go-node.git
    
  2. decd और deccli संकलन और स्थापना करें:

    make all
    
  3. सुनिश्चित करें कि decd और deccli उपलब्ध हैं:

    decd version
    deccli version
    

# का विन्यास

  1. कमांड का उपयोग करके $HOME/.decimal फोल्डर बनाकर नोड को इनिशियलाइज़ करना आवश्यक है:

    decd init YOUR_NODE_NAME --network mainnet|testnet|devnet --chain-id decimal-mainnet-08-01|xcvd|wgegeg   
    

    YOUR_NODE_NAME - नोड नाम, उदाहरण के लिए `माय-ग्रेट-नोड; mainnet|testnet|devnet - उपयुक्त नेटवर्क के लिए उनमें से किसी एक को चुनें; |xcvd|wgegeg - उपयुक्त नेटवर्क के लिए चेन-आईडी के साथ बदलें।

  2. कमांड निष्पादित करें:

    cat $HOME/.decimal/daemon/config/priv_validator_key.json | jq --raw-output '.pub_key.value'
    

    यह आदेश एक ed25519 सार्वजनिक कुंजी को एन्कोडेड प्रदर्शित करेगा base64। यह नोड की सार्वजनिक कुंजी है, आपको बाद में सत्यापनकर्ता (Public key फ़ील्ड में) को पंजीकृत करने के लिए इसकी आवश्यकता होगी, आपको इसे सहेजना होगा।

# शुरुआत

  1. नोड प्रारंभ करें और सिंक्रनाइज़ेशन समाप्त होने की प्रतीक्षा करें 😦

    decd start
    
  2. जबकि नोड सिंक्रनाइज़ हो रहा है, आपको हिस्सेदारी और सत्यापनकर्ता पंजीकरण के लिए सिक्कों के साथ एक खाता तैयार करने की आवश्यकता है। tDEL टेस्ट कॉइन प्राप्त करने के लिए Console (opens new window) पर एक नल उपलब्ध है।

  3. एक बार जब नोड सिंक्रोनाइज़ हो जाता है और अप-टू-डेट स्थिति में होता है, तो तैयार नोड को एक सत्यापनकर्ता के रूप में पंजीकृत करना और प्रारंभिक हिस्सेदारी असाइन करना आवश्यक है, आपको कंसोल के माध्यम से डिक्लेयर कैंडिडेट लेनदेन को बनाने और भेजने की आवश्यकता है। खाता ब्लॉकचैन पर सत्यापनकर्ता का प्रबंधन करने की योजना बना रहा है। इस पेज पर https://console.decimalchain.com/masternode (opens new window) आपको नोड के बारे में जानकारी भरनी है और लेनदेन भेजना है। उसी पृष्ठ पर सत्यापनकर्ता को सक्रिय और निष्क्रिय करना संभव है।

    नोड वाले सिस्टम पर Public key का पता लगाने के लिए, आपको निम्नलिखित कमांड चलानी होगी (Public key टर्मिनल में प्रदर्शित होगी):

    cat $HOME/.decimal/daemon/config/priv_validator_key.json | jq --raw-output '.pub_key.value'