使用rsync进行多服务器同步
使用rsync进行多服务器同步
@(Others)
当集群数量很大时,修改配置文件和节点之间的文件同步是一件很麻烦且浪费时间的事情。
rsync是linux上实现不同机器之间文件同步、备份的工具,centos系统中默认已经安装,使用
rsync -h
检查是否已经安装rsync。
使用前提
确保各个节点部署的目录结构是一致的,不然同步起来很麻烦。
使用过程
在网上找到一大堆rsync的配置资料,然而使用起来不尽人意,对于初次使用rsync的人来说,各种配置显然太过复杂,需要一步步来熟悉。
所以这里不会对rsync的配置文件进行任何修改,仅仅使用rsync的命令进行同步操作。
需求
需要同步各个节点上的hadoop、hbase和spark的配置文件,其余目录/文件不需要同步。
exclude文件
在部署hadoop等父目录下,新建一个rsync-exclude.list文件,内容为不需要同步的目录/文件,每个目录/文件为一行
每行的内容不要留有空格或者制表符等,不然会导致无效!
在该目录下执行rsync命令:
sudo rsync -avz --exclude-from rsync-exclude.list ${需要同步的目录} ${目标节点ip/host}:${目标节点的目录}
-avz 表示传输过程中递归同步、显示详情并使用压缩。
–exclude-from 的参数为exclude文件目录。
注意,exclude文件中要使用相对路径,测试时使用绝对路径失败。
脚本实现多服务器同步
只需要一个简单的for循环即可实现:
#!/bin/bash
hosts=(host1 host2 host3 ...)
for host in ${hosts[@]}
do
sudo rsync -avz --exclude-from rsync-exclude.list ${需要同步的目录} $host:${目标节点的目录}
done
作者:@小黑

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
maven 不依赖 jar(解决 jar 冲突 )
如图找到 含有该 jar 的 配置 然后 再pom 中 exclusions 掉 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop_versoin}</version> <exclusions> <exclusion> <artifactId>javax.servlet.jsp</artifactId> <groupId>jsp-api</groupId> </exclusion> </exclusions> </dependency> 捐助开发者 在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和Pa...
-
下一篇
HBASE解析
Hbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说HBase能够利用HDFS的分布式处理模式,并从Hadoop的MapReduce程序模型中获益。这意味着在一组商业硬件上存储许多具有数十亿行和上百万列的大表。除去Hadoop的优势,HBase本身就是十分强大的数据库,它能够融合key/value存储模式带来实时查询的能力,以及通过MapReduce进行离线处理或者批处理的能力。总的来说,Hbase能够让你在大量的数据中查询记录,也可以从中获得综合分析报告。 谷歌曾经面对过一个挑战的问题:如何能在整个互联网上提供实时的搜索结果?答案是它本质上需要将互联网缓存,并重新定义在这样庞大的缓存上快速查找的新方法。为了达到这个目的,定义如下技术: 谷歌文件系统GFS:可扩展分布式文件系统,用于大型的、分布式的、数据密集型的应用程序。 BigTable:分布式存储系统,用于管理被设计成规模很大的结构化数据:来自数以千计商用服务器的PB级别的数据。 MapReduce:一个程序模型,用于处理和生成大数据集的相关实现。 在谷歌发布这些技术的文档之后, 不久...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- MySQL数据库在高并发下的优化方案
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作