温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

kafka怎样实现批量启动和关闭脚本?

发布时间:2020-05-23 16:31:55 来源:亿速云 阅读:190 作者:鸽子 栏目:系统运维

kafka集群每次启动都需要登录多台服务器操作,比较麻烦,安装了一个批量管理工具pssh,配置了ssh免秘钥登录,写了一个简单的shell脚本方便日常的批量启动、关闭操作。

[root@kafka1 ~]# cat /usr/local/kafka/bin/kafka-daemons.sh 
#!/bin/bash 
#kafka start stop 
#date 2020.03.07



###########################
#[root@kafka1 ~]# cat /root/khost.txt 
#192.168.180.21
#192.168.180.22
#192.168.180.23
#三台主机配置ssh免秘钥



function zookeeper_start(){
pssh -h khost.txt -i zkServer.sh start
sleep 5
pssh -h khost.txt -i jps
}

function zookeeper_stop(){
pssh -h khost.txt -i zkServer.sh stop
sleep 5
pssh -h khost.txt -i jps
}

function zookeeper_status(){
pssh -h khost.txt -i zkServer.sh status
}

function kafka_start(){
pssh -h khost.txt -i kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
sleep 5
pssh -h khost.txt -i jps
}

function kafka_stop(){
pssh -h khost.txt -i kafka-server-stop.sh
sleep 5
pssh -h khost.txt -i jps
}

function kafka_status(){
pssh -h khost.txt -i jps 
}





echo -e "[1] start zookeeper 
[2] stop zookeeper
[3] status zookeeper
[4] start kafka
[5] stop kafka
[6] status kafka
"
read -p "please input install servers[1]|[2]|[3]|[4]|[5]|[6]|:" server_s
case $server_s in
    1)
    read -p "Please confirm your input [yes]:" confirm
        case $confirm in
            yes|YES|YEs|yEs|yeE)
                zookeeper_start
                    ;;
                    *)
                    exit
        esac
    ;;
    2)
    read -p "Please confirm your input [yes]:" confirm
               case $confirm in
                        yes|YES|YEs|yEs|yeE)
                               zookeeper_stop
                                        ;;
                                        *)
                                        exit
        esac
    ;;
    3)
     read -p "Please confirm your input [yes]:" confirm
                case $confirm in
                        yes|YES|YEs|yEs|yeE)
                               zookeeper_status
                                        ;;
                                        *)
                                        exit
        esac
    ;;
        4)
    read -p "Please confirm your input [yes]:" confirm
               case $confirm in
                        yes|YES|YEs|yEs|yeE)
                               kafka_start
                                        ;;
                                        *)
                                        exit
        esac
    ;;
        5)
    read -p "Please confirm your input [yes]:" confirm
               case $confirm in
                        yes|YES|YEs|yEs|yeE)
                               kafka_stop
                                        ;;
                                        *)
                                        exit
        esac
    ;;
        6)
    read -p "Please confirm your input [yes]:" confirm
               case $confirm in
                        yes|YES|YEs|yEs|yeE)
                               kafka_status
                                        ;;
                                        *)
                                        exit
        esac
    ;;
    *)
    echo -e "\033[32;1m please input start or stop servers[1]|[2]|[3]|[4]|[5]|[6]!!!\033[0m"
    exit
esac


添加脚本的执行权限

[root@kafka1 ~]# chmod 755 /usr/local/kafka/bin/kafka-daemons.sh

启动zookeeper

kafka怎样实现批量启动和关闭脚本?

启动kafka

kafka怎样实现批量启动和关闭脚本?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI