woff 發表於 2021-6-8 22:10:42

bzz挖礦詳細教程,Linux下使用Centos8搭建bee節點

最近比較流行BZZ挖礦,未來ETH2.0時代挖礦方式的改變,也使bzz挖礦成為一個熱門,Windows下面的標誌著挖礦適合個人PC用戶,而礦工如果想大量的部署bee節點,就需要Linux服務器,然後進行虛擬化部署。對於bee節點的部署,當然是多多益善!BZZ挖礦是ETH創始人V神親自站台,是ETH項目官方的一部分,它主要是由ETH基金會領頭和開發,允許礦池儲存、帶寬和算力資源來支持基於以太坊網絡的應用、(據說是在六月份中旬)主網還沒有確定上線時間。下面我們來看一下在linux下如何部署bee節點進行bzz挖礦。bzz挖礦的必備條件:

[*]一台支持虛擬化Linux服務器,系統安裝建議安裝centos8
[*]1個G的網絡帶寬(虛擬機共享1G帶寬)
[*]服務器配置CPU16核和32G內存以上(用於創建更多虛擬機配置節點)

Linux服務器環境搭建使用Xshell或者putty登錄服務器。有些雲主機名字都是一串字符,不利於平時使用。我們可以重命名主機來標記。nmcli g hostname bee
systemctl restart systemd-hostnamed

修改好主機名稱後,首先需要做的是更新系統,以及設置一下軟件倉庫數據源,安裝軟件包等操作!更新系統輸入下面的命令更新centos8服務器系統:
dnf -y update

更新好系統後,下面我們來安裝centos的軟件源。安裝軟件源首先查看以下系統版本和位數,以免手動安裝的時候,安裝錯誤的源!
cat /etc/centos-release
uname -a

Repo倉庫介紹
CentOS默認自帶CentOS-Base.repo源,但官方源中去除了很多有版權爭議的軟件,而且安裝的軟件也不是最新的穩定版。Fedora 自帶的源中也找不到很多多媒體軟件,如果需要安裝,必需先添加其他源,如RPMFusion 和RPMForge 等第三方軟件庫。
但是除了EPEL之外還有很多其他三方軟件包,下面我們介紹各種第三方軟件庫,以下軟件庫適用於與RHEL完全兼容的 linux 發行版,如CentOS, Fedora, Scientific Linux. Scientific Linux大家可能有點陌生,它與CentOS類似,是RedHat Linux的克隆版。EPEL倉庫介紹
EPEL是yum的一個軟件源,裡麵包含了許多基本源里沒有的軟件了,但在我們在使用epel時是需要安裝它才可以了,下文來介紹CentOS7/RHEL7 安裝 EPEL步驟:
EPEL,即Extra Packages for Enterprise Linux 的簡稱,是為企業級Linux 提供的一組高質量的額外軟件包,包括但不限於Red Hat Enterprise Linux (RHEL), CentOS and Scientific Linux (SL),Oracle Enterprise Linux (OEL)。安裝EPEL軟件源使用yum或者dnf命令在線安裝:
yum -y install epel-release

安裝完畢後查詢一下epel源是否添加到源列表。
dnf repolist

如果想手動安裝,請使用rpm -ivh命令,然後查找適合當前系統的軟件源:https://dl.fedoraproject.org/pub/epel/
安裝Remi源
Remi源大家或許很少聽說,但是我們強烈推薦,尤其對於不想編譯最新版的Linux使用者,因為Remi源中的軟件幾乎都是最新穩定版。或許您會懷疑Remi 源的穩定性?放心吧,這些都是 Linux 骨灰級的玩家編譯好放進源里的,他們對於系統環境和軟件編譯參數的熟悉程度毋庸置疑。Remi下載地址:https://rpms.remirepo.net/Remi SRPMS下載地址:https://rpms.remirepo.net/SRPMS/rpm -ivh https://rpms.remirepo.net/enterprise/remi-release-8.rpm好了上面兩個軟件源已經添加完畢了,下面更新一下軟件的緩存。
yum clean all && yum makecache緩存更新完畢後,下面進行軟件包安裝!首先安裝一個常用編譯軟件包:dnf groupinstall "Development Tools" -y

常用編譯軟件包安裝完畢後,我們開始安裝運行bee所需的軟件包。安裝BeeBee提供了基於Ubuntu,Raspbian,Debian和CentOS的Linux發行版軟件包。要安裝Bee,您需要完成以下過程。
[*]設置Bee的外部簽名人Bee Clef。
[*]安裝Bee並將其設置為作為服務運行。
[*]配置蜜蜂。
[*]用gETH和gBZZ為您的節點提供資金
[*]等待您的支票簿交易完成並且批存儲更新。
[*]檢查Bee是否在工作。

