停机时如何自动重启服务()

本文概述

  • 如果关闭, 则自动重启MySQL, PHP-FPM, Nginx
  • 如果关闭, 则自动重新启动WebSphere DMGR, Nodeagent, JVM
Shell脚本, 如果宕机/崩溃, 则重新启动服务
由于各种原因, 程序崩溃/崩溃很常见, 你可以调查并解决问题, 但这可能需要一些时间。
但是, 你可以立即采取行动以减少停机时间以提高可用性, 这是在停机后自动重启过程。
让我们通过高速公路来完成此任务-Shell脚本
你可以使用以下Shell脚本来运行crontab, 它将每15分钟检查一次服务(你可以调整间隔时间), 如果发现未运行, 则将启动。听起来不错?
在本文中, 我将给出两个如果服务关闭启动服务的示例。
如果你使用的是CentOS / RHEL 7+, 那么你也可以查看此文章以解释如何使用systemd重新启动。
如果关闭, 则自动重启MySQL, PHP-FPM, Nginx 几周前, 我使用EasyEngine将Geek Flare移至DigitalOcean, 而MariaDB在一周内崩溃了两次。
停机时如何自动重启服务()

文章图片
你会看到它在清晨坠毁, 并坠落了3个多小时, 这不是很好。这是我的博客, 因此不会对$$$产生任何影响, 但我仍然为此感到难过。
好, 现在放映时间…
  • 使用vi编辑器在所需位置创建文件(在此演示中, 我将其放在/opt/startifdown.sh下)
  • 将以下脚本复制并粘贴到文件中并保存
#!/bin/bash#Scripts to start services if not runningps -ef | grep nginx |grep -v grep > /dev/nullif [ $? != 0 ]then/etc/init.d/nginx start > /dev/nullfips -ef | grep php5-fpm |grep -v grep > /dev/nullif [ $? != 0 ]then/etc/init.d/php5-fpm start > /dev/nullfips -ef | grep mysql |grep -v grep > /dev/nullif [ $? != 0 ]then/etc/init.d/mysql start > /dev/null fi

  • 将文件权限更改为可执行
chmod 755 startifdown.sh

手动测试以确保脚本可执行。
你可以停止该服务, 并使用脚本检查其是否正在启动。满意后, 可以将其放在cron中, 以每15分钟运行一次。
*/1 * * * * /opt/startifdown.sh

如果你在更改间隔时间方面需要一些启发, 请参阅我的crontab文章。
现在, 这个小脚本将在崩溃时负责启动服务, 而我不会有3个小时的停机时间。
好多了!
如果关闭, 则自动重新启动WebSphere DMGR, Nodeagent, JVM 使用以下脚本创建文件–我将其命名为startwasifdown.sh
#!/bin/bash#Scripts to start services if not running#Specify DMGR Path HereDMGR=/opt/IBM/WebSphere/AppServer/profiles/Dmgr01#Specify Profile Path HereProfile=/opt/IBM/WebSphere/AppServer/profiles/AppSrv01ps -ef | grep dmgr |grep -v grep > /dev/nullif [ $? != 0 ]then$DMGR/bin/startManager.sh > /dev/nullfips -ef | grep nodeagent |grep -v grep > /dev/nullif [ $? != 0 ]then$Profile/bin/startNode.sh > /dev/nullfips -ef | grep server1 |grep -v grep > /dev/nullif [ $? != 0 ]then$Profile/bin/startServer.sh server1 > /dev/nullfi

注意:更改路径以适合你的环境, 并为多个JVM添加更多行。
  • 将文件权限更改为可执行
chmod 755 startwasifdown.sh

手动测试它, 一旦满意, 就可以将其放在cron中, 每隔15分钟或适合你的时间运行一次。
*/1 * * * * /opt/ startwasifdown.sh

这只是你自动执行操作的准则。
【停机时如何自动重启服务()】喜欢自动化吗?了解有关bash shell脚本的信息。

    推荐阅读