Tuesday, December 28, 2010

Linux Centos 5.x on PowerEdge 2950 with PERC 5/e and Dell MD3000

This is my second Dell MD3000 SAS setup pre-production test. For background and comparison, I resurrected the testing info from a very similar setup with CentOS 5.2 back in late 2008 early 2009. Here is the (basic/limited) information from that time frame:

Dell PowerEdge 2950 II, BIOS version 2.5.0, 2x dual core Intel(R) Xeon(R) CPU dual core @ 3.00GHz, 16GB RAM, Dell MD3000 (Firmware 07.35.22.60, mirrorCacheEnabled=FALSE) with PERC 5/E (non cache) model UCS-50, md RAID 0 using EXT3 (-b 4096 -E stride=128), SAS drive setup was 2 sets of 5x 15k 450GB (Dell hardware) RAID 5 running kernel 2.6.18-92.1.22.el5 under CentOS 5.2.

Obviously, based on some of the details above, I was testing the effects of several very different changes (not at the same time). For starters, the MD3000 was originally tested with the old version 6.x of the firmware, MD3000 controller changes, ext3 stride changes, md chunk size performance, etc. I will generally just say that there are LOTS of things will affect performance. But the fastest (system disk performance) setup for that time frame was using both controllers (with md RAID 0) and any combination of MD3000 drive setup. That is 2 LUNS each assigned to a different MD3000 controller. I choose 2 MD3000 RAID 5 volumes and md RAID 0 : effectively RAID 50. Please don't hassle me on the RAID 5 is not good for X database or Y program. Suffice it to say that the disk space -vs- performance -vs- cost question lead me to this choice. And these are the average numbers of several runs:

(iozone test)
sync ; iozone -s 20480m -r 64 -i 0 -i 1 -t 1 -b kernel-2.6.18-92.1.22test##.xls
  Initial write  224179.00
        Rewrite   205363.05
           Read     350508.81
        Re-read   355806.31

(generic hdparm test)
sync ; hdparm -Tt /dev/md0
Timing cached reads:   2976 MB in  2.00 seconds = 1487.69 MB/sec
Timing buffered disk reads:  892 MB in  3.00 seconds = 296.90 MB/sec

(generic raw read speed test)
sync ; time dd if=/dev/md0 of=/dev/null bs=1M count=20480
21474836480 bytes (21 GB) copied, 66.9784 seconds, 321 MB/s
real    1m7.042s

Sadly, I do not have a spare R710 at the moment or I would test with it...

Current test setup is:
PowerEdge 2950, BIOS Version 2.6.1, 2x dual core Intel(R) Xeon(R) CPU dual core @ 3.00GHz, 16GB RAM, , Dell MD3000 (Firmware 07.35.22.60, mirrorCacheEnabled=FALSE) with PERC 5/E (non cache) model UCS-50, md RAID 0 using EXT3 (-b 4096 -E stride=128), latest drive firmware, SAS drive setup was 2 sets of 5x 15k 450GB (Dell hardware) RAID 5 running kernel-2.6.18-194.26.1.el5 x86_64 under CentOS 5.5 with Dell's linuxrdac-09.03.0C06.0234 and mptlinux-4.00.38.02-3:

sync ; iozone -s 20480m -r 64 -i 0 -i 1 -t 1 -b kernel-2.6.18-194.26.1test##.xls
  Initial write  211298.00
        Rewrite   277691.25
           Read     453337.34
        Re-read   480531.75

sync ; hdparm -Tt /dev/md0

 Timing cached reads:   2900 MB in  2.00 seconds = 1449.77 MB/sec
 Timing buffered disk reads:  926 MB in  3.00 seconds = 308.26 MB/sec

sync ; time dd if=/dev/md0 of=/dev/null bs=1M count=20480
21474836480 bytes (21 GB) copied, 68.8348 seconds, 312 MB/s
real    1m8.906s

One year and 3 RHEL/CentOS 5 updates (5.3, 5.4, 5.5) and it's mostly positive with the stock kernel.

Now I'm testing with the newest kernel 2.6.36-2.el5.elrepo (without the dell kernel module changes) mainline kernel tracker from the GREAT folks at ElRepo. Nice, the mainline kernel offers modest improvements from the stock CentOS 5.5 kernel:

sync ; iozone -s 20480m -r 64 -i 0 -i 1 -t 1 -b kernel-2.6.36-2.el5.elrepotest##.xls
  Initial write  140675.53
        Rewrite   274615.28
           Read     467823.69
        Re-read   498164.59

sync ; hdparm -Tt /dev/md0
Timing cached reads:   2952 MB in  2.00 seconds = 1476.07 MB/sec
Timing buffered disk reads:  1008 MB in  3.00 seconds = 335.54 MB/sec

sync ; time dd if=/dev/md0 of=/dev/null bs=1M count=20480
21474836480 bytes (21 GB) copied, 57.3881 seconds, 374 MB/s
real    0m57.419s

If I figure out how to do bar charts for the results, I will add them.

