≡ Menu


FreeBSD 7.2 Review: Improved Virtualization

FreeBSD is just plain old good UNIX with rock solid networking stack. It is quite popular amongst hosting companies, ISPs, portals (such as Yahoo) and a few large financial institutions because of its reliability, robustness and performance.

A new version of the FreeBSD is scheduled for release next week (4-May-2009). A beta 2 was made available for download few weeks ago for final round of testing before the official launch.
[click to continue…]

A Redundant Array of Independent Drives (or Disks), also known as Redundant Array of Inexpensive Drives (or Disks) (RAID) is an term for data storage schemes that divide and/or replicate data among multiple hard drives. RAID can be designed to provide increased data reliability or increased I/O performance, though one goal may compromise the other. There are 10 RAID level. But which one is recommended for data safety and performance considering that hard drives are commodity priced?

I did some research in last few months and based upon my experince I started to use RAID10 for both Vmware / XEN Virtualization and database servers. A few MS-Exchange and Oracle admins also recommended RAID 10 for both safety and performance over RAID 5.

Quick RAID 10 overview (raid 10 explained)

RAID 10 = Combining features of RAID 0 + RAID 1. It provides optimization for fault tolerance.

RAID 0 helps to increase performance by striping volume data across multiple disk drives.

RAID 1 provides disk mirroring which duplicates your data.

In some cases, RAID 10 offers faster data reads and writes than RAID 5 because it does not need to manage parity.

Fig.01: Raid 10 in action

Fig.01: Raid 10 in action

RAID 5 vs RAID 10

From Art S. Kagel research findings:

If a drive costs $1000US (and most are far less expensive than that) then switching from a 4 pair RAID10 array to a 5 drive RAID5 array will save 3 drives or $3000US. What is the cost of overtime, wear and tear on the technicians, DBAs, managers, and customers of even a recovery scare? What is the cost of reduced performance and possibly reduced customer satisfaction? Finally what is the cost of lost business if data is unrecoverable? I maintain that the drives are FAR cheaper! Hence my mantra:

Is RAID 5 Really a Bargain?

Cary Millsap, manager of Hotsos LLC and the editor of Hotsos Journal found the following facts - Is RAID 5 Really a Bargain?":

  • RAID 5 costs more for write-intensive applications than RAID 1.
  • RAID 5 is less outage resilient than RAID 1.
  • RAID 5 suffers massive performance degradation during partial outage.
  • RAID 5 is less architecturally flexible than RAID 1.
  • Correcting RAID 5 performance problems can be very expensive.

My practical experience with RAID arrays configuration

To make picture clear, I'm putting RAID 10 vs RAID 5 configuration for high-load database, Vmware / Xen servers, mail servers, MS - Exchange mail server etc:

RAID LevelTotal array capacityFault toleranceRead speedWrite speed
500GB x 4 disks
1000 GB1 disk4X2X
500GB x 3 disks
1000 GB1 disk2XSpeed of a RAID 5 depends upon the controller implementation

You can clearly see RAID 10 outperforms RAID 5 at fraction of cost in terms of read and write operations.

A note about backup

Any RAID level will not protect you from multiple disk failures. While one disk is off line for any reason, your disk array is not fully redundant. Therefore, old good tape backups are always recommended.

Please add your thoughts and experience in the comments below.

Further readings:

Red Hat paid approximately $107 million in cash for Qumranet, a privately held company. Now, Red Hat positioned to deliver comprehensive, reliable and open virtualization to Linux and Windows servers and desktops.

Red Hat today announced the acquisition of Qumranet, Inc. The acquisition includes Qumranet's virtualization solutions, including its KVM (Kernel Virtual Machine) platform and SolidICE offering, a virtual desktop infrastructure (VDI), which together present a comprehensive virtualization platform for enterprise customers. In addition, in connection with the deal, Qumranet's talented team of professionals that develop, test and support Qumranet solutions, and its leaders of the open source community KVM project, will join Red Hat.

According wikipedia:

Kernel-based Virtual Machine (KVM) is a Linux kernel virtualization infrastructure. KVM currently supports native virtualization using Intel VT or AMD-V. A wide variety of guest operating systems work with KVM, including many flavours of Linux, BSD, Solaris, Windows, Haiku, ReactOS and AROS Research Operating System.

Red Hat Advances Virtualization Leadership with Qumranet, Inc. Acquisition

InfoWeek has an interesting article about the open-source future - What Linux Will Look Like In 2012:

Our open source expert foresees the future of Linux: By 2012 the OS will have matured into three basic usage models. Web-based apps rule, virtualization is a breeze, and command-line hacking for basic system configuration is a thing of the past.

I don't know about others but I'm using Linux desktop since 1999 and it won't change in 2012. May be it will be look like ;)
vivek@desktop:~ $

