Jump to content

если упал стг, что делать???


Recommended Posts

на сколько я понял принципы работы стг, если сервис не запущен, а в фаэрволе есть правила на допуск кого-либо в интернет, то они туда попадут...

 

короче говоря, народ работает, падает стг, то получается что они продолжат БЕСПЛАТНО РАБОТАТЬ

если это так, то что делают уважаемые господа?????

самое простое, что мне пришло в голову, это в кроне каждую минуту провереть статус сервиса, если не запущен - то закрыть всем все...

 

утешьте меня, что я зря пужаюсь или скажите как решить вышеназванную проблему...

Link to post
Share on other sites
на сколько я понял принципы работы стг, если сервис не запущен, а в фаэрволе есть правила на допуск кого-либо в интернет, то они туда попадут...

 

Да принцип работы сейчас у него именно такой. И есть падает сервис то преращается подсчет трафика но людишки в инет хоят но не общитываются.

 

если это так, то что делают уважаемые господа?????

 

У меня в кроне стоит скрипт на проверку каждые 15 минут, скрипт проверяет есть ли стг в процессах, если его нет он его перезапускает и отправляет мне мыло. На практике этот скрипт мне ниразу не пригодился, висит для подстраховки.

Link to post
Share on other sites
  • 2 weeks later...

#!/bin/sh

 

temp=$(service stargazer status)

x="выполняется..."

y=0;

z=1;

clear

 

for i in $temp

do

if [ $i = $x ]; then

y=1

fi

 

done

 

if [ $y -eq $z ]; then

echo "working"

else

echo "NOT WORKING"

service stargazer start

fi

Link to post
Share on other sites

Нельзя ли дополнить скрипт.

Если stg упал то он обнулил файл stat у пользователя и больше стартовать несможет надо добавить проверку на stat и замену его из ранее сохраненного.

Под freebsd на форуме был скрипт но адаптировать под линух неполучилось.

Link to post
Share on other sites
  • 7 months later...

при падении стг

процесс висит, правила остаются, но ничего не исполняется

в логах ничего не пишется

если в момент падения он писал статистику, то создается bak файл статистики

но стг не стартует, надо смотреть в логе кто выпал с общей статистики и из-за чьего стата не стартует

первоначально спасаемся скриптом просто проверки первой строки ps

под линухом.

[root@local.com.ua stargazer]# cat stg_alive
#!/bin/bash

set `ps x | grep stargazer2`

if [ $3 = "S<" ]
   then f="stg status: running"
   else
       killall stargazer2.4
       killall -KILL stargazer2.4
       iptables -t filter -F FORWARD
       iptables -t nat -F POSTROUTING
       /usr/sbin/stargazer
       f="stargazer was stopped. Now is runnning"
fi

echo $f
[root@local.com.ua stargazer]#

основывается на банальной проверке символа в процессах :)

как-нить напишу более нормально

Link to post
Share on other sites
  • 3 months later...

Foster меня заинтересовал ответ для Linux, а можно продолжение мысли?

Что-то такое хочу поставить у себя. За ранее спасибо.

Link to post
Share on other sites

Не пользуюсь скриптами для проверки выбитости старгейзера. Полгода работало на 2.0 затем уже 3 месяцы на 2.4, ниразу не вылетал он.

 

У аффтара, скорее всего трабла в настройках файрвола и скриптах.

Link to post
Share on other sites

Вот на пхп функция для проверки (и дальнейшей манипуляции над процессами) работы демонов стандартным методом. Можно также выгреб%#ь из top-а для отображения процентной загрузки, но на мой взгляд это "рюшечки".

 

Писана для просмотра на кпк (разрешение 320х240)

 

