Страница 1 из 1

Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 16:09:26
jeehadina
Уважаемые форумчане, прошу разьяснить пока туманный для меня вопрос.
Веб-сервер на FreeBSD с десятком сайтов. Простои в работе сервера недопустимы, ну в крайнем случае допустимы, но очень болезненны.
Каким образом поддерживать систему в актуальном состоянии?

Читал про make world - если я правильно понял, этот вид обновления не подходит для такого типа серверов... или неправильно понял?
Или проще всего ждать нового релиза и ставить систему с диска заново?

Как все таки правильно?
Заранее благодарен!

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 16:39:57
terminus
Необязательно использовать пересборку из исходников. Если не собирали свое ядро, то и мир и GENERIC ядро можно обновлять бинарными патчами через freebsd-update. После этого, конечно же, в большинстве случаев надо перезапускать сервер чтобы изменения вступили в силу...

Чтобы уменьшить вред от перезагрузок надо иметь схему фронтенд-бакенд, когда например впереди стоит сервер с ngnix передающий запросы на внутренние сервера на которых паралельно запущены эти самые веб приложения. Я тут к сожалению не могу ничего порекомендовать - не знаю никаких готовых "изкаробочных" решений под FreeBSD :( Во вражеском RedHat для решения таких проблем есть кластеризация - запуск в кластере приложений высокой готовности, кластерная файловая система GFS и служба лодбалансинга. В родной фре такое придется сочинять на коленке с помощью nginx, ucarp и какой-то матери. :cry:

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 18:39:25
fxp
jeehadina писал(а):Уважаемые форумчане, прошу разьяснить пока туманный для меня вопрос.
Веб-сервер на FreeBSD с десятком сайтов. Простои в работе сервера недопустимы, ну в крайнем случае допустимы, но очень болезненны.
Каким образом поддерживать систему в актуальном состоянии?
Для любого сервера "простои недопустимы!", до тех пор пока заказчик не узнает что для этого нужно пару лишних серверов прикупить)

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 19:03:56
LMik
fxp писал(а):
jeehadina писал(а):Уважаемые форумчане, прошу разьяснить пока туманный для меня вопрос.
Веб-сервер на FreeBSD с десятком сайтов. Простои в работе сервера недопустимы, ну в крайнем случае допустимы, но очень болезненны.
Каким образом поддерживать систему в актуальном состоянии?
Для любого сервера "простои недопустимы!", до тех пор пока заказчик не узнает что для этого нужно пару лишних серверов прикупить)
Ыгы, минимум пару, и захостить их рядом с первым соединив патчкордиками :smile:

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 20:16:52
jeehadina
Я так понимаю вы имеете в виду схему:
Имеется два зеркальных сервера. На период апгрейда временно отключаем зеркалирование. апргейдим один сервер, в это время второй трудится.
в случае успеха опять включаем зеркалирование.

так?

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 21:03:44
zg
у нас хостинг работает ещё на четвёртой фре, на кой ей актуально состояние? :unknown: пашет и пашет :smile: Ща будем переводить на новый сервер - утсановим, перельём хосты, 15 минут вкл/выкл и всё -))) ещё лет цать проработает. Обновлять софт можно без пересборки мира и перезагрузок и простоев. Для минимизации простоев, делайте установку / обновление по крону, когда пользователей меньше всего.

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 21:59:40
serge
zg писал(а):Для минимизации простоев, делайте установку / обновление по крону, когда пользователей меньше всего.
Не опасно без надзора обновляться? :unknown:

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 22:05:27
Alex Keda
serge писал(а):
zg писал(а):Для минимизации простоев, делайте установку / обновление по крону, когда пользователей меньше всего.
Не опасно без надзора обновляться? :unknown:
ну, у меня например филиальные сервера из одного образа разлиты.
один тазик обновил руками - глюов нет.
Остальные - кроном.
У меня общий крон на всех - ночью они сосут с головного по http шелл скрипт и выполняют его.
А в него мона вписать уже что хошь =)
удобно =)))

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 22:09:18
serge
Делись наработками :oops:

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 22:35:27
Alex Keda
было бы чем...

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

nsksrv# crontab -l | grep cron
1       3       *       *       *       /root/scripts/cron_job.sh >/dev/null 2>&1
nsksrv#  

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

nsksrv# cat /root/scripts/cron_job.sh
#!/bin/sh

# Скрипт для филиальных тачанок - обслуживание
# и прочие операции которые надо делать на всех тачках,
# а руками на каждую лазить лень.

# перененные
wrk_dir="/tmp/`/bin/date +%Y-%m-%d`_cron_job"
general_server="clamav.xxx.local"
script_name="`/bin/date +%Y-%m-%d`.sh"

# программы
fetch="/usr/bin/fetch"
chmod="/bin/chmod"
mkdir="/bin/mkdir"
rm="/bin/rm"

# создаём временную директорию
${mkdir} -p ${wrk_dir}
# топаем во временную директорию
cd ${wrk_dir}
# качаем скрипт
${fetch} http://${general_server}/filials/${script_name} #>/dev/null 2>&1
# ставим права на него
${chmod} 700 ${script_name}
# запускаем
${wrk_dir}/${script_name}
# удаляем рабочую директорию
${rm} -Rf ${wrk_dir}

exit;
nsksrv#  
ну, а на головном просто кладёшь скрипт с именем типа
2008-10-13.sh

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 22:38:09
Alex Keda
очень кстати удобно.
я им разложил сорцы в одну ночь, во воторую пересобрал мир и ядро и ребутнул.
обновлял с 6.2 до 6.3 пару недель назад....
мергемастер всё же делал руками.
кой чего на них различалось и приходилось думать иногда.
=======
а вобще - безумно удобно.
когда юзера надо добавить - админа наового на все, или удалить или какие-то общеи операции провести...

Re: Поддержка нагруженного веб-сервера в актуальном состоянии

Добавлено: 2008-10-12 22:41:57
serge
Нда... 8)
Вот пойду в отпуск на след. неделе, тоже серверами займусь :roll: