ติดตั้ง Shekel Masternode บน VPS

  Maternode Tutorial

หลังจากติดตั้ง Wallet ใน Window เสร็จแล้วให้ดำเนินการติดตั้ง Masternode ใน VPS Server ที่เช่ามา สำหรับใครที่ยังไม่มี อ่านการติดตั้งและเช่า VPS ได้ที่เนื้อหาการติดตั้งและเช่า Vultr VPS และถ้าหากมีปัญหาเรื่องการเชื่อมต่อ Wallet อ่านได้ที่บทความการแก้ปัญหาการเชื่อมต่อ Wallet ของ Shekel

รับ Address จาก Shekel Wallet ใน PC 

หลังจากนั้น ซื้อ Shekel (Jew) แล้วโอนมายังกระเป๋าที่เราติดตั้งใน PC โดยรับที่อยู่ได้ดังนี้

Wallet Address

เมื่อกดเข้าไปที่ Receive Address คือกระเป๋าที่จะใช้รับเงินแล้ว จะปรากฏหน้าต่างด้านล่าง สำหรับใครที่ยังไม่มีประสบการณ์เกี่ยวกับ Masternode ลองดูกระบวนการตั้งแต่เริ่มแรกได้ที่บทความกระบวนการทำ masternode โดยเปลี่ยนจากเหรียญตัวอย่างเป็นเหรียญ Shekel (Jew) 

เมื่อได้ Address มาก็สามารถ Click ขวา copy address ไปใช้ในการโอนเหรียญ มาจากตลาดซื้อขายได้เลย 

ที่มา shekel wallet qt

receive address

โดยตอนซื้อมา ต้องซื้อมาจากตลาดจะต้องเกินนิดหน่อย เช่น 25002 เป็นต้น เพื่อใช้เป็นค่าธรรมเนียมโอนเหรียญที่จะถูกหักจาก Broker มา wallet เมื่อโอนมาแล้วก็จะมีภาพการยืนยันการโอนตัวอย่างด้านล่าง เสร็จแล้วสร้าง Receiving address 2 ชื่อ MN2 

ทำการโอนเงินจาก Wallet ตัวเองเข้า Address MN2 ที่สร้างขึ้นใหม่

ที่มา : Shekel QT

ตัวอย่างธุรกรรม Masternode

จากตัวอย่างจะเห็นได้ว่า Address ที่ใช้รับเงินจากเว็บซื้อขายเหรียญกับ  Address ที่ใช้ทำ Masternode นั้นคนละที่อยู่กัน เพื่อป้องกันการสับสน  ลักษณะการโอนเงินจาก NP1 เข้า MN1 เพื่อใช้เป็น Address รับเงินและ Address MN1 ที่ได้รับเงินโอนเข้า 25000 JEW ห้ามขาดและห้ามเกินก็จะนำไปใช้รับ Transaction Hash กับ Txid

สร้าง Privatekey และ Transaction 

หลังจากนั้นเปิด Shekel qt wallet ขึ้นมา และไปที่ Tools ต่อด้วย Debug Console ดังรูป แล้วส่งคำสั่งเพื่อรับ Privatekey

masternode genkey 
ที่มา shekel qt

Genkey

ซึ่งจะได้รหัสรูปร่างหน้าตาคล้ายแบบนี้มา โดยให้ทำการบันทึกใน Excel หรือ Google Sheet เพื่อเก็บรักษารหัสผ่าน ลองอ่านและสามารถใช้แบบฟอร์มเดียวกันกับที่เราทำเป็นตัวอย่าง

87yjxcx7v7w6Dqa2Z7iAaswX7kJiEHu6zHRBwVqL2P91jwM6ZEd

หลังจากนั้น ถ้าธุรกรรมการโอนเงินเข้ากระเป๋า MN1 ได้รับการยืนยันครบแล้ว ส่งคำสั่งใน Console เช่นเดิมเพื่อรับ Transaction ID

masternode outputs

