51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

linux集群安装 rsync 同步脚本data_rsync.sh

集群rsync 同步脚本

必须用绝对路径:

data_rsync.sh /baimei/softwares/elasticsearch-7.17.5/config/elasticsearch.yml 

或者:

data_rsync.sh `pwd`/config/baimei-elastic-certificates.p12

需求, 可以用rsync 一键同步到所有的节点。

(1)所有节点安装rsync数据同步工具

yum -y install rsync

(2)编写同步脚本

cat > /usr/local/sbin/data_rsync.sh <<'EOF'
#!/bin/bash
# Auther: baimei

if [ $# -ne 1 ];then echo "Usage: $0 /path/to/file(绝对路径)" exit fi

判断文件是否存在

if [ ! -e $1 ];then echo "[ $1 ] dir or file not find!" exit fi

获取父路径

fullpath=dirname $1

获取子路径

basename=basename $1

进入到父路径

cd $fullpath

for ((host_id=112;host_id<=113;host_id++)) do # 使得终端输出变为绿色 tput setaf 2 echo ===== rsyncing elk${host_id}: $basename ===== # 使得终端恢复原来的颜色 tput setaf 7 # 将数据同步到其他两个节点 rsync -apz $basename whoami@elk${host_id}:$fullpath if [ $? -eq 0 ];then echo "命令执行成功!" fi done EOF

(3)给脚本授权

chmod +x /usr/local/sbin/data_rsync.sh

(4) 测试 (必须加入 绝对路径)

我们 同步一个文件,看看是否所有节点同步成功

data_rsync.sh log.tx

看看其他节点是否有 log.txt , 有说明成功了。

赞(7)
未经允许不得转载:工具盒子 » linux集群安装 rsync 同步脚本data_rsync.sh