Learningspace平台,使用VOI终端下载镜像失败,终端提示下载超时或者下载种子失败,进底层系统看,bttorrent服务启动失败,使用systemctl restart bttorrent,仍然启动失败。
(0)
第一步:检查和恢复BT服务
VOI终端下载镜像需要使用BT服务,因此优先检查管理平台的BT服务是否正常运行。
可以通过在管理平台CVM后台通过如下两种方式检查
1、systemctl status bttorrent.service
2、进入/var/lib/vdi/Bittorrent路径执行命令./bttorrent.sh status,如下图,证明BT服务没有正常运
然后执行命令./bttorrent.sh start尝试拉起BT服务,但是发现无法拉起,报错为“socket.error:[Errno 98] Address already in use”
BT服务使用的是6969端口,执行命令ps -ef | grep 6969查看是否有异常进程占用,如下图,可以看到确实有一个PID为43716的进程占用了6969端口,怀疑是之前停止BT服务是的残留进程
使用kill -9 PID命令杀掉残留进程如下图
注意PID是根据实际情况来判断的
然后执行systemctl start bttorrent.service命令拉起BT服务
第二步:确保做种是正确的
此时发现BT服务已经正常运行,在通过以下方式确保做种成功,注意以下命令是在主CVM的/var/lib/vdi/Bittorrent路径下执行
然后在如下路径下找到种子文件
如果是单机场景是以下路径:
/var/lib/vdi/Bittorrent/data/image/
如果是双机热备,则是如下路径:
/share/data/image/xxxx.torrent
取回后缀为.torrent的种子文件,注意如果有多个种子文件需要判断哪个是终端需要下载的,这个可以通过在桌面池和镜像的绑定关系获取
然后在自己的PC上(注意需要和管理平台IP可达)用迅雷或者utorrent(推荐)使用这个.torrent的种子文件新建下载任务,如果能够下载,说明种子做种正确无误。
在该局点,通过测试可以发现,种子文件可以下载,说明管理平台做种OK
第三步:确定终端的种子文件下载的是否正确
首先在终端后台(ssh连接账密为spaceos User@1234)执行cd /vms/idv/image路径,查看下载的种子文件,发现种子文件大小是0,这里就存在问题,说明终端就没有将种子正确下载下来,现在就怀疑终端和平台之间网络存在某些问题
接着看下客户端日志
/voisys/var/log/voiclient/voiclient-xxxxx.log发现以下打印:
上面的这个框起来的打印意味着,终端通过图中的URL没法下载到种子文件。
第四步:排查网络或者配置问题
然后在本地PC的浏览器(确保PC和WS平台IP可达)的浏览器输入这个URL(http://10.1.6.200/data/image......),发现也下载不了,WS中,如果直接输入http://10.1.6.200这个IP,默认是通过80端口去下载文件,接着在检查一下管理平台上nginx关于bt下载的端口配置,在主CVM的后台,查看
/etc/.nginx/conf.d/bittorrent.conf,发现其中关于端口的配置是8880
于是在本地PC的浏览器输入加端口的URL(http://10.1.6.200:8880/data/image......)发现可以下载。正常情况下,不输入端口,默认是通过80端口去访问,而nginx对于bt下载的请求会代理为8880端口,于是怀疑nginx配置中,没有监听80端口。通过以下命令进行排查,发现确实没有监听80端口
接着排查nginx的配置/etc/.nginx/conf.d/vdi.conf
发现监听端口为20080,至此,排查到根本原因。
将上述nginx的配置/etc/.nginx/conf.d/vdi.conf中listen字段修改为80
(0)
感谢您的回答,但是执行./bttorrent.sh start后,与你的报错不一样, File "./bttrack.py", line 10, in <module> track(argv[1:]) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/track.py", line 498, in track t = Tracker(config, r) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/track.py", line 143, in __init__ tempstate = bdecode(ds) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/bencode.py", line 66, in bdecode raise ValueError ValueError
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
感谢您的回答,但是执行./bttorrent.sh start后,与你的报错不一样, File "./bttrack.py", line 10, in <module> track(argv[1:]) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/track.py", line 498, in track t = Tracker(config, r) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/track.py", line 143, in __init__ tempstate = bdecode(ds) File "/var/lib/vdi/Bittorrent/server/lib/python2.7/site-packages/BitTorrent/bencode.py", line 66, in bdecode raise ValueError ValueError