首先需要做的第一步是在mnt目錄下創建bee文件夾cd /mnt
mkdir bee
ll
cd bee



安裝Bee Clef由於Bee必須要快速的自動簽署大量交易,因此打包了Bee特定版本的Clef,Bee -clef包括所有相關配置,並實現了使Clef與Bee一起使用所需的特定配置。Bee-clef地址:https://github.com/ethersphere/bee-clef/releases首先需要下載bee-clef的軟件包到服務器上。wget https://github.com/ethersphere/bee-clef/releases/download/v0.4.12/bee-clef_0.4.12_amd64.rpm


rpm -i bee-clef_0.4.12_amd64.rpm
安裝bee-clef_0.4.12_amd64.rpm軟件包,在安裝過程中可能會遇到sssd緩存錯誤。
如果遇到“Usermod錯誤-(0x0010):數據庫版本太舊,對於域hidden_​​​​files預期為”的錯誤的話。刪除緩存數據庫即可,首先查看一下緩存目錄的內容ls /var/lib/sss/db


rm /var/lib/sss/db/cache_implicit_files.ldb
刪除之後,使用“sss_cache -e”命令查詢一下。不報錯了就可以進行下一步安裝了。最後,讓我們檢查Bee Clef是否正在運行。systemctl status bee-clef

如果輸入上面命令後,返回錯誤:“Failed to get properties: Access denied”那麼輸入下面的命令即可解決錯誤:kill -TERM 1

重新加載了守護程序,之後所有systemctl命令再次開始工作。如果出現“Warning: The unit file, source configuration file or drop-ins of bee-clef.service changed on disk. Run 'systemctl daemon-reload' to reload units.”輸入systemctl daemon-reload即可解決。systemctl daemon-reload

使用systemctl start命令啟動bee-clef程序。systemctl start bee-clef

下面查看一下bee-clef的狀態。
systemctl status bee-clef

一旦bee開始與bee-clef您進行交互,您應該開始看到日誌消息,對於定期處於活動狀態且已連接的節點,它們將每隔幾秒鐘出現一次:journalctl -f -u bee-clef.service

bee-clef程序數據存儲在/var/lib/bee-clef/bee-clef程序已經安裝完畢了,下面安裝bee主程序。安裝Bee主程序設置Bee並將其作為後台服務在計算機上啟動並在後台運行。bee發布地址:https://github.com/ethersphere/bee/releases
wget https://github.com/ethersphere/bee/releases/download/v0.6.2/bee_0.6.2_amd64.rpm


安裝bee_0.6.2_amd64.rpmsudo rpm -i bee_0.6.0_amd64.rpm

安裝完畢後需要需要申請swap-endpoint測試交換節點,先不要啟動bee。
ETH交換節點首先你需要申請ETH的交換節點,官方推薦自建交換節點,也可以去Infura網站申請。
Infura的免費賬戶每天只支持100000次交換請求,如果你是專職礦工的話,建議你搭建自己的Goerli節點!

swap-endpoint測試交換節點註冊地址:https://infura.io/

打開infura.io網站,在右上角,將網站語言更改為zh中文,然後點擊註冊。

填寫一個有效的郵箱進行註冊,建議使用海外郵箱,gmail或者live。註冊成功後需要進入郵箱激活。

確認好郵件地址後,直接進入到後台管理界面。

點擊第三項以太坊圖標的選項,開始並創建您的第一個項目,以訪問以太坊網絡!

然後輸入一個你要創建新項目的名稱,輸入完畢後點擊創建。

