热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

shell启动服务脚本

#!binbashKAFKA_HOMEoptkafkasourceoptwylcfg.configsu-hadoop<<EOFformmin

#!/bin/bash
KAFKA_HOME=/opt/kafka
source /opt/wyl/cfg.config
su - hadoop <for mm in ${ip[*]};do
echo "===>"\${mm}:
ssh -Tq  hadoop@\${mm} <"kafka"|grep -v "grep"|wc -l
if [ $(ps -ef | grep  "kafka"|grep -v "grep"|wc -l) >0 ]; 
then 
        echo 'kafka is started'
else
        cd /opt/kafka ;
        nohup ./bin/kafka-server-start.sh ${KAFKA_HOME}/config/server.properties > /opt/kafka/kafka.log &
        [ $? -eq 0 ] && echo 'kafka is start...'
fi
exit  
remotessh
done
EOF

1这里有一个问题:脚本文件名中含有kafka字样。

就是当执行sh kafkastart.sh的时候可能在master机器上出现2个进程,一个是kafka的正常进程(当该服务起了),第二个就是执行这个脚本的进程。所以问题来了

当master机器上kafka的服务没有起来,运行该指令,那么就会出现一个进程值为1,但是判断又声明了,当大于0 的时候说明服务已经起了,所以这时候该脚本就是有问题的。

解决方案:

shell指令可以获取该文件的名字,我们也可以用grep -v “文件名”(这里动态输入使用$0命令),将该进程不给wc -l去统计。这个时候无论你的纹尖叫*kafka*都是没问题的。

其他的启动脚本可以模仿着写,就不一一贴出来。
当kafka启动后在执行启动的脚本则会打印已经启动了。
这里写图片描述
进程的kill指令:
kill -9 ps -ef|grep "kafka"|grep -v "grep" |awk '{print $2}'
其中 grep -v “grep”是将该命令的进程不显示,只有一个kafka的进程,找到这个进程的id,然后kill -9 就OK了。

hive的启动脚本

#!/bin/bash
su - hadoop <cd /opt/hive
pwd
nohup ./bin/hive --service metastore & 
nohup ./bin/hive --service hiveserver2 &
EOF
if [ $? -eq 0 ];
then echo "hive is started...."
fi

推荐阅读
  • CentOS 7配置SSH远程访问及控制
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • ZABBIX 3.0 配置监控NGINX性能【OK】
    1.在agent端查看配置:nginx-V查看编辑时是否加入状态监控模块:--with-http_stub_status_module--with-http_gzip_stat ... [详细]
  • 生产环境下JVM调优参数的设置实例
     正文前先来一波福利推荐: 福利一:百万年薪架构师视频,该视频可以学到很多东西,是本人花钱买的VIP课程,学习消化了一年,为了支持一下女朋友公众号也方便大家学习,共享给大家。福利二 ... [详细]
  • 三、寻找恶意IP并用iptables禁止掉找出恶意连接你的服务器80端口的IP,直接用iptables来drop掉它;这里建议写脚本来运行, ... [详细]
  • Java程序员必会的40个Linux命令!
    你知道的越多,不知道的就越多,业余的像一棵小草!你来,我们一起精进!你不来,我和你的竞争对手一起 ... [详细]
  • 文章目录一、awk简介二、awk的两种形式语法格式1options:2command:三、awk工作原理四、记录与字段相关内部变量:五、格式化输出:printf函数六、awk模式和 ... [详细]
  • 作者|JiekeXu来源|JiekeXu之路(ID:JiekeXu_IT)转载请联系授权|(微信ID:xxq1426321293)大家好,我是Jieke ... [详细]
  • nginx使用内置模块配置限速限流的方法实例_nginx
    Nginx现在已经是最火的负载均衡之一,在流量陡增的互联网面前,接口限流也是很有必要的,尤其是针对高并发的场景,下面这篇文章主要给大家介绍了关于nginx使用内置模块配置限速限流的 ... [详细]
  • Python脚本编写创建输出数据库并添加模型和场数据的方法
    本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
author-avatar
neixi_0592045
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有