适用场景
- 闲置的服务器,或者服务器长期性能过剩。这种情况应该常见于个人博主,一台服务器仅仅部署一个博客通常无法充分利用服务器的计算资源。
- 其它闲置的计算机,比如淘汰掉的笔记本,只要能联网就可以。
客户端安装
BOINC 可以分为两部分,一部分是客户端,用于执行具体的计算。另一部分为管理端,可以管理多个客户端,比如指定具体的科研项目,设置 CPU 使用率上限等。
本文将提供 Docker 部署客户端的方法。你可以直接运行下面的命令来启动客户端。
docker run -d \
--name boinc \
--net=host \
--pid=host \
-v /opt/appdata/boinc:/var/lib/boinc \
-e BOINC_GUI_RPC_PASSWORD="123" \
-e BOINC_CMD_LINE_OPTIONS="--allow_remote_gui_rpc" \
boinc/client
/var/lib/boinc
:计算时所使用的数据目录,作为用户无需关心,只需要挂载到宿主机上妥善保存即可。BOINC_GUI_RPC_PASSWORD
:管理端连接客户端时所使用的密码。BOINC_CMD_LINE_OPTIONS
:运行客户端时的参数,--allow_remote_gui_rpc
表示允许管理端远程控制。
然后打开客户端所在机器的 TCP 31416 端口,这个端口将用于与管理端通信。
BOINC 客户端还有针对特定平台的优化版本,更多详情见 boinc/client。
管理端安装
你可以在 https://boinc.berkeley.edu/download_all.php 下载对应平台的软件。
以 Windows 为例,安装完打开应该是这样的。
依次点击:视图 –> 高级视图。会出现下面的界面
依次点击:文件 –> 选择计算机。会出现下面的界面
在主机名框内输入你的客户端的 IP 地址或者域名,密码框内输入部署客户端时的密码,最后点击确定。
如果连接成功则右下角会出现提示,如下图所示。
依次点击:工具 –> 添加项目。选择一个你喜欢的项目,按照提示操作即可。
添加项目或者使用账号管理器时卡死无响应
Windows 10 系统可能会出现这个问题。
解决方法:右键点击任务栏的输入法图标 –> 设置 –> 常规 –> 使用以前版本的微软拼音输入法。
解决方法参考自有关添加项目或者使用账号管理器时卡死无响应的问题【boinc吧】_百度贴吧第 13 楼。
无法连接客户端
此时观察 BOINC 的日志会发现这么一段。
GUI RPC request from non-allowed address x.y.z.q
此时要将日志中提到的 IP 地址添加到 BOINC 数据目录下的 remote_hosts.cfg
中,重新连接就行了。
相关网站
- BOINC 官网:https://boinc.berkeley.edu/。
- BOINC – 中国分布式计算总站:https://www.equn.com/wiki/BOINC。
- 中国分布式计算论坛:http://www.equn.com/forum/。
这让我想起来之前有个寻找外星信号的分布式计算项目,第一次是在三体里看到的,后来才知道这个项目是真真实实存在的 :flower-heihei: