s4f 29.03.2011 11:14
Есть вопрос! — Centos - виртуализация сайта.
Всем привет.Есть тестовый веб-сервер Centos 5.5 на котором периодически работают люди с сайтами.
И есть на этом сервере определенный портал, который необходимо спрятать от вечных перезапусков httpd/mysqld
Возможно ли это сделать силами самого apache или, например, apache + nginx?
Или может быть проще/лучше поднять, например, openVz, или вообще, какойнить-будь virtualbox.
Решение:
http: вешаем необходимый виртуальный хост на другой ip/port.
mysql: поднимаем второй сервер (mysqld_multi --example)
Сервер находится в локальной сети, на определенные сервисы - свои белые ip/port.
Могу присвоить ему (серверу) еще n-ое количество адресов из разряда 192.168.*.*
Вопрос следующий: как потом искать и киллить процессы httpd на разных адресах?
Могу присвоить ему (серверу) еще n-ое количество адресов из разряда 192.168.*.*
Вопрос следующий: как потом искать и киллить процессы httpd на разных адресах?
нашел: netstat --program | grep httpd.
спасибо!
и за наводку на mysqld_multi.
спасибо!
и за наводку на mysqld_multi.
Вот наш скрипт деплоя:
Апач установлен в домашнюю папку, как можно понять из скрипта. Висит на специфическом порту, в nginx'е есть для него правило.
А вообще дома у меня OpenVZ, но это потому, что мне надо держать разные версии апачей/мусклов и разные библиотеки. А ещё потому, что рута к разным апачам/мусклам надо давать разным людям. В общем не факт, что для Вас оно того стоит, но и обратное тоже не факт.
$ cat ~/deploy/libs
#!/bin/bash
# source
SRC_LIB="$HOME/svn/*"
# destination
DST_LIB="$HOME/lib/"
# check config
$HOME/httpd/bin/httpd -f "$HOME/httpd/conf/httpd.conf" -t 2> /dev/null
if < ! $? == 0 >; then
echo "apache config test failed; fix problem and rerun deploy"
exit 1
fi
# stop apache
$HOME/httpd/bin/httpd -f "$HOME/httpd/conf/httpd.conf" -k stop 2> /dev/null
sleep 1
# copy librares and script
rm -rf $DST_LIB
mkdir $DST_LIB
cp -Rf $SRC_LIB $DST_LIB
# start apache
$HOME/httpd/bin/httpd -f "$HOME/httpd/conf/httpd.conf" -k start 2> /dev/null
echo "OK"
exit
Апач установлен в домашнюю папку, как можно понять из скрипта. Висит на специфическом порту, в nginx'е есть для него правило.
А вообще дома у меня OpenVZ, но это потому, что мне надо держать разные версии апачей/мусклов и разные библиотеки. А ещё потому, что рута к разным апачам/мусклам надо давать разным людям. В общем не факт, что для Вас оно того стоит, но и обратное тоже не факт.
Можно использовать для разработки httpd и mysql на других портах и перезапускать только эти истансы.
OpenVZ будет надёжнее, но, я так понимаю, нужен ещё один ip адрес или придётся шаманить. А virtualbox — хз, я слабо представляю, как его запускать для серверного применения.