How to Install a Kernel Zone by Using an AI Manifest

Review the requirements and guidelines in Using an AI Manifest to Install a Kernel Zone.

This procedure provides the zoneadm command to install a kernel zone with an AI manifest and detailed examples.

For additional information about developing and customizing an AI manifest, see Chapter 5, Specifying Criteria for AI Manifests and System Configuration Profiles in Customizing Automated Installations With Manifests and Profiles.

  1. On the kernel zone host, become an administrator.
  2. Install the kernel zone by using a specified AI manifest.
    global$ zoneadm -z kzone install -m path-to-manifest
  3. Review the installation logs.

    For their location, see Installing a Kernel Zone.

Example 3-2 Installing a Kernel Zone by Using a Separate Automated Installer (AI) Manifest

This example shows an installation of the kernel zone kzone1 using the non-default Automated Install (AI) manifest /var/tmp/kz_manifest.xml.

global$ pfbash zoneadm -z kzone1 install -m /var/tmp/kz_manifest.xml
Progress being logged to /var/log/zones/zoneadm.20146T195713Z.kzone1.install
pkg cache: Using /var/pkg/publisher.
 Install Log: /system/volatile/install.10708/install_log
 AI Manifest: /tmp/zoneadm10343.5la4Vu/devel-ai-manifest.xml
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml
Installation: Starting ...

  Creating IPS image
   Startup: Retrieving catalog 'solaris' ... Done
   Startup: Caching catalogs ... Done
   Startup: Refreshing catalog 'solaris' ... Done
  Installing packages from:
      solaris
          origin:  http://pkg.oracle.com/solaris/release/
   Startup: Linked image publisher check ... Startup: Refreshing catalog 'solaris' ... Done
  Planning: Solver setup ... Done
  Planning: Running solver ... Done
  Planning: Finding local manifests ... Done
  Planning: Fetching manifests:   0/501  0% complete
  Planning: Fetching manifests: 501/501  100% complete
  Planning: Package planning ... Done
  Planning: Merging actions ... Done
  Planning: Checking for conflicting actions ... Done
  Planning: Consolidating action changes ... Done
  Planning: Evaluating mediators ... Done
  Planning: Planning completed in 32.07 seconds
  The following licenses have been accepted and not displayed.
  Please review the licenses for the following packages post-install:
    consolidation/osnet/osnet-incorporation
  Package licenses may be viewed using the command:
    pkg info --license <pkg_fmri>

  Download:     0/64687 items    0.0/569.3MB  0% complete
  Download:   931/64687 items    5.8/569.3MB  1% complete (1.2M/s)
  ...
  Download: 64589/64687 items  569.2/569.3MB  99% complete (825k/s)
  Download: Completed 569.25 MB in 358.54 seconds (1.6M/s)
   Actions:     1/88614 actions (Installing new actions)
   Actions: 19471/88614 actions (Installing new actions)
   ...
   Actions: 86994/88614 actions (Installing new actions)
   Actions: 87128/88614 actions (Installing new actions)
   Actions: Completed 88614 actions in 73.71 seconds.
   Installation: Succeeded
   Done: Installation completed in 342.508 seconds.

Log saved in non-global zone as /zones/kzone1/root/var/log/zones/zoneadm.20146T195713Z.kzone1.install

Example 3-3 Installing a Kernel Zone Using an Automated Installer (AI) Manifest for a Unified Archive (UAR) with Non-Root Pool

If a UAR contains datasets in a non-root pool and the AI manifest does not account for the non-root pool, you might see the following error:

ERROR: Archive contains non-root data, please use [-m manifest]

The following sample AI manifest is for installing from a UAR located at the path /Extpool/Archive/Clone-T4.uar. This archive was created on a system that has a non-root zpool named tank.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE auto_install SYSTEM "file:///usr/share/install/ai.dtd.1">
<auto_install>
  <ai_instance name="default">
    <target name="origin">
      <disk in_zpool="rpool" in_vdev="rpool-none" whole_disk="true">
        <disk_name name="c1d0" name_type="ctd"/>
      </disk>
      <disk in_zpool="tank" in_vdev="tank-none" whole_disk="true">
        <disk_name name="c1d1" name_type="ctd"/>
      </disk>
      <logical noswap="false" nodump="false">
        <zpool name="rpool" action="create" is_root="true"
            mountpoint="/rpool">
          <vdev name="rpool-none" redundancy="none"/>
        </zpool>
        <zpool name="tank" action="create" is_root="false"
            mountpoint="/tank">
          <vdev name="tank-none" redundancy="none"/>
        </zpool>
      </logical>
    </target>
    <software type="ARCHIVE">
      <source>
        <file uri="file:///Extpool/Archive/Clone-T4.uar"/>
      </source>
      <software_data action="install">
        <name>*</name>
      </software_data>
    </software>
  </ai_instance>
</auto_install>

If the manifest file is stored in /tmp/ai.xml and storage devices with IDs 0 and 1 exist in the kzone1 zone configuration, you can use the following command to install in the kernel zone kzone1:

global$ zoneadm -z kzone1 install -m /tmp/ai.xml