当前位置: 首页区块链公链正文 本文带你轻松搭建solana验证节点 – GitHub: https://github.com/solana-labs – 官网: https://solana.com – 区块浏览器:https://explorer.solana.com/ – solana工具配置:https://docs.solana.com/cli/install-solana-cli-tools – solana服务配置:https://docs.solana.com/running-validator/validator-start – json rpc:https://docs.solana.com/zh/developing/clients/jsonrpc-api – 1.2 增加 UDP 缓冲区 sudo bash -c "cat >/etc/sysctl.d/20-solana-udp-buffers.conf <<EOF # Increase UDP buffer size net.core.rmem_default = 134217728 net.core.rmem_max = 134217728 net.core.wmem_default = 134217728 net.core.wmem_max = 134217728 EOF" sudo sysctl -p /etc/sysctl.d/20-solana-udp-buffers.conf 1.3 增加内存映射文件限制 sudo bash -c "cat >/etc/sysctl.d/20-solana-mmaps.conf <<EOF # Increase memory mapped files limit vm.max_map_count = 1000000 EOF" sudo sysctl -p /etc/sysctl.d/20-solana-mmaps.conf 1.4 配置添加 在 【/etc/systemd/system.conf】 文件的 [Manager] 部分添加如下内容: DefaultLimitNOFILE=1000000 然后重新加载配置 sudo systemctl daemon-reload 1.5 增加流程文件描述器的计数上限 sudo bash -c "cat >/etc/security/limits.d/90-solana-nofiles.conf <<EOF # Increase process file descriptor count limit * - nofile 1000000 EOF" 1.6 修改最大文件数 # vim /etc/security/limits.conf * soft nofile 700000 * hard nofile 700000 * soft nproc 700000 * hard nproc 700000 1.7 打开系统日志 # vim /etc/rsyslog.d/50-default.conf # 把下面这几行的注释去掉 *.=info;*.=notice;*.=warn; auth,authpriv.none; cron,daemon.none; mail,news.none -/var/log/messages 重启配置生效 systemctl restart rsyslog.service 以上全部操作完毕后,关闭所有打开的会话(然后退出,再次登录) 二、安装 创建运行脚本 # vim /root/.local/share/solana/install/active_release/bin/validator.sh #!/bin/bash solana-validator --identity ~/validator-keypair.json --trusted-validator 7Np41oeYqPefeNQEHSv1UDhYrehxin3NStELsSKCT4K2 --trusted-validator GdnSyH3YtwcxFvQrVVJMm1JhTS4QVX7MFsX56uJLUfiZ --trusted-validator DE1bawNcRJB9rVm3buyMVfr8mBEoyyu73NBovf2oXJsJ --trusted-validator CakcnaRDHka2gXyfbEd2d3xsvkJkqsLw2akB3zsN1D2S --no-untrusted-rpc --ledger /data/validator-ledger --rpc-port 8899 --private-rpc --no-port-check --dynamic-port-range 8000-8010 --entrypoint entrypoint.mainnet-beta.solana.com:8001 --entrypoint entrypoint2.mainnet-beta.solana.com:8001 --entrypoint entrypoint3.mainnet-beta.solana.com:8001 --entrypoint entrypoint4.mainnet-beta.solana.com:8001 --entrypoint entrypoint5.mainnet-beta.solana.com:8001 --expected-genesis-hash 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d --wal-recovery-mode skip_any_corrupted_record --limit-ledger-size --enable-rpc-transaction-history --account-index spl-token-mint program-id spl-token-owner --log /data/solana-validator.log –rpc-port 8899 :指定solana验证器的rpc端口 –dynamic-port-range 8000-8010:将solana验证器限制可使用端口为:8000-8010 –log:设置日志输出文件 注:节点启动之后会下载snapshot,等下载之后再解压,之后才会启动8899端口,需要一段时间才能进行验证。 六、验证节点状态 查看端口 # netstat -lnptu Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp6 0 0 :::8899 :::* LISTEN 5662/solana-va 查看mainnet集群信息 curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getClusterNodes"}' http://api.mainnet-beta.solana.com 输出信息中会包含我们自己的节点信息 后续就是等待快照同步了,可能需要较长一段时间来同步区块。 查看日志 # solana logs 下面是启动日志 # tail -f solana-validator.log 以上,就是今天分享的全部内容了。 solana目前刚刚接触,因为网上也没有太多相关部署的文章,所以出了一篇文章,希望大家通过以上方式可以解决自己的实际需求,解决自己目前所遇到的问题。 如果文章中有不太正确的地方,欢迎指正。可以添加我的个人微信,备注:地区-职业方向-昵称,欢迎来撩,加入声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。 收藏 海报 链接