本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文主要介绍远程文件系统如何创建及执行数据迁移任务,实现数据从数据源端读取后存入闪电立方本地NAS中。
如果迁移过程中设备断网或断电,可能会出现迁移数据遗漏的情况,请谨慎操作。
创建迁移任务
一、检查是否有迁移进程存在
输入
ps -ef | grep jar
。查看是否有master.jar、worker.jar、tracker.jar 三个进程存在,如果有则执行kill -9 进程号,将3个进程都停止。
到指定目录下,输入
cd /mnt/cube/software/ossimport
。
二、配置job.cfg文件
输入
cd /mnt/cube/software/ossimport/conf
,找到job.cfg文件。请确认需要创建的任务数,根据任务数来决定复制几份job.cfg文件,一个任务对应一个job.cfg文件。
说明注意请将job.cfg文件做好区分,例如:job1.cfg。
如果是整个目录数据迁移,创建1个任务即可。
如果只迁移部分目录的数据,一个目录创建一个任务。
以下操作以文件job1.cfg为例。
打开配置文件,配置下列信息 :
参数名
举例值
jobName
任务名,例如:example_job
srcType
数据源类型设置为local
srcPrefix
填写源路径(注意后面要加上/),例如:/mnt/nas/example_dir/
destType
写入闪电立方本地NAS,例如:local
destPrefix
闪电立方存储路径,例如:/mnt/cube/data/
auditMode
模式 例如:simple
部署和提交任务
请注意,以下操作均在/mnt/cube/software/ossimport
目录下完成。
1、部署服务
执行bash console.sh deploy
。
2、启动服务
执行bash console.sh start
。
3、检查进程是否正常启动
输入ps -ef | grep jar
查看,如果有master.jar、worker.jar、tracker.jar
三个进程,说明启动正常。
4、提交迁移任务
执行bash console.sh submit conf/cfg文件名
,例如:bash console.sh submit conf/job1.cfg
。
(可选)增量配置
如果需要配置增量,需对cfg文件中以下3个参数进行修改。
isIncremental
为增量模式,设置该值为true
。incrementalModeInterval
为增量间隔时间,单位是秒,不能低于900秒。repeatCount
为增量的次数,最好不要配置太大,建议不超过30。配置值为实际增量次数+1,例如需要2次增量,则repeatCount=3
。
(可选)重试任务
当您任务出现失败情况时,您可以通过这个命令进行重试任务:bash console.sh retry [job_name]
迁移后续操作
请注意,以下操作以/mnt/cube/data目录为例。
当迁移任务结束后,如任务的状态为failed,请联系闪电立方工作人员协助排查。
如果迁移任务状态为Succeed,请将迁移任务中的文件总数和数据量,与/mnt/cube/data中的文件数和数据量做对比。
迁移任务,请查看jobsForSls_v1.log日志中显示的迁移成功文件数量以及成功的文件大小。
查看日志
在ossimport/workdir/logs/
目录下,会存放一些日志用于记录文件的上传状态以及任务的状态。
任务进度日志
job_status.log
该文件30秒更新一次,用于简单记录任务的状态信息。jobname 任务名称
jobState 任务状态(running表示任务进行中;succeed表示任务成功;failed表示任务失败,有未迁移成功的文件)。
pending task count 扫描预分发的task数量。
dispatched task count 分发的task数量。
succeed task count 成功的task 数量。
failed task count 失败的task数量。
is scan Finished 是否扫描完成(true表示已扫描完,false表示未扫描完)。注意:增量状态下这个值一直是false。
上传文件日志
fileStatusForSls_v1.log
记录上传文件的日志,每条文件上传成功都会打印一条日志(字段间以逗号分割,以下数字表示该字段的相对位置)文件里面记录了如下信息:第4列:文件路径名称。
第6列:任务名称,
第12列:文件迁移状态( succeed,failed)。
第13列:失败原因。
第16列:Object大小。
任务状态日志
jobsForSls_v1.log 记录整个任务的状态信息,每分钟更新一次,直到所有任务都结束为止。记录如下信息:
第5列:任务名称。
第9列:任务状态。
第14列:总的文件数量。
第15列:总的文件大小。
第16列:成功文件数量。
第17列:成功的文件大小。
第21列:是否扫描完成(1 表示扫描完成,0 表示未扫描完成)。