SUMMARY: 

	This fast-track enhances the Solaris zones [1] subsystem to address
	an existing RFE [2] requesting the ability to do dry-runs of zone
	migration [3].

	We will enhance the zone detach subcommand so that it can generate the
	manifest without actually detaching the zone.  We will enhance the zone
	attach subcommand to read a manifest and validate the migration without
	actually doing an attach.

	Patch binding is requested for the new sub-command options and the
	stability of these interfaces is "evolving".

DETAILS:

    Overview

	The zone migration PSARC case [3] describes the procedure for
	migrating a zone from one machine to another.

	The procedure for validating a migration with the new dry-run
	feature is similar to a full migration.  It involves the following
	steps:

        1. Generate the manifest on the source host.  This leaves the zone on
	   the originating system in its current state (installed, running,
	   etc.).  The zone manifest is sent to stdout.  The sysadmin can
	   direct this to a file or pipe it to a remote command that will
	   immediately validate the target host.

        2. If the sysadmin did not pipe the output, then the sysdmin
	   administrator copies the manifest to the new host system.

        3. Validating the zone migration.  This will validate that the host is
	   capable of supporting the zone.  The validation is described in [3].
	   The zone does *not* have to be configured on the new host before
	   before doing the dry-run attach.  In addition, we will validate
	   the zone configuration and inform the user of any issues (e.g. the
	   network device is incompatible).

    New zoneadm sub-command options

	We will add a '-n' option (no execute) to the zoneadm 'detach' and
	'attach' subcommands.

	The syntax for dry-run detaching a zone will be:

		# zoneadm -z my-zone detach -n

	The syntax for dry-run attaching a zone will be:

		# zoneadm attach -n path_to_manifest

	During the dry-run attach we perform the standard validation that
	is normally done prior to a full attach as well as the validation of
	the zone configuration.  The path can be '-' to specify stdin.

EXAMPLE:

	# zoneadm -z my-zone detach -n | ssh remotehost zoneadm attach -n -

EXPORTED INTERFACES:

	New zoneadm subcommand options
		detach [-n]		Evolving
		attach [-n path]	Evolving

REFERENCES

1. <a href="../../../2002/174/">PSARC 2002/174</a> Virtualization and Namespace Isolation in Solaris
2. <a href="http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6401645">6401645</a> RFE: need support for pre-validating a zone migration
3. <a href="../../../2006/030/">PSARC 2006/030</a> Zone migration


