本文主要是介绍将阿里云中数据传输到其他超算服务器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
方法一:在阿里云中连接超算,然后使用rsync(速度慢)
方法2:rclone(速度很快,100G只花了大约20min)
方法一:在阿里云中连接超算,然后使用rsync/scp(速度慢)
1.在阿里云中制作密钥
[root@host ~]$ ssh-keygen <== 制作密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): <== 按 Enter
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): <== 密钥密码,或者按Enter设为空
Enter same passphrase again: <== 再次输入密钥密码
Your identification has been saved in /root/.ssh/id_rsa. <== 私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. <== 公钥
公钥/root/.ssh/id_rsa.pub 私钥/root/.ssh/id_rsa
2.将公钥内容复制添加到超算用户目录下.ssh/authorized_keys文件(可使用ssh-copy-id user@hostname ,未验证)后,
保证文件权限
chmod 600 authorized_keys
chmod 700 ~/.ssh
3.测试是否能够通过SHH密钥认证登录到远程服务器
ssh user@remote_server_ip
#例如ssh scxlab0069@BSCC-N32-H@ssh.cn-zhongwei-1.paracloud.com
#scxlab0069@BSCC-N32-H是超算user名
#ssh.cn-zhongwei-1.paracloud.com是超算服务器ip
4.在阿里云中传输数据
rsync -avz --partial /mnt/data/oss_beijing/wzf/ scxlab0069@BSCC-N32-H@ssh.cn-zhongwei-1.paracloud.com:/home/bingxing2/ailab/group/ai4agr/wzf/
#其中/mnt/data/oss_beijing/wzf/是阿里云中数据路径
#scxlab0069@BSCC-N32-H是超算user名
#ssh.cn-zhongwei-1.paracloud.com是超算服务器ip
#/home/bingxing2/ailab/group/ai4agr/wzf/是数据要复制到的路径
注:也可以采用scp
scp local_file user@hostname:remote_location #将本地文件复制到远程服务器 scp user@hostname:remote_file local_location #将远程服务器上的文件复制到本地计算机
方法2:rclone(速度很快,100G只花了大约20min)
类似于阿里云OSS->单机
1.先在官网Rclone downloads上下载合适版本的rclone包到超算平台
例如我的超算服务器是CPU是 aarch64 架构 linux环境
2.配置rclone config
创建rclone.conf文件 与下载的rclone-v1.66.0-linux-arm64文件位于同一目录下
内容模板为
[Aliyun]
type=s3
provider=Alibaba
access_key_id=xxxxxxxxxxxxxxxxxxx
secret_access_key=xxxxxxxxxxxxxxxxxxxxx
endpoint=oss-cn-beijing.aliyuncs.com
acl=private
bucket_acl=private
注意!!!
OSS 的 access key 和在阿里云上面用的个人的 access key 不是一个东西
3.传输文件指令
rclone copy --progress --transfers 200 --checkers 200 Aliyun:pjlab-3090-ai4bio/wzf/ 服务器目标目录# Aliyun为config文件中配置名 pjlab-3090-ai4bio为oss桶名
#--transfers 200 --checkers 200 这两个参数为传输时的并发数和校验文件数
#如果找不到config文件 加上参数 --config rcloneconfig文件路径#./rclone ls Aliyun:pjlab-3090-ai4bio/ 可以查看链接oss是否成功
#如果数据量大则可以使用nohup命令放在后台执行,通过tail -f logs-.log 来查看迁移进度
#例如 nohup rclone copy --progress --transfers 200 --checkers 200 Aliyun:pjlab-3090-ai4bio/wzf/ 服务器目标目录 >> logs-Mytest.log 2>&1 &
rclone补充
阿里云oss->集群ceph桶(Ceph分布式存储系统)
rclone.conf文件配置模板
[cephhdd]
type = s3
provider = Ceph
access_key_id = xxxxxxx
secret_access_key = xxxxxx
endpoint = http://10.140.2.231:80
acl = private [Aliyun]
type=s3
provider=Alibaba
access_key_id=xxxxxxxxxxxxxxxxxxx
secret_access_key=xxxxxxxxxxxxxxxxxxxxx
endpoint=oss-cn-beijing.aliyuncs.com
acl=private
bucket_acl=private
注:阿里云OSS的access_key和 集群ceph桶的access_key不是同一个
传输文件指令(例如传输到s集群ceph的Mytest桶中)
rclone copy --progress --transfers 200 --checkers 200 Aliyun:pjlab-3090-ai4bio/wzf/ cephhdd:Mytest/
参考:
两个服务器之间通过密钥免密传输文件_两台主机使用秘钥通信-CSDN博客
这篇关于将阿里云中数据传输到其他超算服务器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!