hbase:用于实现版本文件及配置同步的两个shell脚本

简介:

复制master节点上的版本内容到所有slaves节点上

注意:

    1:版本目录做了软链接,如 ln -s hbase-0.94.6 hbase

    2: 要根据实际情况,将/usr/local/修改为hbase所在的目录

#!/bin/bash
# copy a new release of HBase from the masternode to all slave nodes
# Rsyncs HBase files across all slaves. Must run on master.
# Assumes all files are located in /usr/local
if [ "$#" != "2" ]; then
        echo "usage: $(basename $0) <dir-name> <ln-name>"
        echo " example: $(basename $0) hbase-0.1 hbase"
        exit 1
fi

SRC_PATH="/usr/local/$1/conf/regionservers"

for srv in $(cat $SRC_PATH); do
        echo "Sending command to $srv...";
        rsync -vaz --exclude='logs/*' /usr/local/$1 $srv:/usr/local/
        ssh $srv "rm -fR /usr/local/$2 ; 
        ln -s /usr/local/$1 /usr/local/$2"
done
echo "done."

同步master节点上的配置文件到所有region servers

注意:

     1:版本目录做了软链接,如 ln -s hbase-0.94.6 hbase

    2: 要根据实际情况,将/usr/local/修改为hbase所在的目录

#!/bin/bash
# Rsync's HBase config files across all region servers. Must run on master.
for srv in $(cat /usr/local/hbase/conf/regionservers); do
	echo "Sending command to $srv...";
	rsync -vaz --delete --exclude='logs/*' /usr/local/hadoop/ $srv:/usr/local/hadoop/
	rsync -vaz --delete --exclude='logs/*' /usr/local/hbase/ $srv:/usr/local/hbase/
done
echo "done."

rsync命令简介

    Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远 程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。

工作模式

rsync [OPTION]... SRC DEST
rsync [OPTION]... SRC [USER@]HOST:DEST
rsync [OPTION]... [USER@]HOST:SRC DEST
rsync [OPTION]... [USER@]HOST::SRC DEST
rsync [OPTION]... SRC [USER@]HOST::DEST
rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

使用参数说明

-v, --verbose 详细模式输出

-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD

-z, --compress 对备份的文件在传输时进行压缩处理

--delete 删除那些DST中SRC没有的文

--exclude=PATTERN 指定排除不需要传输的文件模式

目录
相关文章
|
Shell
Shell 文件包含
10月更文挑战第5天
297 4
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
|
缓存 监控 Shell
如何使用 HBase Shell 进行数据的实时监控和备份?
如何使用 HBase Shell 进行数据的实时监控和备份?
531 5
|
Shell 分布式数据库 Hbase
如何使用 HBase Shell 进行数据的批量导入和导出?
如何使用 HBase Shell 进行数据的批量导入和导出?
1586 5
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
545 4
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
433 3
|
分布式计算 Java Hadoop
java使用hbase、hadoop报错举例
java使用hbase、hadoop报错举例
531 4
|
分布式计算 Ubuntu Hadoop
Ubuntu22.04下搭建Hadoop3.3.6+Hbase2.5.6+Phoenix5.1.3开发环境的指南
呈上,这些步骤如诗如画,但有效且动人。仿佛一个画家在画布上描绘出一幅完美的画面,这就是你的开发环境。接下来,尽情去创造吧,祝编程愉快!
1293 19
|
分布式计算 Hadoop 关系型数据库
Hadoop任务scan Hbase 导出数据量变小分析
Hadoop任务scan Hbase 导出数据量变小分析
338 0
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
390 3