Перезагрузка VPS с отвалившимся SSH и ISPmanager.

О виртуальном выделенном сервере

Модераторы: dobs, ArniXXX, hostess, pseudo

Сообщение
Автор
comfidel
Сообщения: 37
Зарегистрирован: Ср фев 23, 2011 13:42

Перезагрузка VPS с отвалившимся SSH и ISPmanager.

#1 Сообщение comfidel » Вт май 24, 2011 03:41

Собственно, вопрос: как?
Было просто чудесно, если бы администраторы реализовали возможность перезагружать повисший VPS. А то иногда случаются ситуации, когда по какой-то причине отпадает ISPmanager (404 при попытке загрузки), а SSH футболит все запросы вместе с FTP (почему-то). Apache и MySQL при том работают чудесно и возникает мысль: а что если реализовать это на PHP?

Код: Выделить всё

<?php 
exec("reboot") 
?>
Остаётся главный вопрос: каким образом можно придать PHP-скрипту права для выполнения этой команды?
-------
Кстати, вниманию сисадмина: перезагрузите №3, пожалуйста. Вышеописанная ерунда происходит.

dobs
HO Moderators
Сообщения: 2504
Зарегистрирован: Вс апр 09, 2006 14:42
Откуда: /home/Ukraine/Kyiv
Контактная информация:

#2 Сообщение dobs » Вт май 24, 2011 13:46

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

0z0n
Сообщения: 39
Зарегистрирован: Пт май 20, 2011 18:50

#3 Сообщение 0z0n » Вт май 24, 2011 16:36

dobs а подробнее можно? :)

К топик-стартеру: проверь у себя на сервере через top -c, может у тебя процессы съедают всю память. Ну и логи покопай.
У меня такое было, когда апач съедал всю память и не очищал ее по завершению процессов. Пришлось разбираться с настройками до поиска оптимального значения. Сейчас, памяти используется 365 Мб.

pseudo
HO Support
Сообщения: 136
Зарегистрирован: Чт май 20, 2010 10:24
Откуда: kyiv.ua
Контактная информация:

Re: Перезагрузка VPS с отвалившимся SSH и ISPmanager.

#4 Сообщение pseudo » Вт май 24, 2011 16:41

comfidel писал(а):Собственно, вопрос: как?
Было просто чудесно, если бы администраторы реализовали возможность перезагружать повисший VPS. А то иногда случаются ситуации, когда по какой-то причине отпадает ISPmanager (404 при попытке загрузки), а SSH футболит все запросы вместе с FTP (почему-то).
Якщо по ssh немає з'єднання, система моніторинга сама перезавантажує машину.
Apache и MySQL при том работают чудесно и возникает мысль: а что если реализовать это на PHP?

Код: Выделить всё

<?php 
exec("reboot") 
?>
Остаётся главный вопрос: каким образом можно придать PHP-скрипту права для выполнения этой команды?
Важко. Адже виконувати це потрібно з правами root, а apache з правами root з правом виконання system()... Некузяво зовсім.
-------
Кстати, вниманию сисадмина: перезагрузите №3, пожалуйста. Вышеописанная ерунда происходит.
Хм. В електронну пошту було б в рази швидше.
Перезавантажено.
Лучше обрез в руках, чем Калашников на складе

dobs
HO Moderators
Сообщения: 2504
Зарегистрирован: Вс апр 09, 2006 14:42
Откуда: /home/Ukraine/Kyiv
Контактная информация:

#5 Сообщение dobs » Вт май 24, 2011 19:12

По подробней, допустим первый скрипт создает файл в каком то месте, то по крону делаем ребут, чет типа такого:

reboot.php

Код: Выделить всё

<?php
file_put_contents('/tmp/rebootphp', '');
?>
А по крону вызывать этот и от рута, раз в 5-10 минут...

Код: Выделить всё

<?php
if(is_file('/tmp/rebootphp')) {
   unlink('/tmp/rebootphp');
   exec('/usr/bin/reboot');
}
?>

comfidel
Сообщения: 37
Зарегистрирован: Ср фев 23, 2011 13:42

#6 Сообщение comfidel » Ср май 25, 2011 03:00

0z0n писал(а): К топик-стартеру: проверь у себя на сервере через top -c, может у тебя процессы съедают всю память. Ну и логи покопай.
У меня такое было, когда апач съедал всю память и не очищал ее по завершению процессов. Пришлось разбираться с настройками до поиска оптимального значения. Сейчас, памяти используется 365 Мб.
Охохо, у меня минимум 500. Даже не знаю, как верно оптимизировать.
suPHP или сделать по крону проверку на наличие какого-то файла, сответственно тот файл пишет обычный скрипт, а крон потом затирает его и ребутит.
Спасибо!
Якщо по ssh немає з'єднання, система моніторинга сама перезавантажує машину.
Як бачите, не перезавантажує.
Можливо тому що з'єднання, можна сказати, присутнє, але сервер одразу ж "вiдрубає" усi вхiднi пiдключення по SSH.

pseudo
HO Support
Сообщения: 136
Зарегистрирован: Чт май 20, 2010 10:24
Откуда: kyiv.ua
Контактная информация:

#7 Сообщение pseudo » Ср май 25, 2011 11:17

comfidel писал(а):
Якщо по ssh немає з'єднання, система моніторинга сама перезавантажує машину.
Як бачите, не перезавантажує.
Можливо тому що з'єднання, можна сказати, присутнє, але сервер одразу ж "вiдрубає" усi вхiднi пiдключення по SSH.
Попрацюємо над цим.
Лучше обрез в руках, чем Калашников на складе

0z0n
Сообщения: 39
Зарегистрирован: Пт май 20, 2011 18:50

#8 Сообщение 0z0n » Ср май 25, 2011 18:12

Охохо, у меня минимум 500. Даже не знаю, как верно оптимизировать.
Ну во-первых: я бы посоветовал поставить на отдачу статики nginx

Во-вторых: на вашем сервере, через SSH откройте /etc/httpd/conf/ там лежит httpd.conf (прежде чем редактировать - сделайте бэкап файла!)

Посмотрите параметры для
# prefork MPM
# worker MPM

Хотя как правило httpd работает в режиме prefork.
С ними можно поиграть, подсказки смотрите в гугле :) И подстраивайте значения под себя, смотрите на потребление памяти httpd

В третьих: лично мое мнение, для кэширования PHP поставьте eAccelerator или XCache ну или аналог, на свой вкус.

Ну и последнее: для кэширования mysql запросов поставьте memcached. Правда это будет иметь какой-то толк если ваш движок на сайте поддерживает memcached. Например, WordPress плагином поддерживает такую возможность.

Вроде все :) Если где не прав, думаю опытные товарищи с форума покритикуют и скажут что да как ;)

pseudo
HO Support
Сообщения: 136
Зарегистрирован: Чт май 20, 2010 10:24
Откуда: kyiv.ua
Контактная информация:

#9 Сообщение pseudo » Чт май 26, 2011 01:15

0z0n писал(а):
Охохо, у меня минимум 500. Даже не знаю, как верно оптимизировать.
Ну во-первых: я бы посоветовал поставить на отдачу статики nginx
Хм. Досить розповсюджена думка, хоч і не зовсім вірна. Nginx має сенс, коли статики дофігіщі і кількість запитів до неї відповідна. А от на стандартних сайтах системи "я і мій собака" її мало, та й відвідувачів кіт наплакав. Тим паче, що основна проблема - пам'ять, яку жруть якраз не ті потомки httpd, що роздають статику, а ті, що обробляють срипти сайтів. А от скрипти-штука жодного разу не легенька, ні для проца, ні для пам'яті.
В описаному варіанті юзер не позбавляється потреби в apache, але довішує собі ще й nginx, отримуючи трабли на їх зтику.
Правильніше, IMHO, було б замінити apache на nginx, але це потребує переходу на cgi або fcgi, відповідної конфігурації і, що, мабуть, найгірше, відмови від ispmanager, він поки що працює тільки під apache.
Отакі пиріжки з котятами...
Лучше обрез в руках, чем Калашников на складе

0z0n
Сообщения: 39
Зарегистрирован: Пт май 20, 2011 18:50

#10 Сообщение 0z0n » Чт май 26, 2011 16:13

pseudo писал(а): Хм. Досить розповсюджена думка, хоч і не зовсім вірна. Nginx має сенс, коли статики дофігіщі
Полностью согласен =) Просто я не думаю что VPS может браться под хоумпейдж сверстанный школьником за 5 минут в нотпаде ;)

ЗЫ: дальше топик-стартер может не читать, т.к. информация из разряда размышлизмов ;)

В отношении альтернативы, да помимо перехода на связку nginx+fcgi допустим, можно еще рассматривать lighttpd+fcgi, но это уже достаточно ситуативно и может быть привлекательным для высокопосещаемого ресурса, когда нужно уже что-то придумывать "эдакое" :) В целом с pseudo согласен, хорошая ремарка.

По поводу отказа от ISPmanager, то если честно, у меня это первая вдс где он стоит, а он жрет еще какие-то ресурсы. Так что выгода от него мягко говоря сомнительная. Нужен он может быть только на начальном этапе, или для людей которые ни гуглом, ни яндексом не могут воспользоваться. В остальном от него прока ноль. Имхо, разумеется.

pseudo
HO Support
Сообщения: 136
Зарегистрирован: Чт май 20, 2010 10:24
Откуда: kyiv.ua
Контактная информация:

#11 Сообщение pseudo » Чт май 26, 2011 21:15

