Monit SRCDS Plugin

Andrey

пишу код за еду
Сообщения
3,386
Реакции
4,024
  • Команда форума
  • #1
Monit Srcds Plugin

Monit плагин отслеживает состояние Source Dedicated Server (srcds) и перезапускает его если он зависает или падает. Предназначен для Linux систем.

Плагин требует два скрипта запуска: start.sh и stop.sh.
Скопируйте и вставьте содержимое скриптов в каталог установки SRCDS и замените каталоги в скрипте в соответствии с путями по которым установлен ваш сервер.

Инструкция для Debian:
1. apt-get install monit
2. Отредактируйте /etc/default/monit (измените startup=1 и CHECK_INTERVALS=30)
3. Отредактируйте /etc/monit/monitrc (добавьте строку: include /etc/monit.d/*)
4. Создайте директорию /etc/monit.d/ (mkdir /etc/monit.d)
5. Поместите содержимое представленное ниже в /etc/monit.d/srcds_server1

* Примечание: используйте эти скрипты запуска (start.sh и stop.sh). Скопируйте и вставьте код в директорию где установлен srcds.

start.sh
PHP:
    #!/bin/sh

    if [ "$1" == "" ]
        then
        echo Syntax: $0 now
        echo Sleeping 90 seconds and then activating
        sleep 90
    fi
    cd /home/user/csds/
    /usr/bin/screen -A -m -d -S csds ./srcds_run -game cstrike -insecure -console +maxplayers 32 +port 27015 +ip 1.2.3.4 -tickrate 100 +map de_cbble
    /bin/echo Server started and screen detached. Use screen -r csds to attach.
    if [ "$1" == "" ]
        then
        /bin/echo Sleeping 60 seconds so server is really running
        sleep 60
    fi
stop.sh
PHP:
#!/bin/bash
/usr/bin/screen -dr csds -X quit
/bin/sleep 60
/usr/bin/killall -9 srcds_run
/bin/sleep 15
/etc/monit.d/srcds
PHP:
    CHECK HOST myserver ADDRESS 1.2.3.4
     START PROGRAM = "/home/user/csds/start.sh" AS UID user AND GID user
     STOP PROGRAM = "/home/user/csds/stop.sh" AS UID user AND GID user
     IF FAILED PORT 27015 TYPE UDP
      SEND "\0xFF\0xFF\0xFF\0xFFi"
      EXPECT ""
      WITH TIMEOUT 3 SECONDS
      FOR 5 CYCLES
     THEN RESTART
     EVERY 5 CYCLES
     IF 3 RESTARTS WITHIN 20 CYCLES THEN TIMEOUT
     ALERT user@gmail.com ON {timeout}
      WITH MAIL-FORMAT {
       from: monit@$HOST
       subject: Game server at $HOST is down
       message: Game server is down since $DATE.
       Note that I already tried restarting three times.

       Yours, Monit.
      }
Источник: css.setti.info
 
Последнее редактирование:

Andrey

пишу код за еду
Сообщения
3,386
Реакции
4,024
  • Команда форума
  • #3
zalman, это для linux, поэтому врядли тебя это заинтересует, т.к. твой вопрос показывает что ты не знаешь, что такое sh скрипт и не понимаешь для какой это системы.
 

KorDen

Atra esterní ono thelduin!
Сообщения
2,142
Реакции
1,424
Кто-нибудь его сейчас использует? У меня при старте ругается
/etc/monit.d/css_dm2:6: Error: regex parsing error:empty (sub)expression '""'
Ругается на строчку EXPECT "" - по идее нельзя пустые кавычки ставить...
 
Сверху Снизу