โดยจะมีหน้าตาแบบนี้ ซึ่งต้องบันทึกเก็บไว้เช่นกัน

[
 {
 "txhash" : "6782efab3a76fa557370ec3b9c13bf0d0df3d4df63adc018e1dd90e1c8da088e",
 "outputidx" : 1
 }
]

ถ้า txhash กับ outputidx นี้ไม่ขึ้นว่างเปล่านั่นเป็นเพราะการโอนไม่เสร็จสมบูรณ์ตรวจสอบและรอให้เสร็จสมบูรณ์ก่อนค่อยส่งคำสั่งใหม่ หรือถ้าไม่ได้อีก ให้สร้าง Receive Address อีกอันตั้งชื่อว่า MN2 แล้วส่งเหรียญเข้าไปที่ MN2 (สามารถส่งหาตัวเองได้โดยเสียค่าธรรมเนียมเล็กน้อย) 

ที่มา : Shekel qt

Resent JEW coin to MN2

บันทึกข้อมูลลง Masternode ใน Console 

บน Wallet console ใน PC ไปที่ Tools และ Open Masternode Configuration File จะปรากฏ File Nodepad มาพร้อมกับตัวอย่าง ให้เราขึ้นบรรทัดใหม่ โดยกรอกข้อมูลของเราไปแทนตามแกรมม่าต่อไปนี้ 

mn1 your_vps_ip_address:5500 your_masternode_key_output_from-masternode_genkey txhash_from-masternode_outputs Outputidx_from-masternode_outputs

โดยเว้นเคาะตามตัวอย่าง โดยให้ 

mn1 คือชื่อ masternode ที่คุณตั้ง

your_vps_ip_address คือ IP address ของคุณที่เช่ามาจาก Vultr และตามด้วย :5500

your_masternode_key คือ Privatekey ที่ได้จาก console แล้วเว้นวรรค

txhash คือ ยืนยันid ที่ได้หลังจากการโอนเงิน แล้วเว้นวรรค

txid คือ transaction id ปรกติแล้วลงท้ายด้วย 0 หรือ 1 ซึ่งได้มาจากที่เดียวกันกับกระบวนการ txhash 

การกรอกนี้ควรจะคล้ายคลึงกับที่ปรากฏใน file Notepad ตามตัวอย่างที่ปรากฏในไฟล์ masternode.conf เมื่อเสร็จแล้วให้ Save และปิด wallet 

การติดตั้ง Masternode ใน VPS server 

ผู้พัฒนาแนะนำ Ubuntu 16.04 และสามารถ Log in เข้าใช้งานผ่าน Putty ซึ่งสามารถอ่านได้ที่ การ Log in เข้าใช้ VPS ด้วย Putty

เตรียม Sever โดยการ Copy ไปทีละบรรทัดและกด Enter

apt-get update
apt-get upgrade -y
apt-get install wget nano unrar unzip libboost-all-dev libevent-dev software-properties-common -y
add-apt-repository ppa:bitcoin/bitcoin -y
apt-get update
apt-get install libdb4.8-dev libdb4.8++-dev -y

เตรียม Swap file สำหรับกรณี Ram ไม่พอ เมื่อรัน Masternode

fallocate -l 2500M /mnt/2500MB.swap
dd if=/dev/zero of=/mnt/2500MB.swap bs=1024 count=2572864
mkswap /mnt/2500MB.swap
swapon /mnt/2500MB.swap
chmod 600 /mnt/2500MB.swap
echo '/mnt/2500MB.swap  none  swap  sw 0  0' >> /etc/fstab

ติดตั้ง Firewall เพื่อรักษาความปลอดภัยและอนุมัติการใช้งานผ่าน port 5500

ufw allow 22/tcp
ufw limit 22/tcp
ufw allow 5500/tcp
ufw logging on
ufw --force enable

ติดตั้ง Shekel masternode ใน ubutu 16.04

wget -qO- https://github.com/shekeltechnologies/JewNew/releases/download/1.4.0/shekel-1.4.0-x86_64-linux.tar.gz | sudo tar xvz -C /usr/local/bin/
shekeld

