Red Hats and Logical Volumes & Mongrels

After a few days of setup our new Dell PowerEdge 1950 1U server is starting to come alive. It is a very capable machine with two dual core 3GHz Xeons, 16 GB memory and an effective 300GB of RAID 1 space. Probably more than we need at the moment, but between PLWire, Opencode and Luis’s new painting tools (prototype only), it makes sense to start serving this all from a new machine.

I still haven’t figured out how to manage the RAID. Dell’s documentation on the PERC 5/i controller is pretty much worthless. It all came set up and working, but it’s unclear how we can monitor the drives to know if one actually dies. Some sort of Windows disks came with the machine, but (a) we don’t have Windows here, and (b) I’m not sure if they are even the right thing. Before starting this thing in production I’m tempted to just pop out one of the drives while the machine is running, as was suggested in some of the forums I’ve been reading. Now I understand what Apple is doing so right with its easy, clear graphical admin software for the Xserve RAID.

One positive note here is that I’m learning all about LVM (Logical Volume Management), which allows fairly flexible configuration of virtual partitions. With extra free space on the physical volume group (ie disks), and of the logical volumes can be expanded simply by running umount, lvresize or lvextend, and the mount. Unfortunately it isn’t so easy if you are trying to extend the volume for /usr, since the mount is usually being used by a bunch of processes and can’t be umounted. So I just created a new 120GB logical volume with mount point /plw for our databases and web apps.

I’m also getting to know mysql more than I ever expected. I have to admit that it really isn’t so horrible a mess as I thought. The magical moment came when I started working directly with the /etc/my.conf file, which acts as the default mysql configuration file. There are still a ton of flags and options that I need to go through to optimize it. I had also never setup linux startup processes, so it was a relief when it turned out that it really wasn’t all that hard using chkconfig.

We’re going to make this mainly a rails production-level machine, the goal being a Rails/Mongrel/Pound/Apache setup, possible with Capistrano for deployment if I can figure that one out. I already have a test version of PLWire running on there, and even in vanilla development mode it seems pretty speedy, much better than the OSX Server machine. Kelly and I had a similar experience moving OPENSTUDIO to an Ubuntu machine earlier this year, so I’m not all that surprised.

Leave a Reply