flink集群一键安装脚本 -- flink集群安装

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21682469/article/details/79369634
#!/bin/sh

########## HELP ###########
if [ $# -ne 0 ];then
    if [ $1 == "-h" -o $1 == "-help" ];then
            echo -e "
            示例:
                    ./test # 启动本地模式,不修改任何配置
                    ./test -master master -slave slave1,slave2,slave3 ... # 启动集群模式,创建master,指定master的地址及端口,以及slave的地址
                    ./test -master msater # 启动集群模式,创建slave,指定master的地址及端口
            ";
            exit 0;
    fi;
fi;

DOWNLOAD_PATH=""

################ 创建flink ########################
INSTALL_PATH="/usr/local/src"
FLINK_UNPACK_PATH="${INSTALL_PATH}/flink-1.3.1"
FLINK_GZIP="flink-1.3.1-bin-hadoop2-scala_2.10.tgz"
FLINK_CONF_DIR="${FLINK_UNPACK_PATH}/conf"

if [ ! -f ${FLINK_GZIP} ];then
    wget https://archive.apache.org/dist/flink/flink-1.3.1/${FLINK_GZIP} # 下载flink二进制包
fi;

# flink加压之后可直接通过shell脚本启动、关闭
# /usr/local/src/flink-1.3.1/bin/start-local.sh
# /usr/local/src/flink-1.3.1/bin/stop-local.sh

tar xzf ${FLINK_GZIP} -C ${INSTALL_PATH}
# 解压文件
if [ $? -ne 0 ];then
    exit 1;
fi;
# 本地模式
if [ $# -eq 0 ];then
    exit 1;
fi;
# 集群创建
# 创建master,修改flink-conf.yaml、slaves
if [ $# -eq 4 ];then
    sed -i 's/jobmanager.rpc.address: localhost/jobmanager.rpc.address: '${2}'/g' ${FLINK_CONF_DIR}/flink-conf.yaml # 修改rpc地址,指向master
    cat /dev/null > ${FLINK_CONF_DIR}/slaves
    # 将slave分割
    arr=(${4//,/ })
    for i in ${arr[@]}
    do
        echo $i >> ${FLINK_CONF_DIR}/slaves;
    done
    exit 1;    
fi;
# 创建slave
if [ $1"a" == "-mastera" ];then
    sed -i 's/jobmanager.rpc.address: localhost/jobmanager.rpc.address: '${2}'/g' ${FLINK_CONF_DIR}/flink-conf.yaml # 修改rpc地址,指向master
    cat /dev/null > ${FLINK_CONF_DIR}/masters
    # 将master分割
    arr=(${2//,/ })
    for i in ${arr[@]}
    do
        echo $i':8081' >> ${FLINK_CONF_DIR}/masters;
    done
    exit 1;   
fi;
############## flink 创建完成  ########################



猜你喜欢

转载自blog.csdn.net/qq_21682469/article/details/79369634