=> What Linux Will Look Like In 2012

VMware Server (formerly GSX Server) is an entry-level server virtualization solution which is proprietary, freeware software. VMware released version 2.0 beta of Server on July 1, 2008. VMware Server offers virtualization benefits such as:

+ You can create, edit, and play virtual machines.
+ Install any guest operating system for testing purpose.
+ Improve security.
+ Reduce downtime.
+ Control guest oses and VMware server from browser itself.
+ Improve resource utilization i.e. resource virtualization etc.

It uses a client-server model, allowing remote access to virtual machines.

Download VMware Server 2.0 Release Candidate 1

Please note that to use this version, you will need to register for your free serial number(s).

How do I install vmware?

Once downloaded simply use rpm command to install VMware software under CentOS / RHEL 5.x:
# rpm -ivh VMware-server-2.0.0-101586.x86_64.rpm
Before running VMware Server for the first time, you need to configure it for your running kernel by invoking the following command:
# /usr/bin/vmware-config.pl

How do I access and control my guest operating systems?

Fire a webbrowser and type the following url:

(Fig.01: Vmware server web login)
Once logged in you can see all your virtual machines and you can start / stop VPS oses:

(Fig.02: "VMWare Infrastructure Web Access" provides appliance like control [click to enlarge])
You need to install Firefox add-on called "VMware Remote Console Plugin", once installed you can install any os or view guest / vps oses console:

(Fig.03: FreeBSD remote console within my Firefox [click to enlarge])

Security Update for Red Hat Linux Kernel

Red Hat has issued a security update for its Kernel that fixes issues related to following packages. This update has been rated as having important security impact on RHEL 4.x / 5.x, and you are recommended to update system as soon as possible.

=> Updated GFS-kernel, gnbd-kernel,dlm-kernel, cmirror-kernel, cman-kernel, Virtualization_Guide, Cluster_Administration, and lobal_File_System packages that fix module loading and others issues under RHEL 4.x and 5.x available now.

How do I update my system?

Simply type the following two commands:
# yum update
Sample output:

Loading "rhnplugin" plugin
Loading "security" plugin
rhel-x86_64-server-vt-5   100% |=========================| 1.2 kB    00:00
rhel-x86_64-server-5      100% |=========================| 1.2 kB    00:00
Skipping security plugin, no data
Setting up Update Process
Resolving Dependencies
Skipping security plugin, no data
--> Running transaction check
---> Package kernel.x86_64 0:2.6.18-92.1.6.el5 set to be installed
---> Package kernel-devel.x86_64 0:2.6.18-92.1.6.el5 set to be installed
---> Package kernel-headers.x86_64 0:2.6.18-92.1.6.el5 set to be updated
---> Package Deployment_Guide-en-US.noarch 0:5.2-11 set to be updated
--> Finished Dependency Resolution
--> Running transaction check
---> Package kernel.x86_64 0:2.6.18-53.1.21.el5 set to be erased
---> Package kernel.x86_64 0:2.6.18-92.1.6.el5 set to be installed
---> Package kernel-devel.x86_64 0:2.6.18-92.1.6.el5 set to be installed
---> Package kernel-headers.x86_64 0:2.6.18-92.1.6.el5 set to be updated
---> Package Deployment_Guide-en-US.noarch 0:5.2-11 set to be updated
---> Package kernel-devel.x86_64 0:2.6.18-53.1.21.el5 set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
 Package                 Arch       Version          Repository        Size
 kernel                  x86_64     2.6.18-92.1.6.el5  rhel-x86_64-server-5   16 M
 kernel-devel            x86_64     2.6.18-92.1.6.el5  rhel-x86_64-server-5  5.0 M
 Deployment_Guide-en-US  noarch     5.2-11           rhel-x86_64-server-5  3.5 M
 kernel-headers          x86_64     2.6.18-92.1.6.el5  rhel-x86_64-server-5  880 k
 kernel                  x86_64     2.6.18-53.1.21.el5  installed          75 M
 kernel-devel            x86_64     2.6.18-53.1.21.el5  installed          15 M
Transaction Summary
Install      2 Package(s)
Update       2 Package(s)
Remove       2 Package(s)
Total download size: 25 M
Is this ok [y/N]: y

If you cannot get rid of Windows due to application software compatibility issues, try andLinux.

Linux does everything that many users want it to, but some people have tasks that require Windows applications. You can dual-boot both operating systems, or run Windows in a virtualized environment on Linux. Alas, virtualization makes the guest OS almost useless for processor- and RAM-intensive tasks like editing videos and playing games. Now, a Ubuntu-based distro called andLinux takes cooperation with Windows to a whole new level.

=> Run Windows and Linux without virtualization