zoukankan      html  css  js  c++  java
  • 大数据集群相关组件的群起脚本

    脚本一:集群群发脚本

    #!/bin/bash
    #1 获取输入参数个数,如果没有参数,直接退出
    pcount=$#
    if((pcount==0)); then
    echo no args;
    exit;
    fi
    
    #2 获取文件名称
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
    
    #3 获取上级目录到绝对路径
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
    
    #4 获取当前用户名称
    user=`whoami`
    
    #5 循环
    for((host=101; host<104; host++)); do
            echo ------------------- hadoop$host --------------
            rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
    done

    脚本二:集群中的所有节点执行相同的指令

    #! /bin/bash
    params=$@
    for((i=101;i<=103;i=$i+1));do
    echo "==================hadoop$i $params==============="
    ssh hadoop$i "source /etc/profile;$params"
    done

    脚本三:启动hdfs、yarn的脚本

    #!/bin/bash
    user=`whoami` 
    echo "================    正在启动HDFS              ==============="
    ssh $user@hadoop101 '/opt/module/hadoop-2.7.2/sbin/start-dfs.sh'
    echo "================    正在启动YARN                ==============="
    ssh $user@hadoop102 '/opt/module/hadoop-2.7.2/sbin/start-yarn.sh'
    done

    脚本四:启动zookeeper集群的脚本

    #! /bin/bash
    params=$@
    for((i=101;i<=103;i=$i+1));do
    echo "==================hadoop$i $params==============="
    ssh hadoop$i "source /etc/profile;$params"
    done
    [fym000@hadoop101 bin]$ cat zk.sh 
    #! /bin/bash
    case $1 in
    "start"){
        for i in fym000@hadoop101 fym000@hadoop102 fym000@hadoop103
        do
            ssh $i "source /etc/profile;/opt/module/zookeeper-3.4.10/bin/zkServer.sh start"
        done
    };;
    "stop"){
        for i in fym000@hadoop101 fym000@hadoop102 fym000@hadoop103
        do
            ssh $i "/opt/module/zookeeper-3.4.10/bin/zkServer.sh stop"
        done
    };;
    "status"){
        for i in fym000@hadoop101 fym000@hadoop102 fym000@hadoop103
        do
            ssh $i "source /etc/profile;/opt/module/zookeeper-3.4.10/bin/zkServer.sh status"
        done
    };;

    脚本五:启动kafka集群的脚本

    #!/bin/bash
    case $1 in
    "start"){
    
        for i in fym000@hadoop101 fym000@hadoop102 fym000@hadoop103
        do
            echo "=================== $i ================"
            ssh $i "source /etc/profile;/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
        done
    };;
    "stop"){
    
        for i in fym000@hadoop101 fym000@hadoop102 fym000@hadoop103
        do
            echo "=================== $i ================"
            ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"
        done
    };;
    esac
  • 相关阅读:
    Spring中Bean及@Bean的理解
    Visual Studio(VS)秘钥集合
    PLC不能初始化问题
    【原创】C# API 未能创建 SSL/TLS 安全通道 问题解决
    【原创】XAF CriteriaOperator 使用方式汇总
    【原创】.Net WebForm Calendar 日历控件常用方法
    【原创】XAF常用属性字段设置
    【记录】Windows 操作系统常用快捷命令
    【XAF】常见错误以及对应解决方法
    【原创】XAF ITreeNode+NonPersistent 使用方式
  • 原文地址:https://www.cnblogs.com/yxym2016/p/13407797.html
Copyright © 2011-2022 走看看