在ENDPOINTS後面選擇Görli選項,選擇完畢後,下面的地址就是你的swap-endpoint地址。
https://goerli.infura.io/v3/574deffc70e94e8989b7612a5f427738Bee配置由於Bee在向網絡提供服務以交換gBZZ時會佔用大量資源,因此默認情況下,Bee節點以Light Node模式啟動。為了允許Bee使用網絡帶寬和計算資源為網絡服務並開始兌現支票,請將full-node設置為true。
Bee設計用於許多不同的硬件配置。為了促進對此的探索,在我們的beeta階段,我們允許節點操作員訪問leveldb的db-open-files-limit。這有助於確定Bee讀取和寫入數據庫的速度,從而確定其轉發和服務塊的效率。有人說,將其設置為比默認值200大得多,可以大大提高參與群體並獲得這些gBZZ的能力!需要將db-open-files-limit設置成2000。安裝screenGNU Screen是一款由GNU計劃開發的用於命令行終端切換的自由軟件。用戶可以通過該軟件同時連接多個本地或遠程的命令行會話,並在其間自由切換。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了統一的管理多個會話的界面和相應的功能。
[*]會話恢復
只要Screen本身沒有終止,在其內部運行的會話都可以恢復。這一點對於遠程登錄的用戶特別有用——即使網絡連接中斷,用戶也不會失去對已經打開的命令行會話的控制。只要再次登錄到主機上執行screen -r就可以恢復會話的運行。同樣在暫時離開的時候,也可以執行分離命令detach,在保證裡面的程序正常運行的情況下讓Screen掛起(切換到後台)。這一點和圖形界面下的VNC很相似。
[*]多窗口
在Screen環境下,所有的會話都獨立的運行,並擁有各自的編號、輸入、輸出和窗口緩存。用戶可以通過快捷鍵在不同的窗口下切換,並可以自由的重定向各個窗口的輸入和輸出。Screen實現了基本的文本操作,如復制粘貼等;還提供了類似滾動條的功能,可以查看窗口狀況的歷史記錄。窗口還可以被分區和命名,還可以監視後台窗口的活動。
[*]會話共享
Screen可以讓一個或多個用戶從不同終端多次登錄一個會話,並共享會話的所有特性(比如可以看到完全相同的輸出)。它同時提供了窗口訪問權限的機制,可以對窗口進行密碼保護。
[*]GNU's Screen 官方站點:http://www.gnu.org/software/screen/

screen安裝命令:
dnf install -y screen

安裝json 解析工具,方便後面查詢命令的時候,輸出顯示效果更友好。dnf install -y jq nc

沒有ifconfig 和netstat -an 命令的話請安裝net-toolsdnf install -y net-tools

查看服務器端口占用netstat -lnpt

運行Bee運行bee節點,首次運行要設置密碼。輸入的時候,屏幕不會顯示字符,請牢記密碼。首先新建一個bee窗口screen -S bee

查看一下你的錢包地址,輸入命令:bee-get-addr


獲取你的錢包地址後,前往官方水龍頭節水。具體接水方式,請查看:bzz挖礦官方水龍頭,免費獲得ETH和gBZZ這已經都領不到gBzz請上https://discord.com/ 跟網友要吧或是 https://faucet.ropsten.be/或是試試 乙太幣合約換出gbzz
輸入下面命令,啟動beebee start --config /etc/bee/bee.yaml

此時節點正常運行,雖然也會有很多報錯信息,但會有與其他節點成功通信並進行交換的提示,這樣bee就啟動成功了。可以用以下命令監測客戶端已經連接了多少個節點:curl -s http://localhost:1635/peers | jq '.peers | length'


正常啟動後,沒有遇到啟動問題的話,就可以退出screen了,按住ctrl+a然後按d退出screen虛擬CLI,此時Bee客戶端進入後台運行,就可以關閉Xshell或進行其它調試,想回到之前的Bee節點窗口,可以使用命令返回到screen。screen -r bee


禁用IPV6如果你的服務器啟用了IPV6,在啟動bee節點時候會報錯。“Error: init chain: dial eth client: dial tcp [::1]:8546: connect: connection refused”檢查服務器是否啟用IPV6ip a | grep inet6

如果有inet6的返回的話,需要禁用IPV6vi /etc/default/grub

在GRUB_CMDLINE_LINUX中添加ipv6.disable=1應用新的配置:使用grub2-mkconfig 生成新的grub引導文件。grub2-mkconfig -o /boot/grub2/grub.cfg

ip a | grep inet6

輸入命令後查看一下,沒有inet6的返回了,已經成功禁用了ipv6。
BEE相關命令啟動Bee:systemctl start bee
停止Bee:systemctl stop bee
重啟Bee:systemctl restart bee
設置開機啟動Bee:systemctl enable bee
設置開機禁用Bee:systemctl disable bee
Bee狀態:systemctl status bee刪除Bee如果在安裝過程中出現一些不可逆的錯誤,請先刪除bee,然後再重新安裝。rpm -qa | grep -i bee
rpm -e bee-0.6.2-1.x86_64
rpm -e bee-clef-0.4.12-1.x86_64


或者yum remove bee
yum remove bee-clef


數據存放位置bee-clef
配置文件存儲在/etc/bee-clef/
關鍵材料和其他數據存儲在/var/lib/bee-clef/
bee
配置文件存儲在/etc/bee/
狀態,塊和其他數據存儲在/var /lib/bee/關閉系統防火牆關閉系統自帶的防火牆服務,然後設置開機禁用防火牆服務。
systemctl stop firewalld
systemctl disable firewalld

參考文章
頁: [1]
查看完整版本: bzz挖礦詳細教程,Linux下使用Centos8搭建bee節點