Formerly called BrandZ, Solaris Containers for Linux Applications is an upgrade to the Containers operating system virtualization technology already included in Solaris 10. The update will be released at no charge to existing Solaris customers.
According to the OpenSolaris wiki, BrandZ is a framework that extends the Solaris Zones infrastructure to create Branded Zones, which are zones that contain non-native operating environments. The term non-native is intentionally vague, as the infrastructure allows for the creation of a wide range of operating environments. Each operating environment is provided by a "brand" that plugs into the BrandZ framework. A brand may be as simple as an environment with the standard Solaris utilities replaced by their GNU equivalents, or it may be as complex as a complete Linux user space.Conceptual hurdles
By late 2005, Santa Clara, Calif.-based Sun Microsystems Inc. had begun this project as a framework for applications from other operating systems to run seamlessly inside a Solaris container, or zone. Part of the reason for the two-year delay, said Gordon Haff, a senior analyst at Nashua, N.H.-based Illuminata Inc., was that Sun had established only a conceptual idea of what it means to run Linux applications virtually inside Solaris and underestimated the process. "There were a number of false starts," Haff said. Over the past two years, Sun has been "figuring out what the right areas to work on were," he said.
Much of the tweaking took place in OpenSolaris, where many projects are tested and fine-tuned so that one day they might be included in a commercial Solaris release. OpenSolaris is a community-driven project akin to Red Hat's Fedora and Novell Inc.'s openSUSE project. With OpenSolaris, the focus on Linux containers began in September 2006 with the lx brand.
According to Sun, lx "enables Linux binary applications to run unmodified on Solaris, within zones running a complete Linux userspace." The combination of BrandZ and lx will come together as Solaris Containers for Linux Applications. It is worth noting that Sun's Solaris Containers for Linux Applications Web site makes the distinction that lx is not a Linux distribution and does not contain Linux software. Instead, lx enables user-level Linux software to run on a machine with a Solaris kernel and includes the tools necessary to install a CentOS or RHEL distribution inside a zone on a Solaris system.
Lx will run on x86 and x64 systems booted with either a 32-bit or 64-bit kernel. Regardless of the underlying kernel, only 32-bit Linux applications are able to run.Virtualization -- but not
"This is almost like virtual machines in a conceptual -- if not a technical -- implication," Haff said. "If you have a Linux zone, it's not really a virtual machine, but from a user's point of view, it feels more like a virtual machine than a Linux application running on top of Solaris."
In that vein, Haff sees the addition of lx to the Solaris OS as a way for existing Solaris-dominated shops to run the handful of Linux applications that don't run natively on Solaris. It is not intended to run a "large number of Linux applications on a Sun box," he said.
"It's a very different technical approach, but this has some conceptual similarities to what IBM is doing with System p servers and Transitive Corp. Primarily, however, this is for Solaris environments running the few Linux applications not available [for that OS]," Haff said.
As reported previously by SearchEnterpriseLinux.com, Sun prefers that its customers buy Sun hardware running Solaris. But as Framingham, Mass.-based research firm IDC notes regularly in its Linux quarterly server tracking report, almost two-thirds of all Niagara servers that Sun has shipped include Linux pre-installed.
In that light, Solaris Containers for Linux could be a boon for hardware/software vendors, Haff said "Having virtual Linux instances on Solaris machines bodes well for a peaceful coexistence with Linux," he said.
Email Jack Loftus with your comments and suggestions.