Posts Tagged ‘Upstart’

A brief test of RHEL 6 Beta 1

Friday, April 23rd, 2010

As promised yesterday, I publish the results of a brief test of RHEL6 Beta 1 and the most important findings. It is my point of view as a system guys daily business. If not stated, this overview is based on a default installation with no customization.

General

  • There are new package groups such as  “Minimal” with 228 Packages and “Basic Server” with 523 Packages. “Basic Server” is the default installation, which means the default click trough installation compared to RHEL5 is much less bloated.
  • The versions of the most important software is quite up-to-date but as expected not on the bleeding edge.
  • Postfix is the default MTA. Finally Red Hat managed to switch away from sendmail like other distributions did it years ago.
  • Bye bye SysV init: As I guesstimated in october 2009 RHEL6 comes with upstart instead of traditional SysV init. (See http://blog.delouw.ch/2009/10/31/ready-to-upstart/). The boot process is much faster compared to RHEL5. Upstart comes with legacy support for traditional runcontrol scripts in /etc/init.d.
  • Still too many services enabled after default install. Generally unneeded services like avahi/mDNS and NFS-related daemons such as  portmap are still enabled by default.

Virtualization

As expected, Xen was removed completely from RHEL6. These is being discussed controversial. Why not providing both virtualization solutions as before? Recently Citrix released Xen4 which works well together with Kernel 2.6.32, the same version as used by RHEL6.

KVM and its friends made a huge step forward. lib-virt, virt-manager and stuff is nearly up-to-date with the upstream versions. Means: The virtualization infrastructure made a lot of progress. Installing RHEL6 as a KVM guest works great. All drivers needed (virtio) are automatically installed.

A major good message to people which are using VMware vPhere 4 is that RHEL 6 comes which native support of vmxnet3 which was obviously backported from Kernel 2.6.33. Vmxnet3 is the driver for VMware’s para-virt NIC which brings quite some performance enhancements and lower CPU usage on the ESX host.

Certifications from ISVs

A quick check (not actually tested) for the requirements for SAP and Oracle shows that those are fulfilled already. We can expect the certification quite soon after GA of RHEL6. [update] Some compatibility RPMs from the mid 1990′s disappeared.  I now need to figure out if they are *really* needed by Oracle and/or SAP[/update]

Integration with Cobbler

Integration with cobbler works like expected, cobbler import –path=/mnt –name=rhel6 and you are done. For a quick test I just copied the kickstart template from RHEL5 and I’m not sure if this is a good method. A test-install on ESX4 failed, the system hung at the creating of the root-VG. Not sure yet if it is a bug or something is incompatible in the kickstart. [update] The system hung was because of out-of-memory. The test-installation was on a ESX guest with 384Mbyte of memory which is enough according to the documentation but too little in real life. Growing the RAM of the test system to 512Mybte helped, but some packages needed by for SAP have changes names or disappeared.  After changing/removing those RPMs, the installation went smoothly[/update]

Bugs or features?

I detected some oddities where I’m not sure if it is a bug or a feature. We will see whats going on on http://bugzilla.redhat.com.

  • No network configured after default install. At the moment you need to configure it manually (considered a Bug)
  • I detected a major security issue during install, I’m not going to disclose it before a patch is available or more information from Red Hat is made available. I reported it 2010-04-23 ~12:00 on Red Hats bugzilla bugtracker. [update] The bug gots assigned to a Red Engineer after three hours, seems like Red Hat is acting very professional on the case[/update]

Conclusion

After this brief test one can say that RHEL6 will be a really great Linux Distribution for enterprise servers. The beta is already very stable with few bugs detected from my side. My guesstimate is that mid of May 2010 there will be a second public beta released, lets stay tuned, I’ll keep you up-to-date with further findings.

Have fun!

Ready to upstart?

Saturday, October 31st, 2009

upstart

It is time to replace the aged SysV init system with someting better

At the time when  SysV init (pronounced “System five”) appeared, hardware configurations have been quite static, no hot plug and similar fancy stuff.

SysV init is started after the kernel is loaded. The init process reads /etc/inittab and walks trough the runcontrol script and runlevels. This sequential walk-trough takes most of the time when booting a modern Unix system.

Upstart follows another approach: Starting daemons and services in parallel and event driven.  This will speed up the boot process beyond expectations.

A very nice feature of upstart is: All processes will be started in background, no more blocking of the boot process trough hanging run control scripts!

If a service unexpectedly dies, it will be respawned  automatically up to a configurable limit in times per period.

Upstart is event-driven, a event can be e.g. plugging in new hardware which ends up starting the needed service for it. There are also plans to replace cron and atd with upstart since this are basically time-triggered events. The developers also thinking about replacing the inetd, since a network connection can be considered as a event.

Transition

Since most of the software out there do not natively support upstart yet, transition methods are needed for a smooth transition from SysV init to upstart. Traditional SysV run control scrips are fully supported, even distributions slowly switch to the event/job model of upstart. E.g. one of the first distributions switched to upstart was Ubuntu 6.10, and now with Ubuntu 9.10 – three years later – they begin to ship its distribution with the first native upstart scripts.

Splitting Unix systems apart

Years ago there only have been two init systems: SysV init and BSD init, a sysadmin was comfortable to use them on whatever system. Now there are SysV init, Upstart from Ubuntu, lauchd from Apple, SMF (System Management Facility) from Sun Microsystems and possibly others. All of this SysV init replacements are working differently,  different commands, different architecture… This makes the job of a sysadmin not easier when managing a heterogeneous system landscape.

Linux distributions stay together

The good news: On the Linux side it looks like Upstart will be the future standard for system initialization, no balkanization of the Linux Landscape so far.

Linux Distribution with upstart

The following distributions are already shipping upstart:

  • Ubuntu
  • Debian
  • Fedora
  • Others?

Since Fedora 11 and 12 will be the upstream for the upcomming RHEL6 distribution it is most likely that RHEL6 comes with upstart. At openSUSE there are some discussions (see https://features.opensuse.org/305690 for details). Maybe there is a chance for openSUSE 11.3 and later on SLES12.

Further readings:

Upstart web site: http://upstart.ubuntu.com
Wikipedia article: http://en.wikipedia.org/wiki/Upstart

Have fun!