ซึ่งจะได้ข้อความ Error ลักษณะนี้ขึ้นมา 

Error: To use shekeld, or the -server option to shekel-qt, you must set an rpcpassword in the configuration file

หมายความว่าเราต้องตั้งค่า file notepad ใน ubuntu server ด้วย ทำได้ดังนี้

สร้าง folder shekel ก่อน

~/.shekel/

copy และ วางคำสั่งนี้

nano /root/.shekel/shekel.conf

จะปรากฏที่ว่างให้เรากรอกข้อมูลนี้วางลงไป

rpcuser=rpc123
rpcpassword=1234
rpcport=5501
listen=1
server=1
daemon=1
maxconnections=250
masternode=1
externalip=<ip_address_here>:5500
masternodeaddr=<ip_address_here>:5500
masternodeprivkey=<Privatekey>

ใน < > ให้กรอกข้อมูลของคุณ นั่นคือ IP address ของ Server และ Privatekey จากตอนแรก (มันคือการเชื่อม VPS server กับ wallet QT ด้วย Privatekey นี้)

หลังจากนั้นกด CTRL+X เพื่อปิดโดยกด Y เพื่อ Save 

หลังจากนั้นส่งคำสั่ง Run masternode

shekeld

หลังจากนั้นรอสัก 30 นาทีแล้วส่งคำสั่ง 

shekel-cli getinfo

ส่งคำสั่งนี้ถี่ ๆ จนจำนวน Block Number มันไม่แตกต่างจากของเครือข่ายมาก (ตรวจสอบ Block count ได้ที่นี่ ช่องด้านซ้ายสุด http://shekelchain.com/) และปิด Putty ไป

การเปิด Run Masternode

เมื่อเราติดตั้ง Shekel wallet บน PC และ Masternode บน VPS linux server แล้ว เราสามารถทำการรัน Masternode ได้ดังนี้

ใน Shekel wallet Qt

ไปที่ Tools ส่งและ Debug console ส่งคำสั่ง

shekel-cli getinfo

จะเห็น masternode ถูกเพิ่มเข้ามาพร้อมสถานะ -missing และข้อมูลแสดงว่า mn1 successful แล้วหลังจากนั้นให้ส่งคำสั่งต่อไปนี้ในการเปิด masternode

startmasternode alias false MN1

โดย mn1 คือชื่อที่คุณตั้งในไฟล์ masternode.conf

การตรวจสอบว่า masternode ถูกต้องใน VPS server

log in เข้า Server หลังจากติดตั้งแล้ว แล้วส่งคำสั่ง

shekel-cli masternode status

ถ้ามันขึ้นสถานะ masternode successfully started คือใช้ได้!!1 แต่ถ้ามันบอกว่า Masternode not found in the list of available masternode  ต้องรอหน่อย

การ Restart Wallet 

การ Restart wallet ทำได้โดยหยุดการทำงานของ Wallet ก่อน

shekel-cli stop

ส่งคำสั่งนี้จนกว่า shekeld process จะหายไป

ps aux | grep shekeld | grep -v grep

แล้วรัน 

shekeld

แล้วกลับไปที่ Shekel Qt wallet บน PC ของเราส่งคำสั่ง

startmasternode

ส่ง masternode debug log

tail -f /root/.shekel/debug.log

จะปรากฏบรรทัดนี้ขึ้นมา

2018-02-02 02:07:12 CActiveMasternode::EnableHotColdMasterNode() - Enabled! You may shut down the cold daemon.

และออกจากตรงนี้โดย CTRL+C

เมื่อรัน masternode และสามารถทำงานได้ปกติดี จะสามารถตรวจสอบ masternode ของคุณได้ที่ http://shekel.mn.zone/ โดยเสิร์ชหาจาก IP ของ Server ของคุณ (CTRL+F แล้วใส่ IP ของคุณ) หรือ Address ที่โอนเงินเข้า 25000 JEW ก็ได้