+ Post New Thread
Results 1 to 5 of 5
How do you do....it? Thread, general server setup help in Technical; Hey all, I'm looking for advice on the best way to set up a new pair of servers our school ...
  1. #1

    Join Date
    Jun 2008
    Posts
    105
    Thank Post
    33
    Thanked 3 Times in 3 Posts
    Rep Power
    12

    Question general server setup help

    Hey all,

    I'm looking for advice on the best way to set up a new pair of servers our school just purchased, but first, here's what I plan to run on them:

    - postfix / amavis / clamav / (spam assassin or dspam) for mail relays to our Exchange box
    - Moodle 2.0
    - Cando (CanDo: Virginia's Online Competency-Tracking System)
    - Apache and other basic apps
    - Nagios

    Limitations:
    Once I get the mail relays and Moodle up and into production, these two services can never be down. (mail relay - obvious, Moodle - used for online courses)

    My thought was to run these two servers in a cluster-type setup, so that I can restart them independently and still have services up. Does anyone have any suggestions on the best way to do this with a minimal amount of management? DRDB comes to mind.

    I'm currently running two separate physical boxes for mail relays and am pretty comfortable with it - for instance, I know if an apt-get upgrade breaks one, I have the other to fall back onto. I'm a bit leery about (basically) mirroring these two new boxes.

    Another possibility is to run each of these services in a VM on these servers. Thoughts? Feasible? Beneficial? Off hand it seems that it would keep my workload the same as it is now, as I'm running a physical box for all these services now, instead of consolidating them to one.

    Thanks for any suggestions.

    Damian

  2. #2
    cpjitservices's Avatar
    Join Date
    Jul 2010
    Location
    East Yorkshire
    Posts
    2,152
    Thank Post
    439
    Thanked 236 Times in 215 Posts
    Blog Entries
    2
    Rep Power
    68
    well if you build a linux box up as a web server (Apache, Mysql, PHP etc etc) you will be able to run moodle on it - most places I think just use a Linux based webserver to run Moodle, you can also run a Mail server on a linux server - no licensing it's completely free and you could even run Mail & Linux on the same server, as for the other services as long as you have some oober amounts of RAM I don't see a problem in doing all this in one machine with VM's installed and running these other services

    Hope this helps

  3. #3

    dhicks's Avatar
    Join Date
    Aug 2005
    Location
    Knightsbridge
    Posts
    5,493
    Thank Post
    1,184
    Thanked 745 Times in 647 Posts
    Rep Power
    228
    Quote Originally Posted by LCPSWolf View Post
    My thought was to run these two servers in a cluster-type setup, so that I can restart them independently and still have services up. Does anyone have any suggestions on the best way to do this with a minimal amount of management? DRDB comes to mind.
    I'd run each service on its own dedicated VM with its own dedicated DRBD-mirrored logical volume, i.e. run DRBD on top of LVM on top of RAID on each server. This way you can assign a separate IP address to each DRBD volume (if you have multiple network interfaces in your servers), letting you use more bandwidth than one network connection can provide on its own. Using one large mirrored volume communicating via bonded NICs isn't as efficient - only one link will wind up being used, even if you have four NICs in the bonded interface, due to limitations in the bonding protocol.

    Another possibility is to run each of these services in a VM on these servers.
    I use Xen for virtualisation - not XenServer, but the free version that comes built in to Debian (amongst other distributions). Xen can run Linux VMs very effifiently in paravirtualised mode, i.e. where the VM knows it's being run as a VM and can make adjustments accordingly. I think the resources overhead for a paravirtulised Xen VM is something like 3%. I currently have a test server at home with a 30 Atom-based motherboard with no hardware virtualisation support and 2GB of RAM to run VMs - if you're running Linux-based virtual machines anyway, Xen might be a good choice.

  4. Thanks to dhicks from:

    LCPSWolf (14th March 2011)

  5. #4

    Join Date
    Jun 2008
    Posts
    105
    Thank Post
    33
    Thanked 3 Times in 3 Posts
    Rep Power
    12

    Talking

    dhicks,

    Quote Originally Posted by dhicks View Post
    I'd run each service on its own dedicated VM
    Why? Just to keep them from possibly interfering with each other?

    Using one large mirrored volume communicating via bonded NICs isn't as efficient - only one link will wind up being used, even if you have four NICs in the bonded interface, due to limitations in the bonding protocol.
    I'm just now exploring bonded NIC's - each server has 2. Are you saying that even if I bond them, I won't get the full 2Gb of bandwidth?

    run DRBD on top of LVM on top of RAID on each server.
    I've never implemented DRBD (as you can probably tell Are there any good references you would suggest? I've seen the Ubuntu Server Guide, for instance - if that's the best to go off of, I'll give it a shot.

    When you talk about mirroring a logical volume, are you saying to have all the mappings mirrored (/, /etc, /var and so on)...the entire machine, right?

    I use Xen for virtualisation
    Good to know - I looked up some documentation on this and it looks intense but something I'm willing to try. Do you recommend doing this in on a server without a GUI? I'm trying to keep it without one just because..I have a feeling my hardware would allow me to run it if needed.

    In general, though, I'm still puzzled by the recommendation to go with VM's. I assume it would also give me the option to "spin up" a new Linux box if I needed to play with something rather than pull out an older computer from storage. Are snapshots also an option with Xen / VM's? If so, that could be a huge advantage in recovery.

    Thanks!

  6. #5

    dhicks's Avatar
    Join Date
    Aug 2005
    Location
    Knightsbridge
    Posts
    5,493
    Thank Post
    1,184
    Thanked 745 Times in 647 Posts
    Rep Power
    228
    Quote Originally Posted by LCPSWolf View Post
    Why? Just to keep them from possibly interfering with each other?
    Yes, pretty much - one VM to do one task, then each VM is pretty much a stand-alone "appliance". It's just less stuff to intefere with each other, and if you need to take one server down to sort something out you don't affect other services. Xen's overheads are low, so you can afford to plaster as many VMs as you like around.

    I'm just now exploring bonded NIC's - each server has 2. Are you saying that even if I bond them, I won't get the full 2Gb of bandwidth?
    If I understand how port bonding works then yes, that's the problem. A single point-to-point TCP/IP connection between two IP addresses can't use more than one port's worth of bandwidth. This is something to do with timing issues as data turns up at the destination IP address, although I'm a bit vauge on the exact details - if anyone can fill us in, it'd be much appreciated.

    Are there any good references you would suggest?
    I found DRBD's own documentation to be very clear and well written.

    When you talk about mirroring a logical volume, are you saying to have all the mappings mirrored (/, /etc, /var and so on)...the entire machine, right?
    A logical volume, as in a device provided in /dev by LVM. Linux's disk management is implemented in layers, with each layer built on the previous one. Disks are known as "block devices". First you have your physical disks, generally seen in /dev as /dev/sda, /dev/sdb, etc. You might then build those up into a software RAID array using mdadm (you might have a hardware RAID controller, of course, in which case you'll probably just see one /dev/sdx device), so you'll then have an mdadm device in /dev, say /dev/md0. On top of that RAID device you can then set up an LVM volume group (maybe called XenVG, for example), giving you a flexible way to create and resize block devices - these would appear as /dev/XenVG/server001, /dev/XenVG/server002, etc. You would then run DRBD on top of each of those LVM block devices, so for each LVM block device there would be a matching DRBD device, say /dev/drbd1, /dev/drbd2, etc. Finally, you can then use those /dev/drbd block devices as VM harddrives - in each VM's configuration, assign it whichever disk(s) you want it to use.

    You are effectly mirroring an entire disk, not just the file system - your block device doesn't have to have a filesystem on if you don't want, you could mirror swap space (although, in practice, that wouldn't be an efficient way of doing things). You could swap the layers about, mirroring physical disks or RAID devices with DRBD before splitting them up with LVM, but as discussed above that wouldn't make for very efficient communication with multiple NICs.

    Do you recommend doing this in on a server without a GUI?
    I do all my Xen setups from a commandline-only server, although I'm putting together a web-based utility to help set up volumes and so forth as it's several steps to remember and easy to miss one out.

    Are snapshots also an option with Xen / VM's?
    Snapshots are a feature of LVM, that's why you set up LVM volumes to run DRBD / VMs on top of. Linux's implementation of logical volume snapshots results in a performance hit while the snapshot is in place, so snapshots aren't a good option for backups by themselves, i.e. you can't take a backup simply by setting a snapshot on a volume and carrying on, your machine will eventually slow to a crawl. You need to set a snapshot at a low-useage time, copy the data out of the snapshot, then un-set the snapshot.

SHARE:
+ Post New Thread

Similar Threads

  1. New server setup
    By Matthew1985 in forum Hardware
    Replies: 6
    Last Post: 28th March 2010, 06:45 PM
  2. Server disk setup
    By Simcfc73 in forum Hardware
    Replies: 5
    Last Post: 26th January 2010, 08:31 PM
  3. New Server Setup
    By Maximus in forum Wireless Networks
    Replies: 10
    Last Post: 2nd June 2008, 10:29 PM
  4. Replies: 24
    Last Post: 26th May 2008, 04:57 PM
  5. nas server setup
    By PEO in forum How do you do....it?
    Replies: 51
    Last Post: 7th April 2008, 05:10 PM

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •