Модераторы: powerfox, ZeeLax
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с зависанием сервера, Проблема с зависанием сервера 
:(
    Опции темы
comhunt
Дата 17.8.2009, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 20.3.2009

Репутация: нет
Всего: нет



Проблема рассматриваемая в другой ветке форума относится и к этой ветке.
http://forum.vingrad.ru/forum/topic-269858...а-free-bsd.html

На сервере установлена FREE BSD, Nginx, apache 2.
Размер оперативной памяти 1ГБ, максимальный размер swap файла 2ГБ
Происходит следующее: при переполнении файлы вешается сервер, пропадает доступ к серверу по SSH и требуется перезагружать сервер.
Есть ли возможность избежать данной проблемы путем периодической очистки памяти или другим способом? 

Сайт написан на PERL. Я так понимаю происходит следующее: При определенной нагрузке на сервер в памяти растет кол-во дочерних процессов апача HTTPD или объем занимаемых ими памяти. Служба поддержки отписывается, что как только переполняется свап файл то вешается nginx. Но опять таки точно причину я не могу сказать. По идеи надо смотреть логи, но проблема в том что я в этом мало что понимаю. 
PM MAIL   Вверх
ZeeLax
Дата 17.8.2009, 16:37 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 4388
Регистрация: 20.8.2006
Где: Алма-Ата

Репутация: 7
Всего: 88



Мыслите верно. Смотрите логи. Лежат в /var/log


--------------------
Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none.
— Doug Larson
PM MAIL WWW ICQ Skype Jabber   Вверх
bilbobagginz
Дата 17.8.2009, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



Цитата(comhunt @  17.8.2009,  11:28 Найти цитируемый пост)
Сайт написан на PERL. Я так понимаю происходит следующее: При определенной нагрузке на сервер в памяти растет кол-во дочерних процессов апача HTTPD или объем занимаемых ими памяти. Служба поддержки отписывается, что как только переполняется свап файл то вешается nginx. Но опять таки точно причину я не могу сказать. По идеи надо смотреть логи, но проблема в том что я в этом мало что понимаю.  

надо только определиться с тем, кто укушивает больше и больше памяти: апачик или Engine-X.
можно наваять простенький скриптец, который будет измерять сколько памяти кушается только процессами apache/nginx.
это даст вам более ясную картину.

потом попробуйте с этим бороться посредством установления точного сценария переполнения.

Вероятно и то, что вы пытаетесь нести на этом сервере нагрузку более той, которую он вообще принципиально может нести.

в принципе существует какая-то максимальная нагрузка, которую любой конкретный сервер (т.е. сервер с конкретной моделью процессора и величиной/скоростью памяти) может нести беззаботно.
когда нагрузка подкрадывается к этому максимуму, или даже превышает его, ессно начинаются 
"4 Г" сисадмина: Грабли, Глюки, Головная боль и Геморрой.

Удачи.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
comhunt
Дата 19.8.2009, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 20.3.2009

Репутация: нет
Всего: нет



>можно наваять простенький скриптец, который будет измерять сколько памяти кушается только процессами apache/nginx.
это даст вам более ясную картину.

А где можно посмотреть пример такого скрипта? И как внутри перл-сценария измерить сколько памяти кушается процессами?


>потом попробуйте с этим бороться посредством установления точного сценария переполнения.

Где и какими средствами необходимо реализовывать этот сценарий?
PM MAIL   Вверх
bilbobagginz
Дата 20.8.2009, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



Цитата(comhunt @  19.8.2009,  11:16 Найти цитируемый пост)
А где можно посмотреть пример такого скрипта? И как внутри перл-сценария измерить сколько памяти кушается процессами?

есть команды ps и top.
в любом яп сисадминского арсенала - bash/csh/perl/python/ruby есть средства доступа к этим данным.
скрипт должен делать запрос в "таблицу процессов"
  • либо тупо запуском ps с нужными аргументами
  • либо средствами API языка
в результате выбирать нужные процессы, и собирать нужные вам данные (RSS память, время процессора, время запуска, подсчёт сколько процессов найденного имени были пойманы и т.д.)
думаю не помешает узнать температуры компонентов компутера в это же время (их можно считать с /proc/acpi/therm_zone/... )

данный скрипт должен реализовать 1 цикл сбора данных, и включать достаточно точную точку времени сбора.
а циклический сбор будет реализован напр. посредством cron.
можно сделать так, чтобы каждый запуск в начале узнавал load average, и на основе него собирал N циклов каждые T милли/микро секунд,
в зависимости от этого load-average- чем оно выше, тем чаще.

a результат можно форматировать и скрамливать его напр. cactii.

насчёт логов - вам советуют правильно, их тоже нужно отследить на предмет подозрительных явлений...


Это сообщение отредактировал(а) bilbobagginz - 20.8.2009, 08:26


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Администрирование"
ZeeLax
Imple
nerezus
Этот форум предназначен для решения вопросов по администрации *n?x-систем, в частности по настройке сложных сетей и обслуживанию серверного оборудования.

  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование *NIX систем | Следующая тема »


 




[ Время генерации скрипта: 0.0448 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.