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-Cloud 学习笔记-(4)负载均衡器Ribbon
    Spring-Cloud 学习笔记-(5)熔断器Hystrix
    微信支付(APP)
    Resetting Frame Animation
    Java内部类与final关键字详解
    UML中关联(Association)和依赖(Dependency)的区别
    ListView 介绍
    android Activity类中的finish()、onDestory()和System.exit(0) 三者的区别
    AsyncTask和Handler对比
    create groups 和 create folder reference
  • 原文地址:https://www.cnblogs.com/yxym2016/p/13407797.html
Copyright © 2011-2022 走看看