function checkd($daemon,$name) { 
 $ps ="ps ax | grep $daemon | wc -l"; 
 $origps = exec($ps); 
 $minone = $origps-2; 
 if ($minone<1) { 
     $dataps = "Only <b><font color=red>$minone</font> daemon</b> for <b>$daemon</b>, 
      <br><b><font color=red>$name TOTALY DOWN</font></b><br>"; 
     } 
 if ($minone==1) { 
     $dataps = "<b><font color=green>UP</font></b> only with <b><font color=red>$minone</font> $daemon daemon</b><br>"; 
     } 
 if ($minone>1) { 
     $dataps = "<b><font color=green>UP</font></b> with <b><font color=red>$minone</font> $daemon daemons</b><br>"; 
     } 
     return $dataps; 
} 
echo checkd("billing","Billing daemon"); 
echo checkd("mysqld","MySQL daemon"); 
echo checkd("httpd","Apache daemon"); 
echo checkd("verlihub","VerliHUB daemon"); 
echo checkd("oops","OOPS cash-proxy daemon"); 
echo checkd("bsdproxy","FWD daemon"); 
echo checkd("natd","NATD daemon"); 
echo checkd("rootch","RChecker daemon");

Link to post
Share on other sites
  • 2 months later...
Вот на пхп функция для проверки (и дальнейшей манипуляции над процессами) работы демонов стандартным методом.[/code]

Если обновить несколько раз - то некоторые сервисы "пропадают". Каждый раз разные. При этом сервис работает. :)

Это так и задумывалось?

 

А приведённый Фостером скрипт при любых условиях перезапускает stg. У всех так? :rrr:

Link to post
Share on other sites

не понимаю - зачем такие сложности?

 

У меня простой скриптик с бесконечным циклом, который запускает СТГ! Т.е. как только СТГ падает - цикл возвращается в начало и запускает сначала проверку наличия и правильности всех файлов (выложен мной в другой теме), а потом снова запускает СТГ.

Link to post
Share on other sites
не понимаю - зачем такие сложности?

 

У меня простой скриптик с бесконечным циклом, который запускает СТГ! Т.е. как только СТГ падает - цикл возвращается в начало и запускает сначала проверку наличия и правильности всех файлов (выложен мной в другой теме), а потом снова запускает СТГ.

Ну в любом случае скрипт твой не решит всех проблем. Может так получиться, что всё таки сервис стг не запустится. Так вот для того, что б удалённо посмотреть что и как.

 

ЗЫ ссылку на "другую тему" можно? -:)

Link to post
Share on other sites
Ну в любом случае скрипт твой не решит всех проблем. Может так получиться, что всё таки сервис стг не запустится. Так вот для того, что б удалённо посмотреть что и как.

 

ЗЫ ссылку на "другую тему" можно? -<!--emo&:)-->u.gif<!--endemo-->

Если уж этот скрипт не подымет, то кроме как руками - его ничем не подымешь! Через SSH зашел тогда и поднял.

 

Была идея в этом-же скрипте дописать, чтоб СМС на моб. отправлялось при падении СТГ. По-моему я ее даже воплотил, там делов на 5 мин. Например упал СТГ - пришло СМС и ждешь, если еще через минуту пришло - значит он сам не может подняться - развалился...

Но потом не счел нужным его ставить - т.к. СТГ за 3 месяца еще ни разу не упал ;)

 

Вот ссылочка на мой скрипт бэкапа и аварийного поднятия СТГ (самый верхний пост):

http://local.com.ua/forum/index.php?showtopic=8165&st=15

Link to post
Share on other sites
  • 3 weeks later...

Поздно пить боржоми, когда почки отвалились. Юзеров не много, но все слетело, бекапа можно сказать нет, старый не подходит. Что делать? Никто не скинет пример файлов stat и conf? Буду благодарен.

Link to post
Share on other sites

cat keep_stg

#!/bin/bash
#Скрипт перезапуска при падении билинга для версии 2.4
stg=`ps x | grep stargazer`
dat=`date`

if [ -z "$stg" ]; then

       killall -9 stg-exec stargazer
       /etc/rc.d/rc.firewall
       /usr/sbin/stargazer
       f="stargazer was stopped. Now is runnning"

   else
        f="stg status: running"
fi

echo $dat $f  >> /var/log/stg.restart

в /etc/cron.d папку

cat stg

*/5 * * * * root /etc/rc.d/keep_stg

Link to post
Share on other sites

ну если будет отваливаться допишу скрипт

это не есть проблема

кслати статы на новой версии слетают намного чаще чем на 2.014 версии что есть не гуд

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...