Thursday May 10, 2012

Adventures in Flopping

Click an image to expand it.

Flopping in the NBA:

Flopping in soccer:

Flopping in the the NFL:

Flopping in the Data Center:

Next time your boss brushes aside the Chitos wrappers strewn among the coaxial cables with a dismissive swipe of his Wingtips so he can make his way into your office and demand that you install the latest version of Oracle Solaris 11 on 3,000 clients by Monday, you won't have to resort to flopping.

Just tell him that it'll take you all weekend, and then read Isaac Rozenfeld's explanation of:

How to Set Up Automated Installation Services in Oracle Oracle Solaris 11

The Automated Installer in Oracle Solaris 11 is kinda sorta the replacement for JumpStart and a very cool tool. You should learn how to use it. Steps are:

  1. Use the command-line to set up a an Oracle Solaris 11 system to act as an Automated Installer server.
  2. Create an installation service that will be automatically installed on clients.
  3. Test the installation service on the client, using default settings.
  4. Run the installation service again, but with custom settings.

Isaac strolls through them in grand style:

For more information about the Automated Installer and other installation tools in Oracle Solaris 11, see the Oracle Solaris 11 Installation Resources Page on OTN.

- Rick





Friday Apr 06, 2012

How to Test and Deploy Applications Faster

photo courtesy of mtoleric via Flickr

If you want to test and deploy your applications much faster than you could before, take a look at these OTN resources. They won't disappoint.

Developer Webinar: How to Test and Deploy Applications Faster - April 10

Our second developer webinar, conducted by engineers Eric Reid and Stephan Schneider, will focus on how the zones and ZFS filesystem in Oracle Solaris 11 can simplify your development environment. This is a cool topic because it will show you how to test and deploy apps in their likely real-world environments much quicker than you could before. April 10 at 9:00 am PT

Video Interview: Tips for Developing Faster Applications with Oracle Solaris 11 Express

We recorded this a while ago, and it talks about the Express version of Oracle Solaris 11, but most of it applies to the production release. George Drapeau, who manages a group of engineers whose sole mission is to help customers develop better, faster applications for Oracle Solaris, shares some tips and tricks for improving your applications. How ZFS and Zones create the perfect developer sandbox. What's the best way for a developer to use DTrace. How Crossbow's network bandwidth controls can improve an application's performance. To borrow the classic Ed Sullivan accolade, it's a "really good show."

"White Paper: What's New For Application Developers"

Excellent in-depth analysis of exactly how the capabilities of Oracle Solaris 11 help you test and deploy applications faster. Covers the tools in Oracle Solaris Studio and what you can do with each of them, plus source code management, scripting, and shells. How to replicate your development, test, and production environments, and how to make sure your application runs as it should in those different environments. How to migrate Oracle Solaris 10 applications to Oracle Solaris 11. How to find and diagnose faults in your application. And lots, lots more.

- Rick





Tuesday Feb 21, 2012

How I Explained Network Virtualization to Bikers

Back when we first launched Oracle Solaris Express, I stumbled upon a couple hundred bikers who were building a bonfire in the woods with the timber from an old cabin, a dozen cans of gasoline, and a couple of Honda Priuses. To avoid a beating, I convinced them to let me explain how virtual networks work. They set down their gasoline and I rescued some upholstery from the fire.

In the good old days, I explained, a proper biker had only one bike, a hardtail Knucklehead with a kick-starter, 5" over forks, and apes with purty leather tassels fabricated from the remnants of a favorite biker momma's chaps. And one leather jacket. Well worn. Naturally, that proper biker wanted to go to many rallies. But because he only had one bike, he could only go to one rally at a time. And he wore the same jacket to each rally. I suggested they call that favorite leather jacket Solaris, and that hardtail knucklehead a NIC.

"Nick," they asked. "Who's Nick?"

"Well, N-I-C," I explained. "It's short for Network Interface Card."

That made them a little restless, but I quickly added that as a result of the one-jacket, one-bike rule, life was good, pipes were loud, and America ruled the world.

They liked that. I got several pats on the back.