There you go. A bit of performance history and some signs of things to come. Naturally, I will test with ext4 and other changes. But all of the above info has come from generally stock and/or default setup. Since this MD3000 I get to play with now is fully populated with drives, I plan to compare the dual 5 drive RAID 5 setup with dual 7 drive RAID 5 and maybe RAID 1. Then there is the whole RHEL/CentOS 6 question to answer for testing...

Sunday, December 26, 2010

Linux RHEL/CentOS 5.5 PHP 5.3 upgrade made easy

Please see the RHEL 5.6 update note HERE 

Just to be honest, this PHP 5.3 upgrade/update has been made painless by the GREAT folks at IUS Community Repo! The real magic is their repository setup and rather helpful "yum-plugin-replace" yum plugin. I have not seen any problem with this update path at all. My needs may be different than yours, so YMMV. This post is adapted from a previous post that focused on another program that just needed a PHP > 5.2 installed.

You must be the root user to execute all the stated commands.


  • install the IUS and EPEL repository:
    wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1.0-8.ius.el5.noarch.rpm
    wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/epel-release-5-4.noarch.rpm
    rpm -Uhv ius-release-1.0-8.ius.el5.noarch.rpm epel-release-5-4.noarch.rpm





  • understand the possible issues with 3rd party repositories and how to use priorities or protectBase





  • install the IUS yum plugin (if you missed it from the IUS instructions):
    yum install yum-plugin-replace





  • replace the old stock php:
    yum replace php --replace-with php53





  • get an overview of what other php53 packages are available:
    yum search php53





  • if you had the old php and web server running, restart the web server:
    service httpd restart





  • if you had a mysql database server running, restart the mysqld:
    service mysqld restart





  • same goes if you had postgresql running:
    service postgresql restart
  • Friday, December 24, 2010

    Call of Duty Black OPS - I'm a cry baby ;)

    I have been VERY feed up with the outright blatant cheating being done in "Call of Duty Modern Warfare 2". The continuous auto head shot was the last straw... I was amazed that this was happening on so many servers that had the Valve Anti-Cheat running. Why on earth is this happening? I even found at least one very proud website offering software the whole list of cheat possibilities from the subtle (no recoil, no flinch) to the blatant (auto head shot) as noted above. The software is for ALL versions of the game...

    So, COOL Call of Duty Black OPS is released with dedicated servers! Valve has got to be able to handle the cheating now!? Wrong!!! There are many people using the blatant cheats and the subtle cheats.

    Naturally, the subtle ones are not the end of the world. However, I DO have issues with the 80 kill, 1 death DB's.

    /rant
    /crying

    Monday, December 20, 2010

    Linux RHEL/CentOS 5.5 RoundCube webmail setup for latest stable tar install.

    Please see the update note HERE

    RoundCube Webmail is a modern webmail server with many capabilities. The stock RHEL/CentOS roundcubemail rpm is WAY out of date. Getting the new (as of this writing) roundcubemail 0.4.2 installed will require a couple other newer core packages (PHP 5.2.1 or higher) that are not standard for RHEL/CentOS 5.5. There is a rather excellent group of people at the IUS Community Project that will help provide the ability to breeze through the install of the latest version with mysql.

    1. download the stable version:
      wget "http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.4.2/roundcubemail-0.4.2.tar.gz"
    2. install the IUS and EPEL repository:
      wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5.5/i386/ius-release-1.0-6.ius.el5.noarch.rpm
      wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5.5/i386/epel-release-1-1.ius.el5.noarch.rpm
      rpm -Uhv ius-release-1.0-6.ius.el5.noarch.rpm epel-release-1-1.ius.el5.noarch.rpm
    3. understand the possible issues with 3rd party repositories and how to use priorities or protectBase
    4. install the IUS yum plugin (if you missed it from the IUS instructions):
      yum install yum-plugin-replace
    5. install the old roundcubemail from epel to get most of the package dependencies out of the way:
      yum install roundcubemail
    6. remove the old roundcubemail:
      rpm -e roundcubemail
    7. replace the old stock php:
      yum replace php --replace-with php53
    8. make sure you have the basics of what you need:
      yum install php53-imap php53-mcrypt php53-ldap php53-xml php53-mysql php53-pspell
    9. (re)start the web server:
      service httpd restart
    10. (re)start the mysql database server:
      service mysqld restart
    11. setup the mysql database:
      echo "CREATE DATABASE roundcubemail; GRANT ALL PRIVILEGES ON roundcubemail.* TO USERNAME@localhost IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES;"|mysql
    12. configure roundcubemail per directions

    Wednesday, December 15, 2010

    How to get a Digi Edgeport/416 working with RHEL/CentOS 5

    I had the opportunity to play with an Edgeport/416 16 port DB9 serial to USB converter. I was hoping to just be able to plug and play and use it in a Hylafax fax server setup. The reason for the attempt was to evaluate the potential  replacement of a failing OLD 4 port modem card included in an existing Hylafax fax server setup. Suffice it to say my dreams of plug and play were dashed when no /dev/ttyUSB* device files were created:
    Dec 15 11:58:32 tsas3 kernel: usb 3-1.1.1: new full speed USB device using uhci_hcd and address 6
    Dec 15 11:58:32 tsas3 kernel: usb 3-1.1.1: configuration #1 chosen from 1 choice
    Dec 15 11:58:33 tsas3 kernel: usb 3-1.1.2: new full speed USB device using uhci_hcd and address 7
    Dec 15 11:58:33 tsas3 kernel: usb 3-1.1.2: configuration #1 chosen from 1 choice
    Dec 15 11:58:33 tsas3 kernel: usb 3-1.1.3: new full speed USB device using uhci_hcd and address 8
    Dec 15 11:58:33 tsas3 kernel: usb 3-1.1.3: configuration #1 chosen from 1 choice
    Dec 15 11:58:34 tsas3 kernel: usb 3-1.1.4: new full speed USB device using uhci_hcd and address 9
    Dec 15 11:58:34 tsas3 kernel: usb 3-1.1.4: configuration #1 chosen from 1 choice
    Dec 15 11:58:34 tsas3 kernel: usb 3-1.2.1: new full speed USB device using uhci_hcd and address 10
    Dec 15 11:58:34 tsas3 kernel: usb 3-1.2.1: configuration #1 chosen from 1 choice
    Dec 15 11:58:35 tsas3 kernel: usb 3-1.2.2: new full speed USB device using uhci_hcd and address 11
    Dec 15 11:58:35 tsas3 kernel: usb 3-1.2.2: configuration #1 chosen from 1 choice
    Dec 15 11:58:35 tsas3 kernel: usb 3-1.2.3: new full speed USB device using uhci_hcd and address 12
    Dec 15 11:58:35 tsas3 kernel: usb 3-1.2.3: configuration #1 chosen from 1 choice
    Dec 15 11:58:35 tsas3 kernel: usb 3-1.2.4: new full speed USB device using uhci_hcd and address 13
    Dec 15 11:58:36 tsas3 kernel: usb 3-1.2.4: configuration #1 chosen from 1 choice
    Dec 15 12:00:31 tsas3 kernel: usbcore: registered new driver usbserial
    Dec 15 12:00:31 tsas3 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
    Dec 15 12:00:31 tsas3 kernel: usbcore: registered new driver usbserial_generic
    ...
    A bit of google-foo lead me to a blog entry from pjtsubaru and other references including a non-commented Redhat request for enhancement bug against RHEL 5.5.

    Finally, I recalled the recent RHEL/CentOS mainline kernel tracker announcement from the GREAT folks at ElRepo. Installed the kernel-ml, reboot and ttyUSB serial port love:
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.1: Edgeport TI 2 port adapter converter now attached to ttyUSB0
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.1: Edgeport TI 2 port adapter converter now attached to ttyUSB1
    Dec 15 13:06:08 tsas3 kernel: io_ti 3-1.1.2:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.2: Edgeport TI 2 port adapter converter now attached to ttyUSB2
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.2: Edgeport TI 2 port adapter converter now attached to ttyUSB3
    Dec 15 13:06:08 tsas3 kernel: io_ti 3-1.1.3:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.3: Edgeport TI 2 port adapter converter now attached to ttyUSB4
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.3: Edgeport TI 2 port adapter converter now attached to ttyUSB5
    Dec 15 13:06:08 tsas3 kernel: io_ti 3-1.1.4:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.4: Edgeport TI 2 port adapter converter now attached to ttyUSB6
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.1.4: Edgeport TI 2 port adapter converter now attached to ttyUSB7
    Dec 15 13:06:08 tsas3 kernel: io_ti 3-1.2.1:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.2.1: Edgeport TI 2 port adapter converter now attached to ttyUSB8
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.2.1: Edgeport TI 2 port adapter converter now attached to ttyUSB9
    Dec 15 13:06:08 tsas3 kernel: io_ti 3-1.2.2:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:08 tsas3 kernel: usb 3-1.2.2: Edgeport TI 2 port adapter converter now attached to ttyUSB10
    Dec 15 13:06:09 tsas3 kernel: usb 3-1.2.2: Edgeport TI 2 port adapter converter now attached to ttyUSB11
    Dec 15 13:06:09 tsas3 kernel: io_ti 3-1.2.3:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:09 tsas3 kernel: usb 3-1.2.3: Edgeport TI 2 port adapter converter now attached to ttyUSB12
    Dec 15 13:06:09 tsas3 kernel: usb 3-1.2.3: Edgeport TI 2 port adapter converter now attached to ttyUSB13
    Dec 15 13:06:09 tsas3 kernel: io_ti 3-1.2.4:1.0: Edgeport TI 2 port adapter converter detected
    Dec 15 13:06:09 tsas3 kernel: usb 3-1.2.4: Edgeport TI 2 port adapter converter now attached to ttyUSB14
    Dec 15 13:06:09 tsas3 kernel: usb 3-1.2.4: Edgeport TI 2 port adapter converter now attached to ttyUSB15
    Dec 15 13:06:09 tsas3 kernel: usbcore: registered new interface driver io_ti
    Dec 15 13:06:09 tsas3 kernel: io_ti: v0.7mode043006:Edgeport USB Serial Driver