Monit SRCDS Plugin

Тема в разделе "Статьи и мануалы", создана пользователем Andrey, 16 июл 2011.

  1. Andrey

    Andrey Администратор

    Сообщения:
    3.234
    Симпатии:
    3.509
    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 ----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 {
           
    frommonit@$HOST
           subject
    Game server at $HOST is down
           message
    Game server is down since $DATE.
           
    Note that I already tried restarting three times.

           
    YoursMonit.
          }
    Источник: css.setti.info
     
    Последнее редактирование: 16 июл 2011
    KorDen, Серый™, Fab3r и 2 другим нравится это.
  2. zalman

    zalman Ушёл в армию 13.12.2011

    Сообщения:
    764
    Симпатии:
    146
    А как установить?
     
  3. Andrey

    Andrey Администратор

    Сообщения:
    3.234
    Симпатии:
    3.509
    zalman, это для linux, поэтому врядли тебя это заинтересует, т.к. твой вопрос показывает что ты не знаешь, что такое sh скрипт и не понимаешь для какой это системы.
     
    Fab3r и random.81 нравится это.
  4. zalman

    zalman Ушёл в армию 13.12.2011

    Сообщения:
    764
    Симпатии:
    146
    все верно
     
  5. MFS

    MFS

    Сообщения:
    1.310
    Симпатии:
    537
    Andrey нравится это.
  6. KorDen

    KorDen Atra esterní ono thelduin! Ньюсмейкер

    Сообщения:
    2.194
    Симпатии:
    1.398
    Кто-нибудь его сейчас использует? У меня при старте ругается
    /etc/monit.d/css_dm2:6: Error: regex parsing error:empty (sub)expression '""'
    Ругается на строчку EXPECT "" - по идее нельзя пустые кавычки ставить...