Go to main content

Using Unified Archives for System Recovery and Cloning in Oracle® Solaris 11.3

Exit Print View

Updated: October 2017

Unified Archive Types

A Unified Archive type is a collection of archive attributes which serve a common use case. The two types of Unified Archive types are clone and recovery.

Both clone archives and recovery archives are created and managed by the archiveadm command. This command provides for selection of zones to be included or excluded from an archive, as well as allowing for ZFS dataset exclusion.

By default, an archive includes all datasets associated with the selected zones, unless they are specifically excluded during the archive creation process. For a non-global zone, the archive will contain the zone boot environment datasets and all delegated datasets assigned to it. For a global zone, the boot environment datasets are archived as well as all datasets not associated with a zone. Note that process includes entire top-down pools. Any number of datasets may be excluded from the archive. See Unified Archives Creation for more information.

Clone Archives

A clone archive is based upon the system's active boot environment (BE) at the time the archive is created. Therefore, only one BE may be archived at a time. The clone archive type is intended for rapid creation and deployment of custom images. You can create an archive that includes both the global and non-global zones. The data for each archived system is stored independently, which enables each system to be independently deployable. To achieve independent deployment, clone relationships are not preserved within clone archives. Therefore, a cloned zone within a clone an archive will take up roughly the same amount of space as the original zone from which it is cloned. A clone archive is the default type of archive.

Also, a clone archive does not include any of the system configuration information from the OS instance, as well as any sensitive data such as SSH keys or passwords. Any system deployed from a clone archive will have all of the file systems and applications as the cloned system, but will not have the same host name, for instance. The system configuration information and sensitive data is only preserved in recovery archives.

During archive creation, some content is reverted to its pristine state using package revert tags. During clone archive creation, the system:dev-init and system:clone revert tags are used. The effect is that device configuration is cleared. Clone archives have instance-specific information like log file content and some configuration files reverted to their initial state.

Recovery Archives

A recovery archive is a full-system archive containing all boot environments from all included instances. Recovery archives consist of a single deployable system regardless of the OS instances which comprise it. While a recovery archive of a global zone may contain non-global zones that are installed within it, the archive itself is treated as a single system. A recovery archive can therefore preserve zone clone relationships, unlike clone archives.

Some inactive boot environments in a recovery archive may not be bootable. The active boot environment is the only fully prepared boot environment. While some inactive BEs may be bootable, they are archived mainly for data recovery. Recovery archives contain a single deployable system. The system may include a global zone, a non-global zone, or a global zone with one or more non-global zones.

A recovery archive is intended to be used for recovery operations, as might be needed in case of a hardware failure. These archives may ideally be deployed as part of a more comprehensive disaster recovery solution. A recovery archive may also be used in a system migration from legacy hardware to new hardware or to virtual systems. Archives are portable across all supported platform models of a particular instruction set architecture (ISA).

During archive creation, some content is reverted to its pristine state using package revert tags. During recovery archive creation, the system:dev-init revert tag is used, which clears device configuration information.