Page 1 of 1

Plesk for Linux in fault tolerant environment

Posted: Tue Apr 24, 2007 7:15 am
by lennu
Hello Scott and everyone

I need some help for designing and actually setting up a fault tolerant Plesk Linux system. I'm planning on setting up atleast one more server but don't know how to do it with minimal downtime and future scalability. Current system runs on single server and has 300+ domains on it.

Picking the two out of three would be Better and Cheaper.

What would be the best solution for us? Should we go for virtualized servers on one higher class hardware or go for two or more dedicated servers? Should I use Plesk Expand with dedicated email server or two independent Plesk installations somehow?

Thanks,
Lennu

Posted: Tue Apr 24, 2007 10:16 am
by scott
Theres more than one way to do it. The key here is that no matter what design you go with, you'll need more than 2 systems. The most simple design would be to use 2 vmware/xen/kvm/virtuozzo servers tied together to either a SAN, or an NFS/GFS cluster. This is a virtualized hot-spare design, where the alternate virutal hosting server would activate the vserver in the event of a failure. This is a high availablity design, at the cost of performance

On the opposite end of the spectrum would be an openssi cluster (http://www.openssi.org), which would involve at least 4 systems, and normally 8-16. This acts a single virtual server, spanning multiple physical servers. It is both a high availablity, and high performance design.

Some advice needed

Posted: Sat Aug 11, 2007 5:44 am
by inutero
you mention OpenSSI in your previous post.

I've been looking into this for a couple of weeks and have now set up two nodes.

I then thought of a potential problem -

When conguring Plesk, i have to put my WAN address in DNS for it to work. But with the cluster, surely i would need to use the virtual IP i created for the cluster for it to work. If so, how do i go about putting a LAN, or virtual ip in Plesk and it actually picking it up in the outside world?

Have you setup Plesk in an OpenSSI cluster? If so, is this the 'best' solution for redundancy in Plesk?

Any help would be highly appreciated.

Posted: Sat Aug 11, 2007 6:29 am
by scott
yeah youve got to use the virtual IP. My virtual IP was my routable internet IP. Ive built 8 node clusters with it (on FC3). Havent done one since that though, it looks to me like the project is kind of in limbo. Otherwise I like it a lot as far as high performance/HA went.

Posted: Sat Aug 11, 2007 10:05 pm
by faris
If you want the middle ground...

Just two servers with virtuozzo (or whatever) on each.

Put half your domains in a VPS (or multiple VPSes) on one, half on the other.

Backup (Vitruozzo has built-in tools for this) the VPSes from one machine onto the other.

In the event one machine does go down, you fire up the backup on the other machine and off you go! Downtime minimal, loss of data = time between failure and last backup, maximum 24 hours and of course 12 hours on average.

Of course both machines will need RAID hard disks. Mirror for "speed" (though RAID 10 is best of all for speed and reliability), RAID 5 for capacity.

Redundant PSUs on both machines would help too.

24/7 on-site support is also useful.

Basically that's what we are doing (we opted for RAID 5), only we don't have the second machine up and running yet as it needs a hard disk and ideally upgrade first. At the moment it is just being used for backups, with no Virtuozzo installed.

Faris.

Cheers

Posted: Sun Aug 12, 2007 3:19 pm
by inutero
Thanks to both of you for your replies.

I would like to down the OpenSSI route if possible as i like the expandability of it - if we need to grow, we can just add another node..

My issue is with the Virtual IP though. I havent been able to setup Plesk on a local IP yet. Plesk seems to want to set it up on there, but when we did this, the outside world couldn't seem to see us.

We resolved this by putting our WAN IP (given to us by our ISP) in instead. But surely this is not how it is supposed to be.

I appreciate that this is not a Plesk forum, but you guys seem to have done this before so i'm hoping you can shed some light on it for me.

What am i doing wrong, is there something i need to setup in Plesk so i can use my local (or virtual IP)?

Thanks in advance


Mike

Posted: Mon Aug 13, 2007 9:41 am
by scott
That was the one limitation I ran into with OpenSSI, you can only use IP's like you're doing right now. Ergo, you're restricted to the single IP on the system.

NAT

Posted: Mon Aug 13, 2007 11:10 am
by inutero
OK, but surely i will not be able to get Plesk to work with a Virtual IP.

As i said, i haven't been able to get it working with my local IP supplied by my router via NAT. I have had to use my WAN address.

I found this knowledge base article which appears to be the same issue i have. (http://kb.swsoft.com/en/1984)

They say you HAVE to use your WAN address. If this is the case, how can you get it working use a Virtual IP?

I eagerly await your response....


Cheers
Mike

Posted: Mon Aug 13, 2007 3:46 pm
by scott
You can only use 1 IP with it, everything we did was name based.

Minimal

Posted: Mon Dec 03, 2007 12:49 am
by npavlidis
OK... this is just an idea.. following faris thoughts

2 Dedicated Servers (each has 6 usable IPs)

1 IP for the host 5 for the guest

Server 1 Runs:
SSH
VMware Server
FTP(available only from vmware IPs)

ns.primarydomain.com on server1
ns2.primarydomain.com on server2

1. Guest backs up data and sends them via ftp to the host
2. Host sends data to Server 2 Host

Server 2 Runs:
SSH
VMware Server
FTP (available only from its own vmware guests and the primary Host)

Initially Server 1 VMware Host is cloned to Server 2

3.Server 2 guest cronjob to retrieve from local FTP and restore data

In case of failure ns.primarydomain.com is not working so ns2 resolves the new ips and the 2nd Server is used

Pros:
1.If the idea is correct you have a secondary machine ready to run with little effort and little data loss (Gbit data traffic between the servers allows per day backup)
2.Patches can be applied in the secondary server, tested and then used in the production system
...any other you can think (do tell)

Cons:
surprise me :P

Posted: Mon Dec 03, 2007 8:39 am
by scott
you could also use a clustering file system between the two, like GFS. That way you'd have nearly real-time updates of data between them.

Posted: Mon Dec 03, 2007 9:59 am
by npavlidis
Yes but is GFS going to be working ok with the vmware machines?
and also

How am i going to implement GFS? from my understanding when you deploying a cluster you have 2 clients and a server which runs the GFS.

In this 2 machine setup, how is the GFS going to be setup and how is it going to affect the 2ndary machine in case of failure?

Thank you

cheap rsync mirror

Posted: Mon Dec 10, 2007 2:22 pm
by danami
I've actually set up a pretty cheap mirror of one of my plesk boxes.

Basically I rsync the whole server (excluding network interface configs and mysql data directories, etc).

Since you can't reliably rsync mysql I have mysql running using mysql replication as a slave on the mirror box.

So far everything seems to be running well. Rsync runs about every 10 min and mysql replication works great. All the data transfers are using the internal gigabit network cards.

Now I just need to write some more bash scripts to do monitoring / automate promoting the slave to master / and vice versa.

For some quick guides I recommend looking at:

Mirroring with rsync
http://www.howtoforge.com/mirroring_with_rsync

Live backups with MySQL using Replication
http://www.onlamp.com/pub/a/onlamp/2005 ... QLian.html


Also on another note.. I would stay for away from PLESK EXPAND... that whole product line is a total piece of crap.... bugs galore! (I actually have a bunch of licenses ... we threw the whole thing away!)