Since Oracle Solaris 11 was released in November 2011, there have been two major updates - the 11.1 release in October 2012 and the 11.2 release in July 2014. Oracle released a beta version of Solaris 11.3 in July 2015. These updates added significant new technologies and enhancements to Solaris, already regarded as the premier enterprise UNIX operating system for scalability, stability, and security. As enterprise computing has recently evolved to exploit new virtualization capabilities and cloud computing features, these Solaris updates have led the way in delivering mission-critical IT infrastructure for Oracle’s industry-leading SPARC servers as well as for servers based on modern Intel processors. In this article we present an overview of Oracle Solaris 11’s major features, with an emphasis on the most recent 11.2 release. In future articles, we provide tips, techniques, and advice on how to take advantage of Solaris 11’s numerous capabilities.
About Oracle Solaris 11 11/11
The initial Oracle Solaris 11 11/11 release (sometimes referred to as the “11.0 release”) was a major change for Solaris system administrators familiar with earlier releases. While the changes required a bit of learning effort, the goal was to dramatically improve the manageability of modern Oracle Solaris servers, with a focus on scalability, virtualization, networking, security, and storage administration. The most dramatic changes from Solaris 10 and earlier versions included:
- The Image Packaging System (IPS): This system provides for network-based change management of operating system and application patching and updating. It is a framework for OS and system software lifecycle management that includes safe and verifiable installation and upgrading of software using network, local, or device-based repositories. A major feature of this system is automatic checking of dependencies—a request to install a new component will discover and install any other required components. Additionally, IPS exploits the snapshot and data integrity features of the Oracle ZFS File System to create new boot environments (BEs) even on production systems without interruption, thus minimizing planned downtime and enabling safe and quick reversion to earlier configurations if desired.
- The ZFS File System (ZFS): ZFS, first introduced as an option in Solaris 10, is now the default root and boot file system for Solaris 11. ZFS includes scalability features that eliminate the file size and directory size limitations of UNIX File System (UFS), provides data integrity assurance through check-summing of all data and metadata along with copy-on-write data update semantics, and is the foundation for Solaris 11’s safe storage, OS, and IPS software management. ZFS is also leveraged to enable the creation and management of Solaris zones, and now includes full support for file system compression, encryption, and deduplication.
- The Automated Installer (AI): Solaris 11 introduced a new framework for automating server installation and provisioning. It integrates with ZFS and IPS to provide network-based services for customized deployment of bootable Solaris OS images to both “bare metal” and virtualized (zones) destinations. AI replaces the Solaris 10 JumpStart utilities, and includes a conversion tool to assist in translating JumpStart profiles to AI manifests. Other installation methods delivered with Solaris 11 include a Live Media image for x86 systems for both learning purposes and for virtualized installation of the GNOME graphical desktop environment, and text-only installation images for both SPARC and x86 systems that lack graphical displays.
- Solaris Zones: Solaris 10 introduced an efficient form of OS virtualization that did not require a hypervisor—zones (also called containers in some contexts). Solaris 11 has expanded the integration and features of zones, including the ability to create and use a Solaris 10 zone within the Solaris 11 global zone. Additionally, tools are now provided to migrate Solaris environments currently running in zones or on bare metal to zones on different servers using “physical-to-virtual” (p2v) and “virtual-to-virtual” (v2v) utilities. The use of “sparse” and “full” root zones in Solaris 10 has gone away in Solaris 11 due to ZFS’s data separation features, linking to IPS images, and the resulting ability to create “immutable” (read-only) zones. Other zone enhancements include the ability to deploy a Network File System (NFS) server within a zone, assigning a separate, full IP stack per zone, and a new performance observability tool, zonestat, for monitoring zone resources.
- Role-Based Security: By default, the privileged root user in Solaris 11 is now a role like any other user whose access rights can be limited. Instead of logging in directly as root, users now log in normally and assume the root role if authorized. The familiar sudo tool is included with Solaris 11 for managing privileged program execution.
- Networking: Because Solaris now supports both bare-metal and virtual OS environments, it was necessary to review and enhance how both network hardware and virtualized network interfaces and IP stacks are created, configured, and managed. This work is based on Sun Microsystems’ earlier Project Crossbow, which virtualized Solaris’ network space allowing the creation of virtual NICs over a virtual switch. Much of the TCP network code had not been updated or optimized for many releases; new feature support and performance improvements were also needed. Solaris 11 introduces new system tools that improve system administrators’ abilities to manage and observe real and virtualized network interfaces, allocate network bandwidth resources, and create virtual network topologies that improve system performance and reduce the need for external network hardware. Solaris zones can now have their own exclusive IP stack. Additionally, system administrators can customize server networking features for manual or automatic configuration, create customized names for network interfaces, and manage MAC addresses for virtualized environments.
The preceding text lists only a sample of the many changes from Solaris 10 to Solaris 11 11/11; the sections that follow and the references at the end of this article contain additional and more detailed descriptions of those changes and new OS features.
Unfortunately, there is no magic procedure to simply convert or upgrade a Solaris 10 system to Solaris 11; you must do a new install of the operating system (new Oracle servers come with Solaris 11 preinstalled). This is primarily due to the significant differences created by Solaris 11’s dependence on ZFS and IPS for the root/boot file system. Upgrades from Solaris 11 11/11 and beyond are supported using IPS.
The Oracle Solaris 11.1 Update
Oracle Solaris 11.1 was the first update to the operating system, released in November 2011. Many of the changes in this update were simply improvements or enhancements to existing features, or provided new tools to help administer them. Some of the more prominent updates included:
- AI (Automated Installer) Enhancements: Added new subcommands to the installadm command to improve administration of installation services; added role-based delegation of AI tasks.
- SMF Manifest Creation Tool: Added the svcbundle utility to ease the creation of SMF manifests; editing of XML files is reduced.
- Editing of configuration files: Added the pfedit utility allowing delegation of editing permissions for administrative files such as syslog.
- Zones on Shared Storage: Updated the zonecfg command to allow specification of shared (SAN) storage components.
- Parallel Zone Updates: Zones configured in Solaris 11 11/11 and Solaris 10 were updated serially, resulting in very long system update times for servers with many zones. Solaris 11.1 now supports updating zones in parallel for significant speedup.
- Security Enhancements: Solaris 11.1 supports OpenSCAP compliance reporting and now includes exploit prevention technologies such as address space randomization and prevention of non-privileged memory-based execution.
- Security Evaluations: Oracle Solaris 11.1 has been evaluated under the FIPS 140-2 Cryptographic Framework and Common Criteria EAL4+ Protection Profile; it also supports the FIPS 140-2 modes for ssh and sshd.
- Network Configuration: Solaris 11.1 now supports updates to virtual network interface cards (NICs) without interrupting network connectivity.
- ZFS Enhancements: ZFS properties can now be easily configured to share file systems using NFS or Common Internet File System (CIFS).
- Power Management: Power for idle central processing units (CPUs) can now be automatically reduced for both x86 and SPARC systems.
- x86 Boot Loader: GRUB2 is now the default boot loader for Intel-based systems.
- Observability: The mpstat and cpustat tools have been updated to improve the output for systems having very large numbers of hardware threads (CPUs) to make it easier to spot utilization problems.
The Solaris 11.2 Update
Oracle Solaris 11.2 was released in July 2014; it includes a significant number of new features and improvements and is the focus of Oracle’s approach to providing an operating system that fully supports cloud computing infrastructures through scalability, OS and network virtualization, security, and ease of management.
- Provisioning with Unified Archives: Because administrators now need to provision both virtual and bare-metal application and OS environments using both types of sources, a new archiving format and utility were needed and are now included with Solaris 11.2. This new capability supports the deployment of physical and virtual images that include both operating systems and applications. The included archiveadm utility can also be used to create full system recovery archives.
- Kernel Zones: Earlier Solaris zone implementations were limited to “branded” Solaris 10 zones and to non-global zones that were the same kernel version as that of the underlying global zone. Solaris 11.2 now features full Solaris kernel virtualization within a new kind of zone—a “kernel zone,” for both SPARC and x86 servers—that can run at a different kernel version than the global zone and can be independently updated. Kernel zones are created and managed like other Solaris zones using the familiar zonecfg and zoneadm commands.
- Software-Defined Networking: With the increasing focus on virtualized OS environments comes the need for accompanying virtualized network services. In addition to Solaris 11’s support for virtual NICs and Ethernet devices, a major addition to Solaris 11.2 is the Elastic Virtual Switch, which supports sharing a virtual network across multiple physical nodes using a distributed switch, along with resource management of network bandwidth.
- Immutable Zones: Solaris 11.2 now includes the ability to configure both non-global and global zones with read-only root file systems for enhanced security of virtualized environments.
- Open Source Configuration and Cloud Computing Software: Solaris 11.2 includes support for Puppet provisioning and configuration software for managing complex infrastructures. Also included is a complete distribution of the OpenStack cloud management system for administration of virtualized compute, network, and storage services.
- Compliance Checking and Reporting: A new utility program—compliance—is provided to verify system updates and configuration files and monitor potential security compromises.
- Image Packaging System (IPS) Updates: IPS can now check and update required firmware versions for certain hardware devices; it also includes a new package for preparing a system for installation of Oracle Database 12c, checking that all dependencies are met for installing that product.
- Preflight Application Checker: This bundle of tools is used for checking the readiness of earlier Solaris applications, kernel modules, and device drivers for compliance with Solaris 11 and reports any problems and recommended changes for deployment on the updated OS version.
Solaris 11 End-of-Feature Notifications
As operating systems and hardware evolve, some features become obsolete or are replaced by newer and better components. Oracle Solaris system administrators and application developers should periodically review the published End-of-Feature (EOF) notices to ensure that they are using currently supported features and are aware of any potential removal of programs that they have been using. In particular, Solaris 11 has removed certain programs from the OS environment and has posted notifications that some currently supported programs will not be supported at some future date.
Commonly used programs and services that are no longer available in Solaris 11 include the following:
- crypt: Replaced by the encrypt command.
- rdist: Replaced by rsync and scp commands.
- Adobe Flash Player: No longer available for Solaris.
- 32-bit kernel: Libraries for 32-bit applications are still supported.
- LP print services: Replaced by the Common UNIX Printing System (CUPS).
- Solaris Management Console: No longer available; replaced by command line utilities.
- Application software: Certain older versions of Web and database software are no longer included or supported, including Apache 1.3, MySQL 5.0, and PostgreSQL.
Some currently supported utilities of Solaris 11 may be removed in future releases, including the appcert ABI checker (use the new Preflight Checker instead), the old pkgmanager utilities (use IPS instead), and the /usr/ucb directory (use the programs in /usr/bin instead).
Solaris 11 Optimizations for Oracle Software
As a consequence of today’s extraordinarily scalable servers with terabytes of main memory, hundreds or even thousands of processor cores and hardware threads, new types of virtualization technologies, and enterprise-scale applications that demand optimal performance and stability, operating systems like Solaris must continually evolve and scale along with advances in both SPARC and x86 processor and server hardware. Oracle has invested billions of dollars in R&D, optimizing their “hardware and software, engineered to work together,” enabled by the fact that they own the intellectual property and engineering resources for the entire “stack” of applications, middleware, database, operating systems, virtualization technologies, SPARC and x86 server hardware, and storage systems. As a result of this ownership, Oracle has developed optimizations in Solaris 11 that benefit specific Oracle applications—like the Oracle database—and also benefit general purpose applications, third-party software, and administrative computing tasks. Some of these optimizations include:
- A New Virtual Memory System: Designed to handle large in-memory Oracle applications, predicting and optimizing assignment of memory resources, and supporting very large memory pages. This feature also improves the performance of all memory-intensive applications.
- Optimized Shared Memory for the Oracle Database: Allows for the dynamic resizing of the System Global Area (SGA) without restarting the database, and providing for faster database startup.
- Database and JVM Observability: Oracle Solaris DTrace probes have been added to the Oracle Database and to the Java VM to support detailed tracing of query and object performance and troubleshooting.
- Oracle Solaris Studio IDE: Includes code optimization, parallelization, memory checking, and performance analysis tools for developers deploying applications on Oracle systems. Includes support for Solaris on SPARC and x86 systems, as well as for Oracle Linux. Also supports gcc compiler compatibility.
Solaris 11 The Cloud Operating System
Oracle Solaris 11 has been promoted as the “First Cloud OS.” What does this claim mean? “The Cloud” has many definitions and interpretations from various hardware and software vendors, industry analysts, and end users. But a good, objective definition comes from the US National Institute of Standards and Technology (NIST) that defines five key characteristics of cloud computing:
- On-Demand Self-Service: The ability for cloud users and developers to provision compute, network, and storage resources without human intervention.
- Broad Network Access: All cloud services are available from any network access device such as laptops, smartphones, tablets, or workstations.
- Resource Pooling: The cloud infrastructure enables dynamic assignment and sharing of real and virtualized computing resources in order to safely and efficiently serve multiple tenants.
- Rapid Elasticity: Resources for compute tasks are dynamically added or reduced as needed; no intervention is required to manage resource allocations of memory, number of CPUs, or network bandwidth.
- Measured Service: Cloud resources are metered for the purpose of users paying only for the resources they use; this eliminates the need for owning and overprovisioning hardware and software and its associated acquisition and licensing costs.
Solaris 11 supports all five of these capabilities, including the key foundational virtualization technologies on both SPARC and x86 hardware which provide resource pooling and elasticity using dynamic hardware domains, hypervisors for both processor types and operating systems, and efficient non-hypervisor workload virtualization using zones. Additionally, Oracle’s Enterprise Management software suite includes features for self-provisioning, automated resource allocation, secure multitenant environments, and pay-for-usage chargeback models. As a result of these features, Oracle now has the richest set of cloud computing infrastructure capabilities and services available from a single vendor.
Summary of Major Changes from Oracle Solaris 10 to Oracle Solaris 11.2
Table 1-1 summarizes the major changes from the Solaris 10 to the Solaris 11.2 release.
TABLE 1-1. Summary of Changes from Solaris 10 to Solaris 11
Oracle Solaris Future
As you can see from the updates and enhancements described earlier in this article, Oracle Solaris continues to evolve in order to support advances in processors and servers as well as new IT infrastructure models like cloud computing and Big Data. Oracle will continue to develop and release such innovations and enhancements for Solaris. The publicly available Oracle Solaris/SPARC Roadmap* highlights plans for future SPARC processors and the Solaris features designed to support them. Some of the most exciting developments expected in the next Solaris updates include support for greater processor scalability, and processor hardware accelerators—“Software in Silicon”—for database queries, decompression, data integrity, and Java applications. And Oracle continues to offer the Solaris Binary Compatibility Guarantee that ensures applications running on earlier versions of Solaris will run on future versions; this can eliminate the need to recertify applications when updating the Solaris operating system.
Obtaining Oracle Solaris 11 Software
The easiest way to get Oracle Solaris 11 is to download it from the Oracle Technology Network (OTN) at this link. This site contains a wealth of information about the various Solaris 11 installation options, including installs from DVD, USB, and network; it also includes a link to VM templates that make it easier to start using Solaris.
Oracle no longer offers physical media for the Solaris operating system; users should download the DVD or USB image files and then create physical media as needed.
In this article, we have reviewed some of the major features of the three most recent Oracle Solaris 11 releases, how to obtain Solaris software, documentation, and support, and presented a brief glimpse of Oracle’s future plans for the operating system.