Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了rsync文件到hadoop大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我有6台服务器,每台都包含很多日志.我想通过rsync将这些日志放到hadoop fs上.现在我正在使用fuse和rsync直接写入熔丝安装的fs / mnt / hdfs. 但是有一个大问题.大约一天后,保险丝守护程序占用5 GB的RAM,并且无法对安装的fs做任何事情.所以我必须重新安装保险丝,一切都很好,但只是一段时间. Rsync命令是 rsync --port=3360 -az --ti
我有6台服务器,每台都包含很多日志.我想通过rsync将这些日志放到hadoop fs上.现在我正在使用fuse和rsync直接写入熔丝安装的fs / mnt / hdfs.
但是有一个大问题.大约一天后,保险丝守护程序占用5 GB的RAM,并且无法对安装的fs做任何事情.所以我必须重新安装保险丝,一切都很好,但只是一段时间.
Rsync命令是
rsync --port=3360 -az --timeout=10 --contimeout=30 server_name::ap-rsync/archive /mnt/hdfs/logs

一段时间后,Rsync会生成错误消息:

rsync error: timeout in data send/receive (code 30) at io.c(137) [sender=3.0.7]
rsync: connection unexpectedly closed (498784 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [receiver=3.0.7]
rsync: connection unexpectedly closed (498658 bytes received so far) [generator]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [generator=3.0.7]

解决方法

Fuse-hdfs不支持O_RDWR和O_EXCL,因此rsync会出现EIO错误.
如果要将rsync与fuse-hdfs一起使用,则需要修补代码.
您有两种修改方法,每种方法都可以.我建议使用第二种方法.

> patch fuse-hdfs,它可以在hadoop中找到.

https://issues.apache.org/jira/browse/HDFS-861
> patch rsync(版本3.0.8).

diff -r rsync-3.0.8.no_excl/syscall.c rsync-3.0.8/syscall.c

234a235,252
> #if Defined HAVE_SECURE_MKstemP && defined HAVE_FCHMOD && (!defined HAVE_OPEN64 || defined HAVE_MKstemP64)
>   {
>       int fd = mkstemp(templatE);
>       if (fd == -1)
>           return -1;
>       if (fchmod(fd,perms) != 0 && preserve_perms) {
>           int errno_save = errno;
>           close(fd);
>           unlink(templatE);
>           errno = errno_save;
>           return -1;
>       }
> #if Defined HAVE_SETMODE && O_BINARY
>       setmode(fd,O_BINARY);
> #endif
>       return fd;
>   }
> #else
237c255,256
<   return do_open(template,O_WRONLY|O_CREAT,perms);
---
>   return do_open(template,O_RDWR|O_EXCL|O_CREAT,perms);
> #endif

大佬总结

以上是大佬教程为你收集整理的rsync文件到hadoop全部内容,希望文章能够帮你解决rsync文件到hadoop所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:rsync文件