In Linux et le Réseautage Dernière mise à jourated:
Partager sur:
Logiciel Jira est l'outil de gestion de projet n°1 utilisé par les équipes agiles pour planifier, suivre, publier et prendre en charge d'excellents logiciels.

Script Shell pour redémarrer les services en cas de panne / crash

C'est commun pour le process tomber en panne/descendre pour diverses raisons, sur lesquelles vous pouvez enquêterate et résoudre les problèmes, mais cela peut prendre un peu de temps.

Cependant, une chose que vous pouvez faire immédiatementately pour réduire les temps d'arrêt pour mieux disponibilité c'est d'automatiserate redémarrage du process si c'est en baisse.

Faisons cela par l'autoroute - scripts shell

Vous pouvez utiliser les scripts shell suivants pour exécuter crontab, qui vérifiera les services toutes les 15 minutes (vous pouvez ajuster le temps d'intervalle) et démarrera s'il est détecté qu'il ne fonctionne pas. Cela paraît bien?

Dans cet article, je vais donner deux exemples de démarrage des services en cas de panne.

Si vous utilisez CentOS / RHEL 7+, vous pouvez également vérifier cet article expliquant l'utilisation de systemd recommencer.

Redémarrage automatique de MySQL, PHP-FPM, Nginx si en panne

Il y a quelques semaines, j'ai déplacé Geek Flare vers DigitalOcean avec Moteur facile et MariaDB s'est écrasée deux fois en une semaine.

mariadb s'est écrasé

Vous voyez, il s'est écrasé tôt le matin et est resté en panne pendant plus de 3 heures, ce qui n'est pas bon. C'est mon blog, donc non $$$ impact mais je me sens toujours mal pour ça.

D'accord, showtime maintenant…

  • Create un fichier utilisant les éditeurs vi à l'emplacement souhaité (dans cette démo, je le placerai sous /opt/startifdown.sh)
  • Copiez et collez le script ci-dessous dans le fichier et enregistrez-le
#!/bin/bash
#Scripts to start services if not running
ps -ef | grep nginx |grep -v grep > /dev/null
if [ $? != 0 ]
then
       /etc/init.d/nginx start > /dev/null
fi
ps -ef | grep php5-fpm |grep -v grep > /dev/null
if [ $? != 0 ]
then
       /etc/init.d/php5-fpm start > /dev/null
fi
ps -ef | grep mysql |grep -v grep > /dev/null
if [ $? != 0 ]
then
       /etc/init.d/mysql start > /dev/null 
fi
  • Changer l'autorisation du fichier pour qu'il soit exécutable
chmod 755 startifdown.sh

Testez-le manuellementally pour garantir que le script est exécutable.

Vous pouvez arrêter le service et utiliser le script pour vérifier s'il démarre. Une fois que vous êtes satisfait, vous pouvez le mettre dans cron pour qu'il s'exécute toutes les 15 minutes.

*/1 * * * * /opt/startifdown.sh

Référer mon article de crontab si vous avez besoin d'inspiration pour changer le temps d'intervalle.

Maintenant, ce petit script s'occupera de démarrage des services en cas de panne et je n'aurai pas ces 3 heures de temps d'arrêt.

Beaucoup mieux!

Redémarrage automatique de WebSphere DMGR, Nodeagent, JVM en cas d'arrêt

Create un fichier avec les scripts suivants – je le nommerai startwasifdown.sh

#!/bin/bash
#Scripts to start services if not running
#Specify DMGR Path Here
DMGR=/opt/IBM/WebSphere/AppServer/profiles/Dmgr01
#Specify Profile Path Here
Profile=/opt/IBM/WebSphere/AppServer/profiles/AppSrv01
ps -ef | grep dmgr |grep -v grep > /dev/null
if [ $? != 0 ]
then
       $DMGR/bin/startManager.sh > /dev/null
fi
ps -ef | grep nodeagent |grep -v grep > /dev/null
if [ $? != 0 ]
then
       $Profile/bin/startNode.sh > /dev/null
fi
ps -ef | grep server1 |grep -v grep > /dev/null
if [ $? != 0 ]
then
       $Profile/bin/startServer.sh server1 > /dev/null
fi

Remarque: Modifiez le chemin en fonction de votre environnement et ajoutez plus de lignes pour plusieurs JVM.

  • Changer l'autorisation du fichier pour qu'il soit exécutable
chmod 755 startwasifdown.sh

Testez-le manuellementally, et une fois que vous en êtes satisfait, vous pouvez le mettre dans cron pour l'exécuter toutes les 15 minutes ou à chaque fois.ateça te va.

*/1 * * * * /opt/ startwasifdown.sh

Ceci est juste une ligne directrice pour vous permettre d'automatiserate le truc.

Vous aimez l'automatisation? En savoir plus script shell bash.

Partager sur:
  • Chandan Kumar
    Auteur
    Chandan Kumar est un passionné de technologie chevronné et un entrepreneur passionné.ate à propos empowerles entreprises et les particuliers du monde entierally. En tant que fondateur de Geekflare, une publication technologique de premier plan, Chandan a dirigé le développement…

Merci à nos commanditaires

Plus de bonnes lectures sur Linux

Alimentez votre entreprise

Certains des outils et services pour aider votre entreprise grow.
  • L'outil de synthèse vocale qui utilise l'IA pour générerate des voix humaines réalistes.

    Essayez Murf AI
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.

    Essayez Brightdata
  • Monday.com est un système d'exploitation de travail tout-en-un pour vous aider à gérer les projets, les tâches, le travail, les ventes, le CRM, les opérations, workflowset plus encore.

    Essayez Monday
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.

    Essayez Intruder