linux kafka进程挂了 自动重启
使用crontab,定时监控 kafka进程,发现挂了后重启。
shell脚本如下:
#!/bin/sh
source /etc/profile
proc_dir="/data/kafka" # 程序目录
proc_name="kafka.Kafka" # 进程名
file_name="cron.log" # 日志文件
pid= proc_num() # 计算进程数
{
num=`ps -ef | grep $proc_name | grep -v grep | wc -l`
return $num
} proc_id() # 进程号
{
pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'`
} proc_num
number=$?
echo $number
if [ $number -eq ] # 判断进程是否存在
then
$proc_dir/kafka_2.-2.0./bin/kafka-server-start.sh -daemon $proc_dir/kafka_2.-2.0./config/server.properties # 重启进程的命令,请相应修改
proc_id # 获取新进程号
echo "server down restart..." >> $proc_dir/$file_name
echo ${pid}, `date` >> $proc_dir/$file_name # 将新进程号和重启时间记录
fi
crontab设置如下,每一分钟检测一次:
[root@localhost tools]# crontab -l
HELL=/bin/bash
*/ * * * * sh /data/tools/kafkaRestart.sh
linux kafka进程挂了 自动重启的更多相关文章
- Memcached进程挂掉自动重启脚本
vim memcached_check.sh #!/bin/sh #check memcached process and restart if down PATH=$PATH:/opt/env/ ...
- 在windows 上自动重启 tomcat 的方法
在windows 上自动重启 tomcat 的方法 实现思路: Windows 上监控tomcat 进程并且自动重启的脚本 一类是 定时重启 tomcat 一类是 监控并重启 写一个守护tomcat进 ...
- linux下监视进程 崩溃挂掉后自动重启的shell脚本
如何保证服务一直运行?如何保证即使服务挂掉了也能自动重启?在写服务程序时经常会碰到这样的问题.在Linux系统中,强大的shell就可以很灵活的处理这样的事务. 下面的shell通过一个while-d ...
- 在linux下python爬虫进程发生异常时自动重启直至正常结束的方法
之前在做爬虫的时候遇到一种情况,当网络情况不太好的时候,爬虫爬到的链接在urlopen时会因为无法正常连接而报URLError或者timeout的错误导致陈序报错而终止:但是这些错误在重新运行陈序后能 ...
- linux 进程监控和自动重启的简单实现
目的:linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能. 实现原理:由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重 ...
- linux 进程监控和自动重启的简单实现(转)
目的:linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能. 实现原理:由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重 ...
- linux上监控tomcat down掉后自动重启tomcat
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p. ...
- linux下通过脚本实现自动重启程序的方法
无论什么程序都不可能完美无缺,理论上,任何程序都有 Core Dump 的一天,正式运营的程序,尤其是服务器程序,一旦 Core Dump ,后果不堪设想,有过服务器开发经验的朋友,一定都经历过深夜美 ...
- linux服务器挂掉自动重启脚本(转)
实现原理主要是使用linux提供的crontab机制,定时查询服务器进程是否存在,如果宕机则执行我们预设的重启脚本. 首先我们要向crontab加入一个新任务 sudo crontab -e #进入编 ...
随机推荐
- Jenkins执行脚本文件
Jenkins执行脚本文件如下(startup.sh): #!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 export JAVA_HOME=/usr/src/java/jdk ...
- Java学习之多线程(线程安全问题及线程同步)
一.线程安全问题产生前提:1.多线程操作共享数据2.线程任务中有多条代码 class Ticket implements Runnable { //2.共享数据 private int num = 1 ...
- VS2015 编写C++的DLL,并防止DLL导出的函数名出现乱码(以串口通信为例,实现串口通信)
参考链接:https://blog.csdn.net/songyi160/article/details/50754705 1.新建项目 建立好的项目界面如下: 接着在解决方案中找到[头文件]然后右击 ...
- (4.10)sql server导入导出
SQL Server快速导入数据分享 核心参考:官网~~https://docs.microsoft.com/zh-cn/sql/relational-databases/import-export/ ...
- centos 7.2 离线安装 gcc
1.查看有没有挂载 centos 7.2 的镜像源文件 2.如果没有就通过服务端挂载 如果不知怎么挂载,就解压CentOS-7-x86_64-DVD-1511.iso 镜像文件,在Packages找到 ...
- ubuntu 配置php环境
第一步:先更新 sudo apt-get update 第二步:安装 安装 Apache2: sudo apt-get install apache2 安装PHP模块: sudo apt-get in ...
- SSL连接出现的问题
客户端向服务器发送数据时,份两种情况,SSL单向验证和SSL双向验证 1.SSL单向验证时 代码如下: import java.io.IOException; import java.util.Has ...
- wireshark抓取本地回环及其问题 转摘:http://www.cnblogs.com/luminji/p/3503464.html
一:The NPF driver isn’t running 这个错误是因为没有开启NPF服务造成的. NPF即网络数据包过滤器(Netgroup Packet Filter,NPF)是Winpcap ...
- etcd扩展使用
etcd我已经提到很多次了,前面的可以自己查看.v3版本改用grpc接口,很简单,非常简单,易上手易学习. etcd有集群部署方式,那么就涉及部署的地址,可以动态添加部署节点,这样再应用中不可能都去关 ...
- 安卓SDK的配置流程以及安装build-tools等插件
这两天做了一个移动端混合开发的项目,需要配置安卓的SDK,不过在这之前,需要先配置好Java环境(这个在这里就不写了).下面开始配置步骤: 1.下载SDK,然后解压到某个目录下面.推荐两个下载网址: ...