On Oracle Solaris 11.2, we have already seen that kernel zones are completely isolated from the global zone. Oracle Solaris 11.2 kernel zones support both backward and forwards compatibility which means you can also run Oracle Solaris 11.3(When it release) on the kernel zone where your global zone can still with oracle Solaris 11.2 In most of the Solaris 11 projects, they may have already deployed the traditional native zones(Whole root) and now maybe they are thinking that how to convert the whole root zones as kernel zones. For those who want to convert the existing native zone to a kernel zone, please follow the below procedure.
1. Login to the global zone and list the installed zones. Here we will convert WHOLEROOT zone(native) as the kernel zone.
root@UA-GLOBAL:/UAIPS# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / solaris shared - UAKLZ1 installed - solaris-kz excl - WHOLEROOT installed /cloudS/WHOLEROOT solaris excl - UANEWZ1 installed /cloudS/UANEWZ1 solaris excl root@UA-GLOBAL:/UAIPS#
2. Here WHOLEROOT is the native zone. Create a unified archive for that local zone.
root@UA-GLOBAL:~# archiveadm create -z WHOLEROOT /UAIPS/WHOLEROOT.uar Unified Archive initialized: /UAIPS/WHOLEROOT.uar. Logging to: /system/volatile/archive_log.17649 Dataset discovery completey... Media creation completefor zone(s)... Archive stream creation completen... Archive creation completessembly... root@UA-GLOBAL:~#
3. Check the newly created unified archive information.
root@UA-GLOBAL:/UAIPS# ls -lrt /UAIPS/WHOLEROOT.uar
-rw-r--r-- 1 root root 1276774400 Aug 11 08:12 /UAIPS/WHOLEROOT.uar
root@UA-GLOBAL:/UAIPS# archiveadm info /UAIPS/WHOLEROOT.uar
Archive Information
Creation Time: 2014-08-11T02:38:16Z
Source Host: UA-GLOBAL
Architecture: i386
Operating System: Oracle Solaris 11.2 X86
Deployable Systems: WHOLEROOT
root@UA-GLOBAL:/UAIPS#
4. To know more about the archive, use option -v.
root@UA-GLOBAL:/UAIPS# archiveadm info -v /UAIPS/WHOLEROOT.uar
Archive Information
Creation Time: 2014-08-11T02:38:16Z
Source Host: UA-GLOBAL
Architecture: i386
Operating System: Oracle Solaris 11.2 X86
Recovery Archive: No
Unique ID: 0cc5c0db-0238-4420-e0c1-f9441f91de70
Archive Version: 1.0
Deployable Systems
'WHOLEROOT'
OS Version: 0.5.11
OS Branch: 0.175.2.0.0.42.2
Active BE: solaris-1
Brand: solaris
Size Needed: 720MB
Unique ID: b5223e93-d28c-402c-ecfa-b0fb8d1b19bd
AI Media: 0.175.2_ai_i386.iso
Root-only: Yes
root@UA-GLOBAL:/UAIPS#
5. Create a new kernel zone configuration using the below command.
root@UA-GLOBAL:/UAIPS# zonecfg -z UAKERZ2 create -t SYSsolaris-kz root@UA-GLOBAL:/UAIPS#
6. Make sure you have a minimum 16GB on the zone’s root path.
root@SAN:~# zonecfg -z UAKERZ2 info device
device:
match not specified
storage: dev:/dev/zvol/dsk/rpool/VARSHARE/zones/UAKERZ2/disk0
id: 0
bootpri: 0
root@SAN:~#
Note: Oracle Solaris kernel zones will not use ZFS dataset. It creates an emulated volume in ZFS that will act as a virtual disk. So there is no option to set the zone path. Instead of that, we have to set the device to install the kernel zone.
As per the above command output, this kernel zone will create a virtual disk under rpool. Let me modify it to another zpool since my rpool doesn’t have enough space to install it.
7. Here I am modifying the zone’s root disk path.
root@UA-GLOBAL:~# zonecfg -z UAKERZ2
zonecfg:UAKERZ2> select device id=0
zonecfg:UAKERZ2:device> set storage=dev:/dev/zvol/dsk/cloudS/UAKERZ2-disk0
zonecfg:UAKERZ2:device> info
device:
match not specified
storage: dev:/dev/zvol/dsk/cloudS/UAKERZ2-disk0
id: 0
bootpri: 0
zonecfg:UAKERZ2:device> end
zonecfg:UAKERZ2> commit
zonecfg:UAKERZ2> exit
root@UA-GLOBAL:~# zonecfg -z UAKERZ2 info device
device:
match not specified
storage: dev:/dev/zvol/dsk/cloudS/UAKERZ2-disk0
id: 0
bootpri: 0
root@UA-GLOBAL:~# zpool list cloudS
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
cloudS 23.8G 1.47G 22.3G 6% 1.00x ONLINE -
root@UA-GLOBAL:~#
8. Restore the whole root zone’s archive using the below command.
root@UA-GLOBAL:/UAIPS# zoneadm -z UAKERZ2 install -a /UAIPS/WHOLEROOT.uar Progress being logged to /var/log/zones/zoneadm.20140811T085531Z.UAKERZ2.install [Connected to zone 'UAKERZ2' console] Boot device: cdrom1 File and args: -B install=true,auto-shutdown=true -B aimanifest=/system/shared/ai.xml reading module /platform/i86pc/amd64/boot_archive...done. reading kernel file /platform/i86pc/kernel/amd64/unix...done. SunOS Release 5.11 Version 11.2 64-bit Copyright (c) 1983, 2014, Oracle and/or its affiliates. All rights reserved. Remounting root read/write Probing for device nodes ... Preparing image for use Done mounting image Configuring devices. Hostname: solaris Using specified install manifest : /system/shared/ai.xml solaris console login: Automated Installation started The progress of the Automated Installation will be output to the console Detailed logging is in the logfile at /system/volatile/install_log Press RETURN to get a login prompt at any time. 08:58:17 Install Log: /system/volatile/install_log 08:58:17 Using XML Manifest: /system/volatile/ai.xml 08:58:17 Using profile specification: /system/volatile/profile 08:58:17 Starting installation. 08:58:17 0% Preparing for Installation 08:58:18 100% manifest-parser completed. 08:58:18 100% None 08:58:18 0% Preparing for Installation 08:58:19 1% Preparing for Installation 08:58:19 2% Preparing for Installation 08:58:19 3% Preparing for Installation 08:58:19 4% Preparing for Installation 08:58:20 5% archive-1 completed. 08:58:21 8% target-discovery completed. 08:58:24 Pre-validating manifest targets before actual target selection 08:58:24 Selected Disk(s) : c1d0 08:58:24 Pre-validation of manifest targets completed 08:58:24 Validating combined manifest and archive origin targets 08:58:24 Selected Disk(s) : c1d0 08:58:24 9% target-selection completed. 08:58:24 10% ai-configuration completed. 08:58:24 9% var-share-dataset completed. 08:58:30 10% target-instantiation completed. 08:58:30 10% Beginning archive transfer 08:58:30 Commencing transfer of stream: b5223e93-d28c-402c-ecfa-b0fb8d1b19bd-0.zfs to rpool 08:58:39 14% Transferring contents 08:58:41 20% Transferring contents 08:58:43 21% Transferring contents 08:58:45 28% Transferring contents 08:58:51 35% Transferring contents 08:58:56 37% Transferring contents 08:59:00 40% Transferring contents 08:59:02 45% Transferring contents 08:59:06 52% Transferring contents 08:59:10 62% Transferring contents 08:59:16 66% Transferring contents 08:59:21 74% Transferring contents 08:59:23 75% Transferring contents 08:59:27 80% Transferring contents 08:59:31 89% Transferring contents 09:00:32 Completed transfer of stream: 'b5223e93-d28c-402c-ecfa-b0fb8d1b19bd-0.zfs' from file:///system/shared/uafs/OVA 09:00:35 Archive transfer completed 09:00:54 90% generated-transfer-867-1 completed. 09:00:54 90% Beginning IPS transfer 09:00:54 Setting post-install publishers to: 09:00:54 solaris 09:00:54 origin: file:///UAIPS/repo/ 09:00:54 90% generated-transfer-867-2 completed.
9. Once the zone installation is completed, just boot the zone and log in to the zone’s console for setting the hostname and IP address.
root@UA-GLOBAL:/UAIPS# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / solaris shared - UAKLZ1 installed - solaris-kz excl - WHOLEROOT installed /cloudS/WHOLEROOT solaris excl - UANEWZ1 installed /cloudS/UANEWZ1 solaris excl - UAKERZ2 installed - solaris-kz excl root@UA-GLOBAL:/UAIPS# root@UA-GLOBAL:/UAIPS# zoneadm -z UAKERZ2 boot
10. Login to the zone’s console to complete the installation.
root@UA-GLOBAL:/UAIPS# zlogin -C UAKERZ2
System Configuration Summary
Review the settings below before continuing. Go back (F3) to make
changes.
Computer name: UAKERZ2
Network:
Manual Configuration: net0/v4
IP Address: 192.168.2.82/24
Netmask: 255.255.255.0
Time Zone: Asia/Kolkata
Locale:
Default Language: English
Language Support: English (United States)
No user account
Support configuration:
Not generating a Support profile as OCM and ASR services are not
installed.
F2_Apply F3_Back F6_Help F9_Quit
SC profile successfully generated as:
etc/svc/profile/sysconfig/sysconfig-20140811-083944/sc_profile.xml
Exiting System Configuration Tool. Log is available at:
/system/volatile/sysconfig/sysconfig.log.7288
Hostname: UAKERZ2
UAKERZ2 console login:
We have successfully migrated the whole root zone(native) as oracle Solaris kernel zone using the unified archive. Kernel zones are very useful when you want to run the zone on its own patch level.
We have already seen the installation of the kernel zone using IPS repository. Feel free to check it.
Share it! Comment it !! Be Sociable !!!
Boot says
Hell yeah dude. This is sick!
Lingeswaran R says
You can just disconnect the zone’s console .and login using zlogin zone.
Just read the below article to know more about solaris 11 root login .
http://www.unixrock.com/2014/07/how-to-allow-root-direct-login-in.html
Shubham Agarwal says
Hey what to type after the console login prompt appears for the first time after the last step mentioned above
root is defined as a role so iam not able to login
what to do , iam not able to login at the console login prompt ..