Sunday, January 11, 2009

Fast and simple Solaris Zone creation

- Run zonecfg, for the first zone configuration:
bash-3.00# zonecfg -z mynewzone
create -b
set zonepath=/zones/mynewzone
set autoboot=true
set ip-type=shared
add net
set address=192.168.0.122
set physical=nxge1
set defrouter=192.168.0.254
end

commit
exit

NOTE: we can also save the commands in a file and run zonecfg like this:
zonecfg -z mynewzone -f myzone.conf

- Create the zone directory and change the permissions:
mkdir /zones/mynewzone
chmod 700 /zones/mynewzone

The zone installation will fail if the zone directory will have the wrong permissions:
/zones/mynewzone must not be group readable.
/zones/mynewzone must not be group executable.
/zones/mynewzone must not be world readable.
/zones/mynewzone must not be world executable.
could not verify zonepath /zones/mynewzone because of the above errors.
zoneadm: zone mynewzone failed to verify
- Install the zone (takes time):
zoneadm -z mynewzone install

- Check the log:
grep -v "successfully installed" /zones/mynewzone/root/var/sadm/system/logs/install_log | grep -v ^$

- list the zones:
zoneadm list -cv

ID NAME STATUS PATH BRAND IP
0 global running / native shared
1 mynewzone running /zones/mynewzone native shared
- Boot the zone:
zoneadm -z
mynewzone boot

- Now we need do some last standard Solaris configurations, we will login to the zone console and follow the questions for basic configuratio (language, terminal, network...):
zlogin -C
mynewzone
If this step will be skipped many of the services won't start.
Done.

No comments: