This page documents my attempt to install Seaside as loadbalanced configuration with multiple squeak images under OpenVZ
# download template root@mljac:~# cd /var/lib/vz/template/cache root@mljac:~# wget http://download.openvz.org/template/precreated/contrib/debian-5.0-i386-minimal.tar.gz root@mljac:~# vzctl create 1001 --ostemplate debian-5.0-i386-minimal --ipadd 10.0.0.1 --hostname gw.rot13.org # configure root@mljac:~# vzctl set 1011 --nameserver 192.168.1.2 --save
Use something like vz-nat.sh to configure NAT on your OpenVZ machine.
# dependencies root@seaside:/srv# apt-get install unzip root@seaside:/srv# wget -nd -nH http://www.seaside.st/distributions/Seaside-2.8.3.app.zip root@seaside:/srv# unzip Seaside-2.8.3.app.zip Archive: Seaside-2.8.3.app.zip root@seaside:/srv# ln -s Seaside-2.8-578.app seaside Adding new group `squeak' (1000) ... Adding new user `squeak' (1000) with group `squeak' ... Not creating home directory `/home/squeak'. root@seaside:/srv# chown -R squeak:squeak Seaside-2.8-578.app/
Seaside.sh - use something like this script to start headless squeak.
Actual -headless option didn't seem to work for me
Contents: [seaside_cluster]
|
dpavlin@llin:/rest/unix/www$ wget http://sysoev.ru/nginx/nginx-0.7.31.tar.gz dpavlin@llin:/rest/unix/www$ tar tvfz nginx-0.7.31.tar.gz dpavlin@llin:/rest/unix/www/nginx-0.7.31$ ./configure --with-http_ssl_module --prefix=/srv/nginx make sudo checkinstall
root@seaside:~# dpkg -i nginx_0.7.31-1_i386.deb Selecting previously deselected package nginx. (Reading database ... 8333 files and directories currently installed.) Unpacking nginx (from nginx_0.7.31-1_i386.deb) ... Setting up nginx (0.7.31-1) ... root@seaside:~# cd /srv/nginx/
fix extension
wiki.codemongers.com/NginxHttpUpstreamRequestHashModule
patch -p0 < ../nginx_upstream_hash/nginx.patch
nginx_upstream_hash-0.3.tar.gz wiki.codemongers.com/NginxHttpUpstreamRequestHashModule
upstream nginx-0.7.31
We will be using monit, light-weight process monitor written in C to monitor servers on our virtual machine. It will do startup of our services, monitor load and report alerts.
For it to work, we need to have a script which will start/stop squeak.
Use following configuration: monitrc
Also install following two shells scripts in `/srv' so that monit can call them to start or stop services
# check syntax root@seaside:~# /etc/init.d/monit syntax Control file syntax OK
And you are rady to go.
open http://hostname:8080/seaside/ to test seaside
{weblog_list: }