0z0n писал(а):По поводу отказа от ISPmanager, то если честно, у меня это первая вдс где он стоит, а он жрет еще какие-то ресурсы. Так что выгода от него мягко говоря сомнительная. Нужен он может быть только на начальном этапе, или для людей которые ни гуглом, ни яндексом не могут воспользоваться. В остальном от него прока ноль. Имхо, разумеется.
Хм. Сучасний споживач погано собі уявляє, що таке unix :) А панелі й так закуплені для всього діапазона vps, кому не треба - можуть знести, діло хазайське :) vps проектувались з розрахунком на стандартного споживача нашої послуги.
Лучше обрез в руках, чем Калашников на складе

comfidel
Сообщения: 37
Зарегистрирован: Ср фев 23, 2011 13:42

#12 Сообщение comfidel » Пт май 27, 2011 03:43

дальше топик-стартер может не читать
Вот ещё чего удумали :D . Интересно же.
А панелі й так закуплені для всього діапазона vps, кому не треба - можуть знести, діло хазайське
До речi, нагадали про важливе питання: чи плануються у найближчий час змiни цiн на послугу VPS? Добре вiдомо, що ho.ua є лiдером по спiввiдношенню цiна/якiсть, але чи довго це буде тривати?
Ну во-первых: я бы посоветовал поставить на отдачу статики nginx
Уже стоит, но на сервере статики практически нет.
Во-вторых: на вашем сервере, через SSH откройте /etc/httpd/conf/ там лежит httpd.conf (прежде чем редактировать - сделайте бэкап файла!)
Уже редактировал неоднократно (игрался с KeepAlive, в частности).
Толку от этого мало.
Зато существенно сократить потребление памяти удалось, выключив лишние расширения PHP. Однако, всё равно жрёт около 500.
Хотя как правило httpd работает в режиме prefork.
Worker не очень дружит с PHP :(.
В третьих: лично мое мнение, для кэширования PHP поставьте eAccelerator или XCache ну или аналог, на свой вкус.

Ну и последнее: для кэширования mysql запросов поставьте memcached. Правда это будет иметь какой-то толк если ваш движок на сайте поддерживает memcached. Например, WordPress плагином поддерживает такую возможность.
Спасибо, попробую.

pseudo
HO Support
Сообщения: 136
Зарегистрирован: Чт май 20, 2010 10:24
Откуда: kyiv.ua
Контактная информация:

#13 Сообщение pseudo » Пт май 27, 2011 11:42

comfidel писал(а):
А панелі й так закуплені для всього діапазона vps, кому не треба - можуть знести, діло хазайське
До речi, нагадали про важливе питання: чи плануються у найближчий час змiни цiн на послугу VPS? Добре вiдомо, що ho.ua є лiдером по спiввiдношенню цiна/якiсть, але чи довго це буде тривати?
ХЗ, поки що змін не планувалося, але то питання до нашого біллінга.
Во-вторых: на вашем сервере, через SSH откройте /etc/httpd/conf/ там лежит httpd.conf (прежде чем редактировать - сделайте бэкап файла!)
Уже редактировал неоднократно (игрался с KeepAlive, в частности).
Толку от этого мало.
Зато существенно сократить потребление памяти удалось, выключив лишние расширения PHP. Однако, всё равно жрёт около 500.
Угу, можна відключити GD, замінити його на imagick, має трошки попустити, але CMS мають підтримувати роботу з imagick замість GD.
Хотя как правило httpd работает в режиме prefork.
Worker не очень дружит с PHP :(.
Дружить у вигляді CGI/FCGI. Перевірено досить відомими і навантаженими ресурсами.
Лучше обрез в руках, чем Калашников на складе

0z0n
Сообщения: 39
Зарегистрирован: Пт май 20, 2011 18:50

#14 Сообщение 0z0n » Пт май 27, 2011 14:09

comfidel писал(а): Уже редактировал неоднократно (игрался с KeepAlive, в частности).
Толку от этого мало.
Попробуйте такие настройки:

Код: Выделить всё

Timeout 35
KeepAlive On
MaxKeepAliveRequests 80
KeepAliveTimeout 2
<IfModule prefork.c>
   StartServers          1
   MinSpareServers       1
   MaxSpareServers       2
   MaxClients           100
   MaxRequestsPerChild 4000
</IfModule>
Только не копипастите код, позаменяйте ваши значения. Предварительно сделайте бэкап вашего httpd.conf

После смены значений не забудьте ребутнуть апач.

0z0n
Сообщения: 39
Зарегистрирован: Пт май 20, 2011 18:50

#15 Сообщение 0z0n » Чт мар 15, 2012 03:16

Якщо по ssh немає з'єднання, система моніторинга сама перезавантажує машину.
А вот и нет :( К сожалению, не перегружает.

Ответить