Fast forward 50, maybe 60 years, I explained while drawing the diagram above, and now we call ourselves motorcyclists. We have multiple bikes. And they are all EPA-compliant. And in keeping with the sartorial splendor of the court of Louix the XIV, we have one outfit for each bike. I asked them to pretend that each outfit was a zone, and each motorcycle was a virtual NIC, or VNIC. They got restless at the mention of Nick again, particularly after I brought up France, but I held up a well-manicured hand so they would allow me to elaborate. When modern motorcyclists like me want to go to Sturgis, I explained, we get into our Sturgis zone (a 5-day shadow, leather chaps, and obligatory bandana), and throw a leg over our Sturgis VNIC (a blinged-out CVO Harley Davidson 110" Ultra Classic with the dual-tone paint job). When we want to go to Americade, we slip into our Americade zone (a clean shave, a heated vest, and a reflective yellow Aerostich waterproof suit with 10 large pockets), and hop onto our Americade VNIC (a BMW K1200LT with heated seats, cup holder, and GPS). And so on. One outfit for each motorcycle, one zone for each vnic.

That's as far as I got. They gave me a beating and tossed me, my Vespa, and my modster jacket into the lake.

I decided to get some help.

Nicolas Droux, who was part of the engineering team that developed network virtualization (project Crossbow), agreed to explain all this to me. After assuring me that he was not a biker, we got on the phone. And we turned our phone conversation into a nifty podcast.

Podcast: Why and How to Use Network Virtualization

This podcast is easier to absorb if you listen to it in two parts, each about 15 minutes long.

In the first half, Nicolas explains how the process of managing network traffic for multiple Solaris zones across a single Network Interface Card (NIC) naturally led to the development of virtual NICs. And then to the network-in-a-box concept, which allowed you for the first time to create complete network topologies and run them within a single host to experiment, simulate, or test.

In the second half, Nicolas provides more details about combining zones and VNICS to create a test environment. He explains how you can create a zone to function as a virtual network router, for instance, or a virtual load balancer. By isolating these network functions into zones, you can test how your application performs with different settings, and use DTrace to follow the application calls as they are routed through your virtual network. Once you have the optimum settings for the network and the application, you can deploy it in your data center.

Here are some more resources to help you understand network virtualization:

- Rick Ramsey





Monday Feb 13, 2012

OMG! What Did I Just Install?

Quick Quiz:

Q: What's in this Solaris 10 package: SUNWlibstdcxx4S?
A: You cheated. You googled it and found the link to the Oracle Solaris 10 documentation.

You're in luck, because each release of the Solaris 10 documentation contains a Package List for that release. For example:

Now try this:

Q: What's in this Solaris 11 package: compress/p7zip?
A: buzzer!

The Solaris 11 documentation does not include a package list. You can find mentions of some packages through google, but it's hit and miss. And you still don't get the rest of the info about the package that the Solaris 10 documentation included. So how do you find out what Solaris 11 packages you just installed? Here are two methods.

The pkg list Command

The pkg list command lists all the packages currently installed on your system. If you use it, redirect the output to a file so your screen doesn't wind up looking like a scene out of The Matrix. Since package naming is hierarchical, you are likely to find similar packages grouped together in the list. For example:

$ pkg list

You can just list a subset of the packages you are interested in:

$ pkg list driver/network/ethernet/*

By the way, to list all packages that are available for you to install, add -a to the pkg-list command. This example asks for the name of all the packages you can install in the editor group:

$ pkg list -a editor/*

One you have a list of the packages, you can use one of the commands below to get additional info about each package.

The pkg info and pkginfo Commands

The pkg info command provides detailed information about a particular IPS package. For example:
$ pkg info p7zip
          Name: compress/p7zip
       Summary: The p7zip compression and archiving utility
   Description: P7zip is a unix port of the 7-Zip utility.  It has support for
                numerous compression algorithms, including LZMA and LZMA2, as
                well as for various archive and compression file formats,
                including 7z, xz, bzip2, gzip, tar, zip (read-write) and cab,
                cpio, deb, lzh, rar, and rpm (read-only).
      Category: System/Core
         State: Installed
     Publisher: solaris
       Version: 9.20.1
 Build Release: 5.11
Packaging Date: Wed Oct 19 09:13:22 2011
          Size: 6.73 MB
          FMRI: pkg://solaris/compress/p7zip@9.20.1,5.11- 

Here's another example:

$ pkg info -r solaris-large-server
          Name: group/system/solaris-large-server
       Summary: Oracle Solaris Large Server
   Description: Provides an Oracle Solaris large server environment
      Category: Meta Packages/Group Packages
         State: Not installed
     Publisher: solaris
       Version: 0.5.11
 Build Release: 5.11
Packaging Date: Mon Feb 06 22:33:56 2012
          Size: 5.45 kB
          FMRI: pkg://solaris/group/system/solaris-large-server@0.5.11,5.11-

The pkginfo command does the same for any SVR4 packages you may have installed on the same system.

For More Information

- Rick Ramsey with Alta Elstad





Thursday Feb 09, 2012

Zoning Out

So much virtualization. So little time.

You can virtualize your OS ...

You can virtualize your network.

You can virtualize your storage.

Your server.

Even your highly-personalized desktop.

Me? I would like to virtualize my virtualization technologies. I want ONE server. With ONE OS. And ONE toolkit. That can actually be made up of hundreds or even thousands of virtual OS instances, networks, storage devices, desktops, aircraft carriers, or whatever they virtualize next.

You can't quite do that yet, but in Oracle Solaris 11 you can create zones that are easy to clone on other systems. That's a step in the right direction, I think. The following article describes how. In case you're not too confident in your ability to juggle zones, I added an article that helps you get started with zones in Oracle Solaris 11, and a link to more resources.

How to Configure Zones in Oracle Solaris 11 for Easy Cloning

The easiest way to create a bunch of zones is to clone them from one or more originals. That seems simple enough if you are going to clone them on the same instance of Solaris, but what if you'd like to clone them on other systems? In that case, you need to use virtual networks. You need to set up an entire network topology of servers, routers, switches, and firewalls that you can clone right along with the zones. Jeff McMeekin describes how.

How to Get Started Creating Zones in Oracle Solaris 11

If you used zones (containers) in Oracle Solaris 10, you'll appreciate this article. Because zones are more tightly integrated with the architecture of Oracle Solaris 11, they're easier to set up and manage. In this article, Duncan Hardie demonstrates how to perform basic operations with zones: first, how create a single zone using the command line, then how to add an application to a zone, and finally how to clone a zone.

More Zones Resources

  • Solaris 11 Virtualization Page - Links to demos, podcasts, technical articles, and more resources to help you understand zones and how to use them.
  • Zones Collection - See what zones-related content we've published (or found) since the dawn of time.
  • RSS Feeds Page - Subscribe to zones-related content through your favorite reader.

- Rick

Monday Jan 23, 2012

How to Survive the End of the World - Part II

In Part I of our Survival Guide for Civilization, I explained how to save civilization by identifying four distant planets that had the essential building blocks of civilization and combining them into a 5-node cluster with Earth:

Building BlockDistant Planet
civilizationbackup civilization

As mentioned in Part I, the resulting five-node cluster was actually more than what we wanted. Five distant planets! We'd rather not deal with the overhead of managing five distant planets. We prefer to keep managing just one planet, but make sure that can keep civilization humming. Turns out that we can accomplish that through the magic of virtualization. As you might expect, it's called a virtual cluster. (Really techie people call it a failover zone cluster.)

First, we create one zone on Earth for each building block:

Building BlockZone on Earth
civilizationcivilization zones

Then we create one failover zone on each distant planet for each zone on Earth:

Zone on EarthFailover ZoneDistant Planet
zone civilizationfailover zone civilization

In this way, each failover zone on its distant planet backs up one original zone on Earth. It's a great way to save civilization with much less overhead.

As it turns out, not only do we have an article that shows you how to create a cluster with Solaris Cluster 4.0, but we have one that shows you how to create a failover cluster, too:

How to Create A Failover Zone Cluster

Give it a try. It never hurts to be prepared.

- Rick

Tuesday Jan 03, 2012

Next OTN Sysadmin Day is on January 18

Our next OTN Sysadmin Day will be held on January 18 in Salt Lake City, Utah. As usual, we will have two tracks of hands-on-labs:

Time Session
8:00 am System Shakedown
9:00 am Oracle's Dual OS Strategy / Overview of OTN

Oracle Solaris Track

Oracle Linux Track

10:00 am HOL: ZFS HOL: managing packages, configuring services
11:30 am HOL: Exploring OS, network, and storage virtualization HOL on Storage Part I: managing storage and file systems
1:00 pm Lunch Break
2:00 pm HOL: Managing software with IPS HOL on Storage Part II: Device Mapper, BTRFS
3:00 pm Presentation: Oracle Enterprise Manager Ops Center 11g
4:00 pm Discussion: What are the most pressing issues for sysadmins today?
5:00 pm We all go home

Participants of previous OTN Sysadmin Days found the hands-on labs particularly valuable. You get to learn by doing. And what you get to do is install, configure, and manage the technologies of Oracle Solaris 11 and Oracle Linux in the same way as you would in the real world.

OTN Sysadmin Day in Salt Lake City is free, but you must register. Please stay for the feedback session at the end. They tend to be pretty spirited, and you might win a neat prize. Address:

Salt Lake City Marriott City Center
220 South State Street
Salt Lake City, UT 84111

If you'd like to see some pictures from the Sacramento event, go to the "OTN Sysadmin Day Sacramento" photo folder on the OTN Garage on Facebook.

To find out what there is to do is Salt Lake City and Utah, click on the ski page above. It will take you to National Geographic's Guide to Utah.

- Rick

Friday Dec 16, 2011

Two Sysadmin Articles Make OTN's Top 20

In the OTN blog, Justin reports that two sysadmin-related articles made OTN's top 20 list for 2011:

Number 2
Taking Your First Steps with Oracle Solaris 11
- by Brian Leonard and Glenn Brunette

Number 11
How I Simplified the Installation of Oracle Database on Oracle Linux
- by Ginny Henningsen


The good work of Brian, Glenn, and Ginny makes those of us in the Systems Community of OTN particularly proud because the number of OTN readers who are system admins and developers is dwarfed by the number who are Java developers. Even making the top 20 is notable. To Brian, Glenn, and Ginny, a heartfelt:

- Rick


Thursday Dec 15, 2011

How to Survive the End of the World - Part I

If you've been paying attention you'll probably agree that Earth will be destroyed any day, now.

That used to concern me.

But the more I understand clustering, the more I realize we can simply reconstitute civilization from individual slices of other planets in the Universe. The first thing we need to do is identify the building blocks of an advanced civilization. That should be relatively simple:


Next, find planets that had excellent examples of each building block:

Building BlockBackup Planet
civilizationbackup civilization

Those four planets plus Earth would be easy enough to arrange into a high-availability cluster if we downloaded and installed Oracle Solaris 11 and Oracle Solaris Cluster 4.0 on each planet, including Earth.

With Solaris Cluster 4.0, we could create a nice five-node cluster. Not only would the cluster provide the disaster recovery we're looking for, but it would actually help us create an elastic cloud of sorts, in which we could, for instance, tap into the beer of planet Bud during the Super Bowl or other times of dire need. See What's New to read about other cool things you can do with Solaris Cluster 4.0.

Creating a five-node cluster can get a bit tricky, but you can build up your skills by creating a smaller one, using the instructions in this OTN article:

How to Install and Configure a Two Node Cluster

Once you have the two-node setup figured out, you can move to the five-node setup. But the resulting five-node cluster is actually more than what we want, isn't it? It's a cluster of five entire planets, when what we're looking for is a slice of each planet. In an upcoming blog I'll summarize how to create a cluster from the slices of those individual planets. That's called a virtual cluster or a zone cluster, and it's very cool.

- Rick


Tuesday Nov 22, 2011

Screwed Up Again, Did Ya?

Your turn to wear the Cantaloupe Cap of Shame? Here's how to keep it from happening again:

  1. Figure out what data you need to archive
  2. Create a solid archive someplace safer than your iphone
  3. Get wicked fast at recovering your system.

Jesse Butler explains how to do all three for a system running Oracle Solaris 11:

How to Recover an Oracle Solaris 11 System

- Rick


Monday Nov 21, 2011

Is Oracle Solaris 11 Really Better Than Oracle Solaris 10?

If you want to be well armed for that debate, study this comparison of the commands and capabilities of each OS before the spittle starts flying:

How Solaris 11 Compares to Solaris 10

For instance, did you know that the command to configure your wireless network in Solaris 11 is not wificonfig, but dladm and ipadm for manual configuration, and netcfg for automatic configuration? Personally, I think the change was made to correct the grievous offense of spelling out "config" in the wificonfig command, instead of sticking to the widely accepted "cfg" convention, but loathe as I am to admit it, there may have been additional reasons for the change.

This doc was written by the Solaris Documentation Team, and it not only compares the major features and command sequences in Solaris 11 to those in Solaris 10, but it links you to the sections of the documentation that explain them in detail.

- Rick


Friday Nov 18, 2011

New Shell In Oracle Solaris 11

In Oracle Solaris 11, Korn Shell 93 (/usr/bin/ksh/ or usr/bin/ksh93) replaces both the Bourne Shell (/usr/bin/sh or /sbin/sh) and Korn Shell 88 (/usr/bin/ksh).

There are some incompatibilities between the shells. They are described in:


If a script has compatibility problems you can use the legacy shell by changing the she-bang line:

If this doesn't work

Use This

#!/bin/ksh #!/usr/sunos/bin/ksh
#!/usr/bin/ksh #!/usr/sunos/bin/ksh
#!/bin/sh #!/usr/sunos/bin/sh
#!/usr/bin/sh #!/usr/sunos/bin/sh
#!/sbin/sh #!/usr/sunos/bin/sh

- Mike Gerdts


Friday Nov 11, 2011

How to Find Out Which Devices Are Supported By Solaris 11

Image of monks gathering on the steps of the main hall in the Tashilhunpo Monastery is courtesy of Alison Whitear Travel Photography.

In his update of Brian Leonard's original Taking Your First Steps With Oracle Solaris, Glynn Foster walks you through the most basic steps required to get a version of Oracle Solaris 11 operational:

  • Installing Solaris (VirtualBox, bare metal, or multi-boot)
  • Managing users (root role, sudo command)
  • Managing services with SMF (svcs and svcadm)
  • Connecting to the network (with SMF or manually via dladm and ipadm)
  • Figuring out the directory structure
  • Updating software (with the IPS GUI or the pkg command)
  • Managing package repositories
  • Creating and managing additional boot environments

One of the things you'll have to consider as you install Solaris 11 on an x86 system is whether Solaris has the proper drivers for the devices on your system. In the section titled "Installing On Bare Metal as a Standalone System," Glynn shows you how to use the Device Driver utility that's included with the Graphical Installer.

However, if you want to get that information before you start installing Solaris 11 on your x86 system, you can consult the x86 Device List that's part of the Oracle Solaris Hardware Compatibility List (HCL). Here's how:

  1. Open the Device List.
  2. Scroll down to the table.
  3. Open the "Select Release" pull-down menu and pick "Solaris 11 11/11."
  4. Move over to the "Select Device Type" pull-down menu, and pick the device type. Or "All."

The table will list all the devices of that type that are supported by Solaris 11, including PCI ID and vendor.

In the coming days the Solaris Hardware Compatibility List will be updated with more Solaris 11 content. Stay tuned.

- Rick Ramsey

Thursday Nov 03, 2011

Solaris Security Resources on OTN

image courtesy of Faisal's photo stream on Flikr

An Overview of Oracle Solaris 10 Security Controls

Glenn Brunette describes how to more easily secure ZFS file systems compared to UFS file systems in this white paper, along the following lines:

UFS file systems have the following characteristics:

  • UFS file systems are directly tied to disk slices
  • Disk slice space is not easily expanded to increase capacity for UFS file systems because the disk generally contains other disk slices for active file systems
  • In some cases, you have to reinstall the OS to increase the size of the UFS root file system
  • UFS file system space is controlled by using UFS quotas

ZFS file systems have the following advantages:

  • ZFS uses a pooled storage model where all the file systems in pool use available pool space.
  • No relationship exists between ZFS file systems and disk slices except for the ZFS root file system.
  • A long-standing boot limitation is that a ZFS root file system must be created on a disk slice.
  • During installation, you define the size of the root pool disk slice or mirrored slices that contain the root file system.
  • The root file system contains separate directories of system-related components, such as etc, usr, and var, unless you specify that var is separate file system.
  • You can put a reservation and a quota on the /var file system to determine how much disk space is reserved for /var and how disk space it can consume.

For example, you might consider configuring a separate /var file system when installing a system that will be used as a mail server. This way, you can control the size of var with a quota so that root pool's space capacity is not exceeded.

In addition, if the ZFS root file system and the /var file system begin to exceed the pool's capacity, you can easily replace the root pool disk with a larger disk without having to unmount, restore a backup, or reinstall the root file system.

How should you configure your ZFS data sets for optimum security? Read Glenn's paper to find out. He not only provides security-based recommendations for ZFS, but also for:

  • Software installation clusters
  • Minimization
  • Non-executable stacks
  • Filesystems
  • USB Support
  • Plugable Authentication Modules
  • Service Management Facility
  • Cryptographic services management
  • Zones
  • And lots more

If you're inclined to read more about security, try these other two papers we published recently, plus OTN's security collection.

Oracle Solaris 11 Security: What's New for Developers

Recommendations for Creating Reduced or Minimal Solaris Configurations

OTN's Security Collection

- Rick Ramsey and Cindy Swearingen


Logan Rosenstein
and members of the OTN community


« November 2015
Blogs We Like