<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Otmanix' Blog &#187; svm</title>
	<atom:link href="http://otmanix.de/tag/svm/feed/" rel="self" type="application/rss+xml" />
	<link>http://otmanix.de</link>
	<description>Wissenswertes und Belangloses aus dem Leben eines Admins</description>
	<lastBuildDate>Thu, 26 Apr 2012 22:39:02 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>flying zones f&#252;r Arme &#8211; Teil 2: Liveupgrade mit Solaris10 Update6 und ZFS-root</title>
		<link>http://otmanix.de/2009/04/10/flying-zones-fuer-arme-teil-2-liveupgrade-mit-solaris10-update6-und-zfs-root/</link>
		<comments>http://otmanix.de/2009/04/10/flying-zones-fuer-arme-teil-2-liveupgrade-mit-solaris10-update6-und-zfs-root/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 19:10:28 +0000</pubDate>
		<dc:creator>otmanix</dc:creator>
				<category><![CDATA[EMC]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Virtualisierung]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[ZFS]]></category>
		<category><![CDATA[Container]]></category>
		<category><![CDATA[Liveupgrade]]></category>
		<category><![CDATA[recommended patch cluster]]></category>
		<category><![CDATA[svm]]></category>
		<category><![CDATA[upgrade-on-attach]]></category>
		<category><![CDATA[zones]]></category>

		<guid isPermaLink="false">http://otmanix.de/?p=1166</guid>
		<description><![CDATA[Zuletzt habe ich dar&#252;ber geschrieben wie man mit Vmware Server 2.01 und Solaris10 ein sog. &#8220;flying zones&#8221;-Szenario aufbauen kann. D.h. man installiert eine Solaris-Zone auf einer shared disk und kann dann  eine sog. Zonenmigration durchf&#252;hren. D.h. die Zone und die &#8230; <a href="http://otmanix.de/2009/04/10/flying-zones-fuer-arme-teil-2-liveupgrade-mit-solaris10-update6-und-zfs-root/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Zuletzt habe ich dar&#252;ber geschrieben wie man mit Vmware Server 2.01 und Solaris10 ein sog. &#8220;flying zones&#8221;-Szenario aufbauen kann. D.h. man installiert eine Solaris-Zone auf einer shared disk und kann dann  eine sog. Zonenmigration durchf&#252;hren. D.h. die Zone und die Filesysteme der Zone werden am ersten Rechner exportiert und am zweiten Rechner wird das Ganze dann wieder importiert.</p>
<h3>serielles Patching und Zonen</h3>
<p>Ein leidiges Thema, insbesondere bei Solaris Zonen, ist das Installieren von Patches. In regelm&#228;&#223;igen Abst&#228;nden wird man z.B. dazu angehalten das &#8220;recommended patch cluster&#8221; zu installieren. In der Regel befinden sich Kernelpatches in den Patch-Sammlungen, so dass eine Installation im Single-User-Modus erforderlich ist. Zudem m&#252;ssen auch alle Zonen beim Patchen verf&#252;gbar sein (nicht detached!). Das Standard-Patchinstallationstool von Sun arbeitet dann die Patchinstallation sequentiell ab. Bei einer gr&#246;&#223;eren Anzahl Zonen kann das u.U. zeitkrisch werden.</p>
<h3>Parallel Patching, Solaris Liveupgrade, Neuerungen in Solaris10u6 10/08</h3>
<p>Gute Neuigkeiten gibt es bei <a title="parallel patching" href="http://blogs.sun.com/JeffV/entry/patching_zones_goes_zoom" target="_blank">Jeff Victor</a>. Demn&#228;chst soll also eine neue Version des patchadd-Kommandos das parallele Patchen von Zonen beherrschen. Aber auch das ist u.U. noch zu zeitinsiv. Seit l&#228;ngerem gibt es bereits die Software Solaris Liveupgrade, die zum Patchen oder Upgraden auf ein neues Release benutzt werden kann. Dabei wird zun&#228;chst vom laufenden Solaris eine Kopie erzeugt, ein sog. boot environment (BE), auf der dann die Patches bzw. das Upgrade angewendet werden. Das ganze passiert im normalen Onlinebetrieb. Ist die Aktionen abgeschlossen, wird vom alternativen BE gebootet. Gibt es &#196;rger hat man ein Fallback auf das verherige BE.</p>
<p>Zun&#228;chst wurde Liveupgrade &#8220;zone aware&#8221; gemacht. D.h. auch Zonen k&#246;nnen seit einiger Zeit damit aktualisiert werden. Im Solaris10u6 kam dann die Unterst&#252;tzung f&#252;r ZFS-root (ZFS-Pool als Bootumgebung f&#252;r das Rootfilesystem) und &#8220;upgrade-on-attach&#8221;. War eine Zone beim Upgrade detached und hat somit einen &#228;lteren Stand kann nun beim Attach die Aktualisierung nachgeholt werden.</p>
<p>Infos zum Thema gibt es hier:</p>
<p><a title="S10u6 lu" href="http://docs.sun.com/app/docs/doc/820-5238/esqbt?a=browse" target="_blank">Solaris 10 10/08 Installation Guide: Solaris Live Upgrade and Upgrade Planning</a></p>
<p><a title="lu" href="http://sunsolve.sun.com/search/document.do?assetkey=1-61-206844-1" target="_blank">Solution  206844: Solaris[TM] Live Upgrade Software: Minimum Patch Requirements </a></p>
<h3>Solaris Liveupgrade bei S10u6 im Praxiseinsatz</h3>
<p>Ich m&#246;chte also nun die Umgebung aus dem letzten Artikel auf Basis Solaris10u6 mit Hilfe von Liveupgrade auf das aktuelle recommended patch cluster patchen.</p>
<p>bash-3.00# <strong>cat /etc/release</strong><br />
<span style="color: #008000;">Solaris 10 10/08 s10x_u6wos_07b X86</span><br />
Copyright 2008 Sun Microsystems, Inc.  All Rights Reserved.<br />
Use is subject to license terms.<br />
Assembled 27 October 2008</p>
<p># <strong>zoneadm list -cv</strong><br />
ID NAME             STATUS     PATH                           BRAND    IP<br />
0 global           running    /                              native   shared<br />
1 zone1            running    /zone1                         native   shared</p>
<p># <strong>lustatus</strong><br />
ERROR: No boot environments are configured on this system<br />
ERROR: cannot determine list of all boot environment names</p>
<p># <strong>lucreate -n s10u6_recpatches</strong><br />
Checking GRUB menu&#8230;<br />
Analyzing system configuration.<br />
No name for current boot environment.<br />
INFORMATION: The current boot environment is not named &#8211; assigning name &lt;s10x_u6wos_07b&gt;.<br />
Current boot environment is named &lt;s10x_u6wos_07b&gt;.<br />
Creating initial configuration for primary boot environment &lt;s10x_u6wos_07b&gt;.<br />
The device &lt;/dev/dsk/c1t0d0s0&gt; is not a root device for any boot environment; cannot get BE ID.<br />
PBE configuration successful: PBE name &lt;s10x_u6wos_07b&gt; PBE Boot Device &lt;/dev/dsk/c1t0d0s0&gt;.<br />
Comparing source boot environment &lt;s10x_u6wos_07b&gt; file systems with the<br />
file system(s) you specified for the new boot environment. Determining<br />
which file systems should be in the new boot environment.<br />
Updating boot environment description database on all BEs.<br />
Updating system configuration files.<br />
Creating configuration for boot environment &lt;s10u6_recpatches&gt;.<br />
Source boot environment is &lt;s10x_u6wos_07b&gt;.<br />
Creating boot environment &lt;s10u6_recpatches&gt;.<br />
Cloning file systems from boot environment &lt;s10x_u6wos_07b&gt; to create boot environment &lt;s10u6_recpatches&gt;.<br />
Creating snapshot for &lt;rpool/ROOT/s10x_u6wos_07b&gt; on &lt;rpool/ROOT/s10x_u6wos_07b@s10u6_recpatches&gt;.<br />
Creating clone for &lt;rpool/ROOT/s10x_u6wos_07b@s10u6_recpatches&gt; on &lt;rpool/ROOT/s10u6_recpatches&gt;.<br />
Setting canmount=noauto for &lt;/&gt; in zone &lt;global&gt; on &lt;rpool/ROOT/s10u6_recpatches&gt;.<br />
Creating snapshot for &lt;zone1&gt; on &lt;zone1@s10u6_recpatches&gt;.<br />
<span style="color: #ff0000;">cannot create &#8216;.&#8217;: missing dataset name</span><br />
Creating clone for &lt;zone1@s10u6_recpatches&gt; on &lt;zone1-s10u6_recpatches&gt;.<br />
<span style="color: #ff0000;">ERROR: cannot create &#8216;zone1-s10u6_recpatches&#8217;: missing dataset name<br />
ERROR: Unable to clone &lt;&gt; on &lt;&gt;.<br />
/usr/lib/lu/luclonefs: zone1@s10u6_recpatches: not found<br />
cannot open &#8216;zone1-s10u6_recpatches&#8217;: dataset does not exist<br />
cannot open &#8216;zone1-s10u6_recpatches&#8217;: dataset does not exist<br />
cannot open &#8216;zone1-s10u6_recpatches&#8217;: dataset does not exist</span><br />
Saving existing file &lt;/boot/grub/menu.lst&gt; in top level dataset for BE &lt;s10u6_recpatches&gt; as &lt;mount-point&gt;//boot/grub/menu.lst.prev.<br />
File &lt;/boot/grub/menu.lst&gt; propagation successful<br />
Copied GRUB menu from PBE to ABE<br />
No entry for BE &lt;s10u6_recpatches&gt; in GRUB menu<br />
Population of boot environment &lt;s10u6_recpatches&gt; successful.<br />
Creation of boot environment &lt;s10u6_recpatches&gt; successful.</p>
<p># <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    yes       no     -<br />
s10u6_recpatches           yes      no     no        yes    -</p>
<p>bash-3.00# <strong>zpool list</strong><br />
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT<br />
rpool  7.94G  6.78G  1.15G    85%  ONLINE  -<br />
zone1  1.98G   546M  1.45G    26%  ONLINE  -</p>
<p>bash-3.00# <strong>zfs list</strong><br />
NAME                                         USED  AVAIL  REFER  MOUNTPOINT<br />
rpool                                       7.07G   766M  38.5K  /rpool<br />
rpool/ROOT                                  5.68G   766M    18K  legacy<br />
rpool/ROOT/s10u6_recpatches                  156K   766M  3.77G  /a/<br />
rpool/ROOT/s10x_u6wos_07b                   5.68G   766M  5.67G  /<br />
rpool/ROOT/s10x_u6wos_07b@s10u6_recpatches  12.0M      -  3.77G  -<br />
rpool/dump                                   900M   766M   900M  -<br />
rpool/export                                  37K   766M    19K  /export<br />
rpool/export/home                             18K   766M    18K  /export/home<br />
rpool/swap                                   512M  1.03G   222M  -<br />
zone1                                        546M  1.42G   545M  /zone1<br />
zone1@s10u6_recpatches                       619K      -   545M  -</p>
<p>bash-3.00# <strong>cd /patches/10_x86_Recommended</strong></p>
<p>bash-3.00# <strong>luupgrade -n s10u6_recpatches -s /patches/10_x86_Recommended -t `cat  patch_order`</strong><br />
System has findroot enabled GRUB<br />
No entry for BE &lt;s10u6_recpatches&gt; in GRUB menu<br />
Validating the contents of the media &lt;/patches/10_x86_Recommended&gt;.<br />
The media contains 152 software patches that can be added.<br />
Mounting the BE &lt;s10u6_recpatches&gt;.<br />
<span style="color: #ff0000;">ERROR: unable to mount zones:<br />
/a/zone1 must not be group readable.<br />
/a/zone1 must not be group executable.<br />
/a/zone1 must not be world readable.<br />
/a/zone1 must not be world executable.</span><br />
<span style="color: #ff0000;">could not verify zonepath /a/zone1 because of the above errors.<br />
zoneadm: zone zone1 failed to verify<br />
ERROR: unable to mount zone &lt;zone1&gt; in &lt;/a&gt;<br />
ERROR: unmounting partially mounted boot environment file systems<br />
ERROR: cannot mount boot environment by icf file &lt;/tmp/.luupgrade.beicf.4645&gt;<br />
cat: cannot open /tmp/.luupgrade.tmp.4645<br />
ERROR: Unable to mount ABE disk slices: &lt; &gt;.<br />
ERROR: Unable to mount the BE &lt;s10u6_recpatches&gt;.</span></p>
<p>bash-3.00# <strong>lumount s10u6_recpatches /a</strong><br />
<span style="color: #ff0000;">ERROR: unable to mount zones:<br />
/a/zone1 must not be group readable.<br />
/a/zone1 must not be group executable.<br />
/a/zone1 must not be world readable.<br />
/a/zone1 must not be world executable.<br />
could not verify zonepath /a/zone1 because of the above errors.<br />
zoneadm: zone zone1 failed to verify<br />
ERROR: unable to mount zone &lt;zone1&gt; in &lt;/a&gt;<br />
ERROR: unmounting partially mounted boot environment file systems<br />
ERROR: No such file or directory: error unmounting &lt;rpool/ROOT/s10u6_recpatches&gt;<br />
ERROR: umount: warning: rpool/ROOT/s10u6_recpatches not in mnttab<br />
umount: rpool/ROOT/s10u6_recpatches no such file or directory<br />
ERROR: cannot unmount &lt;rpool/ROOT/s10u6_recpatches&gt;<br />
ERROR: cannot mount boot environment by name &lt;s10u6_recpatches&gt;</span></p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    yes       no     -<br />
s10u6_recpatches           yes      no     no        yes    -</p>
<p>bash-3.00# <strong>ludelete s10u6_recpatches</strong><br />
System has findroot enabled GRUB<br />
Checking if last BE on any disk&#8230;<br />
<span style="color: #ff0000;">ERROR: unable to mount zones:<br />
/.alt.s10u6_recpatches/zone1 must not be group readable.<br />
/.alt.s10u6_recpatches/zone1 must not be group executable.<br />
/.alt.s10u6_recpatches/zone1 must not be world readable.<br />
/.alt.s10u6_recpatches/zone1 must not be world executable.<br />
could not verify zonepath /.alt.s10u6_recpatches/zone1 because of the above errors.<br />
zoneadm: zone zone1 failed to verify<br />
ERROR: unable to mount zone &lt;zone1&gt; in &lt;/.alt.s10u6_recpatches&gt;<br />
ERROR: unmounting partially mounted boot environment file systems<br />
ERROR: No such file or directory: error unmounting &lt;rpool/ROOT/s10u6_recpatches&gt;<br />
ERROR: umount: warning: rpool/ROOT/s10u6_recpatches not in mnttab<br />
umount: rpool/ROOT/s10u6_recpatches no such file or directory<br />
ERROR: cannot unmount &lt;rpool/ROOT/s10u6_recpatches&gt;<br />
ERROR: cannot mount boot environment by name &lt;s10u6_recpatches&gt;<br />
ERROR: Failed to mount BE &lt;s10u6_recpatches&gt;.<br />
ERROR: Failed to mount BE &lt;s10u6_recpatches&gt;.<br />
cat: cannot open /tmp/.lulib.luclb.dsk.5254.s10u6_recpatches<br />
ERROR: This boot environment &lt;s10u6_recpatches&gt; is the last BE on the above disk.<br />
ERROR: Deleting this BE may make it impossible to boot from this disk.<br />
ERROR: However you may still boot solaris if you have BE(s) on other disks.<br />
ERROR: You *may* have to change boot-device order in the BIOS to accomplish this.<br />
ERROR: If you still want to delete this BE &lt;s10u6_recpatches&gt;, please use the force option (-f).<br />
Unable to delete boot environment.</span></p>
<p>bash-3.00# <strong>ludelete -f s10u6_recpatches</strong><br />
System has findroot enabled GRUB<br />
No entry for BE &lt;s10u6_recpatches&gt; in GRUB menu<br />
Determining the devices to be marked free.<br />
Updating boot environment configuration database.<br />
Updating boot environment description database on all BEs.<br />
Updating all boot environment configuration databases.<br />
Boot environment &lt;s10u6_recpatches&gt; deleted.</p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    yes       no     -</p>
<p>bash-3.00# <strong>zfs list</strong><br />
NAME                        USED  AVAIL  REFER  MOUNTPOINT<br />
rpool                      7.11G   715M  38.5K  /rpool<br />
rpool/ROOT                 5.73G   715M    18K  legacy<br />
rpool/ROOT/s10x_u6wos_07b  5.73G   715M  5.73G  /<br />
rpool/dump                  900M   715M   900M  -<br />
rpool/export                 37K   715M    19K  /export<br />
rpool/export/home            18K   715M    18K  /export/home<br />
rpool/swap                  512M   984M   243M  -<br />
zone1                       546M  1.42G   545M  /zone1<br />
<span style="color: #ff0000;">zone1@s10u6_recpatches      619K      -   545M  -</span></p>
<p>bash-3.00# <strong>zfs destroy zone1@s10u6_recpatches</strong></p>
<p>bash-3.00# <strong>zfs list</strong><br />
NAME                        USED  AVAIL  REFER  MOUNTPOINT<br />
rpool                      7.11G   715M  38.5K  /rpool<br />
rpool/ROOT                 5.73G   715M    18K  legacy<br />
rpool/ROOT/s10x_u6wos_07b  5.73G   715M  5.73G  /<br />
rpool/dump                  900M   715M   900M  -<br />
rpool/export                 37K   715M    19K  /export<br />
rpool/export/home            18K   715M    18K  /export/home<br />
rpool/swap                  512M   984M   243M  -<br />
zone1                       545M  1.42G   545M  /zone1</p>
<p>Na bravo! Das war ja der totale Reinfall&#8230;</p>
<p>Scheinbar kommt Liveupgrade nicht damit klar, dass die Zone in einem seperaten ZFS-Pool liegt. Das ist aber f&#252;r die Zonenmigration unabdingbar.</p>
<h3>neuer Versuch &#8211; Liveupgrade ohne Zonen, nur f&#252;r ZFS-root</h3>
<p>Dazu also erst einmal die Zone1 verschwinden lassen&#8230;</p>
<p>bash-3.00# <strong>zoneadm -z zone1 detach</strong></p>
<p>bash-3.00# <strong>metaset -s zone1data -r</strong></p>
<p>bash-3.00# <strong>metaset</strong><br />
Set name = zone1data, Set number = 1<br />
Host                Owner<br />
horst1<br />
horst2<br />
Drive    Dbase<br />
c2t1d0   Yes<br />
c3t1d0   Yes</p>
<p>bash-3.00#<strong> zpool export zone1</strong></p>
<p>bash-3.00# <strong>zpool list</strong><br />
NAME      SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT<br />
patches  7.94G  2.69G  5.25G    33%  ONLINE  -<br />
rpool    7.94G  4.93G  3.01G    62%  ONLINE  -</p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    yes       no     -</p>
<p>bash-3.00#<strong> lucreate -n s10u6_recpatches</strong><br />
Checking GRUB menu&#8230;<br />
System has findroot enabled GRUB<br />
Analyzing system configuration.<br />
Comparing source boot environment &lt;s10x_u6wos_07b&gt; file systems with the<br />
file system(s) you specified for the new boot environment. Determining<br />
which file systems should be in the new boot environment.<br />
Updating boot environment description database on all BEs.<br />
Updating system configuration files.<br />
Creating configuration for boot environment &lt;s10u6_recpatches&gt;.<br />
Source boot environment is &lt;s10x_u6wos_07b&gt;.<br />
Creating boot environment &lt;s10u6_recpatches&gt;.<br />
Cloning file systems from boot environment &lt;s10x_u6wos_07b&gt; to create boot environment &lt;s10u6_recpatches&gt;.<br />
Creating snapshot for &lt;rpool/ROOT/s10x_u6wos_07b&gt; on &lt;rpool/ROOT/s10x_u6wos_07b@s10u6_recpatches&gt;.<br />
Creating clone for &lt;rpool/ROOT/s10x_u6wos_07b@s10u6_recpatches&gt; on &lt;rpool/ROOT/s10u6_recpatches&gt;.<br />
Setting canmount=noauto for &lt;/&gt; in zone &lt;global&gt; on &lt;rpool/ROOT/s10u6_recpatches&gt;.<br />
Saving existing file &lt;/boot/grub/menu.lst&gt; in top level dataset for BE &lt;s10u6_recpatches&gt; as &lt;mount-point&gt;//boot/grub/menu.lst.prev.<br />
File &lt;/boot/grub/menu.lst&gt; propagation successful<br />
Copied GRUB menu from PBE to ABE<br />
No entry for BE &lt;s10u6_recpatches&gt; in GRUB menu<br />
Population of boot environment &lt;s10u6_recpatches&gt; successful.<br />
Creation of boot environment &lt;s10u6_recpatches&gt; successful.</p>
<p>Na gut, das Erstellen des alternate BE hat also soweit geklappt. Nun zum Patchen..</p>
<p>bash-3.00# <strong>cd /patches/10_x86_Recommended/</strong></p>
<p>bash-3.00#<strong> luupgrade -n s10u6_recpatches -s /patches/10_x86_Recommended -t `cat  patch_order`</strong><br />
System has findroot enabled GRUB<br />
No entry for BE &lt;s10u6_recpatches&gt; in GRUB menu<br />
Validating the contents of the media &lt;/patches/10_x86_Recommended&gt;.<br />
The media contains 152 software patches that can be added.<br />
Mounting the BE &lt;s10u6_recpatches&gt;.<br />
Adding patches to the BE &lt;s10u6_recpatches&gt;.<br />
Validating patches&#8230;<br />
Loading patches installed on the system&#8230;<br />
Done!<br />
Loading patches requested to install.<br />
Version of package SUNWmctag from directory SUNWmctag in patch 121212-02 differs from the package installed on the system.<br />
Version of package SUNWmcosx from directory SUNWmcosx in patch 121212-02 differs from the package installed on the system.<br />
Version of package SUNWmcon from directory SUNWmcon in patch 121212-02 differs from the package installed on the system.<br />
Version of package SUNWmcos from directory SUNWmcos in patch 121212-02 differs from the package installed on the system.<br />
Done!<br />
The following requested patches have packages not installed on the system<br />
Package SUNWgzipS from directory SUNWgzipS in patch 120720-02 is not installed on the system. Changes for package SUNWgzipS will not be applied to the system.<br />
Package SUNWbzipS from directory SUNWbzipS in patch 126869-03 is not installed on the system. Changes for package SUNWbzipS will not be applied to the system.<br />
Package SUNWbreg from directory SUNWbreg in patch 121454-02 is not installed on the system. Changes for package SUNWbreg will not be applied to the system.<br />
Package SUNWdc from directory SUNWdc in patch 121454-02 is not installed on the system. Changes for package SUNWdc will not be applied to the system.<br />
Package SUNWbreg from directory SUNWbreg in patch 121454-02 is not installed on the system. Changes for package SUNWbreg will not be applied to the system.<br />
Package SUNWdc from directory SUNWdc in patch 121454-02 is not installed on the system. Changes for package SUNWdc will not be applied to the system.<br />
Package SUNWsmaS from directory SUNWsmaS in patch 120273-25 is not installed on the system. Changes for package SUNWsmaS will not be applied to the system.<br />
Package SUNWsmbaS from directory SUNWsmbaS in patch 119758-14 is not installed on the system. Changes for package SUNWsmbaS will not be applied to the system.<br />
Package SUNWpostgr-jdbcS from directory SUNWpostgr-jdbcS in patch 123591-09 is not installed on the system. Changes for package SUNWpostgr-jdbcS will not be applied to the system.<br />
Package SUNWpostgrS from directory SUNWpostgrS in patch 123591-09 is not installed on the system. Changes for package SUNWpostgrS will not be applied to the system.<br />
Package SUNWpostgr-tclS from directory SUNWpostgr-tclS in patch 123591-09 is not installed on the system. Changes for package SUNWpostgr-tclS will not be applied to the system.<br />
Package SUNWkxplt from directory SUNWkxplt in patch 120415-23 is not installed on the system. Changes for package SUNWkxplt will not be applied to the system.<br />
Package SUNWinleu from directory SUNWinleu in patch 120415-23 is not installed on the system. Changes for package SUNWinleu will not be applied to the system.<br />
Package SUNWhkleu from directory SUNWhkleu in patch 120415-23 is not installed on the system. Changes for package SUNWhkleu will not be applied to the system.<br />
Package SUNWcxplt from directory SUNWcxplt in patch 120415-23 is not installed on the system. Changes for package SUNWcxplt will not be applied to the system.<br />
Package SUNWhleu from directory SUNWhleu in patch 120415-23 is not installed on the system. Changes for package SUNWhleu will not be applied to the system.<br />
Package SUNWhleu2 from directory SUNWhleu2 in patch 120415-23 is not installed on the system. Changes for package SUNWhleu2 will not be applied to the system.<br />
Package SUNWkleu from directory SUNWkleu in patch 120415-23 is not installed on the system. Changes for package SUNWkleu will not be applied to the system.<br />
Package SUNWtleu from directory SUNWtleu in patch 120415-23 is not installed on the system. Changes for package SUNWtleu will not be applied to the system.<br />
Package SUNWhkplt from directory SUNWhkplt in patch 120415-23 is not installed on the system. Changes for package SUNWhkplt will not be applied to the system.<br />
Package SUNWinplt from directory SUNWinplt in patch 120415-23 is not installed on the system. Changes for package SUNWinplt will not be applied to the system.<br />
Package SUNWtxplt from directory SUNWtxplt in patch 120415-23 is not installed on the system. Changes for package SUNWtxplt will not be applied to the system.<br />
Package SUNWhxplt from directory SUNWhxplt in patch 120415-23 is not installed on the system. Changes for package SUNWhxplt will not be applied to the system.<br />
Package SUNWsunpinyin from directory SUNWsunpinyin in patch 120415-23 is not installed on the system. Changes for package SUNWsunpinyin will not be applied to the system.<br />
Package SUNWsibi from directory SUNWsibi in patch 119082-25 is not installed on the system. Changes for package SUNWsibi will not be applied to the system.<br />
Package SUNWapchS from directory SUNWapchS in patch 122912-15 is not installed on the system. Changes for package SUNWapchS will not be applied to the system.<br />
Package SUNWgrubS from directory SUNWgrubS in patch 138884-01 is not installed on the system. Changes for package SUNWgrubS will not be applied to the system.<br />
Package SUNWsibi from directory SUNWsibi in patch 124629-10 is not installed on the system. Changes for package SUNWsibi will not be applied to the system.<br />
Package SUNWsibi from directory SUNWsibi in patch 119253-31 is not installed on the system. Changes for package SUNWsibi will not be applied to the system.<br />
Package SUNWTkS from directory SUNWTkS in patch 137872-02 is not installed on the system. Changes for package SUNWTkS will not be applied to the system.<br />
Package SUNWipmiS from directory SUNWipmiS in patch 119765-06 is not installed on the system. Changes for package SUNWipmiS will not be applied to the system.<br />
Package SUNWj5jmp from directory SUNWj5jmp in patch 118668-19 is not installed on the system. Changes for package SUNWj5jmp will not be applied to the system.<br />
Package SUNWpngS from directory SUNWpngS in patch 137081-01 is not installed on the system. Changes for package SUNWpngS will not be applied to the system.<br />
Package SUNWsibi from directory SUNWsibi in patch 124631-24 is not installed on the system. Changes for package SUNWsibi will not be applied to the system.<br />
Package SUNWgtarS from directory SUNWgtarS in patch 139100-01 is not installed on the system. Changes for package SUNWgtarS will not be applied to the system.<br />
Package SUNWbindS from directory SUNWbindS in patch 119784-10 is not installed on the system. Changes for package SUNWbindS will not be applied to the system.<br />
Package SUNWzebraS from directory SUNWzebraS in patch 126207-04 is not installed on the system. Changes for package SUNWzebraS will not be applied to the system.<br />
Package SUNWcleu2 from directory SUNWcleu2 in patch 120413-09 is not installed on the system. Changes for package SUNWcleu2 will not be applied to the system.<br />
Package SUNWmysqlS from directory SUNWmysqlS in patch 120293-02 is not installed on the system. Changes for package SUNWmysqlS will not be applied to the system.<br />
Package SUNWimagickS from directory SUNWimagickS in patch 136883-02 is not installed on the system. Changes for package SUNWimagickS will not be applied to the system.<br />
Package SUNWapch2S from directory SUNWapch2S in patch 120544-14 is not installed on the system. Changes for package SUNWapch2S will not be applied to the system.<br />
Package SUNWlxmlS from directory SUNWlxmlS in patch 125732-04 is not installed on the system. Changes for package SUNWlxmlS will not be applied to the system.<br />
The following requested patches are already installed on the system<br />
Requested patch 120720-02 is already installed on the system.<br />
Requested patch 121297-01 is already installed on the system.<br />
Requested patch 122035-05 is already installed on the system.<br />
Requested patch 118344-14 is already installed on the system.<br />
Requested patch 118919-21 is already installed on the system.<br />
Requested patch 120901-03 is already installed on the system.<br />
Requested patch 121334-04 is already installed on the system.<br />
Requested patch 123840-04 is already installed on the system.<br />
Requested patch 127756-01 is already installed on the system.<br />
Requested patch 117435-02 is already installed on the system.<br />
Requested patch 121264-01 is already installed on the system.<br />
Requested patch 119575-02 is already installed on the system.<br />
Requested patch 113000-07 is already installed on the system.<br />
Requested patch 138218-01 is already installed on the system.<br />
Requested patch 121454-02 is already installed on the system.<br />
Requested patch 121454-02 is already installed on the system.<br />
Requested patch 118855-36 is already installed on the system.<br />
Requested patch 126424-03 is already installed on the system.<br />
Requested patch 122641-06 is already installed on the system.<br />
Requested patch 125548-02 is already installed on the system.<br />
Requested patch 125504-02 is already installed on the system.<br />
Requested patch 120012-14 is already installed on the system.<br />
Requested patch 127128-11 is already installed on the system.<br />
Requested patch 119318-01 is already installed on the system.<br />
Requested patch 123612-05 is already installed on the system.<br />
Requested patch 123591-09 is already installed on the system.<br />
Requested patch 128412-01 is already installed on the system.<br />
Requested patch 125542-03 is already installed on the system.<br />
Requested patch 121976-01 is already installed on the system.<br />
Requested patch 138182-01 is already installed on the system.<br />
Requested patch 120202-06 is already installed on the system.<br />
Requested patch 119082-25 is already installed on the system.<br />
Requested patch 138884-01 is already installed on the system.<br />
Requested patch 137138-09 is already installed on the system.<br />
Requested patch 124445-01 is already installed on the system.<br />
Requested patch 126541-02 is already installed on the system.<br />
Requested patch 136999-05 is already installed on the system.<br />
Requested patch 137872-02 is already installed on the system.<br />
Requested patch 138276-01 is already installed on the system.<br />
Requested patch 119765-06 is already installed on the system.<br />
Requested patch 138362-01 is already installed on the system.<br />
Requested patch 119811-05 is already installed on the system.<br />
Requested patch 120330-02 is already installed on the system.<br />
Requested patch 138323-02 is already installed on the system.<br />
Requested patch 128001-01 is already installed on the system.<br />
Requested patch 124189-02 is already installed on the system.<br />
Requested patch 138270-02 is already installed on the system.<br />
Requested patch 119131-33 is already installed on the system.<br />
Requested patch 119901-06 is already installed on the system.<br />
Requested patch 137081-01 is already installed on the system.<br />
Requested patch 123614-01 is already installed on the system.<br />
Requested patch 138624-02 is already installed on the system.<br />
Requested patch 118960-03 is already installed on the system.<br />
Requested patch 128329-01 is already installed on the system.<br />
Requested patch 136840-01 is already installed on the system.<br />
Requested patch 121013-02 is already installed on the system.<br />
Requested patch 119116-34 is already installed on the system.<br />
Requested patch 124458-01 is already installed on the system.<br />
Requested patch 124998-01 is already installed on the system.<br />
Requested patch 138877-01 is already installed on the system.<br />
Requested patch 126207-04 is already installed on the system.<br />
Requested patch 120236-01 is already installed on the system.<br />
Requested patch 138266-01 is already installed on the system.<br />
Requested patch 138105-01 is already installed on the system.<br />
Requested patch 127854-02 is already installed on the system.<br />
Requested patch 138374-02 is already installed on the system.<br />
Requested patch 137033-01 is already installed on the system.<br />
Requested patch 119813-08 is already installed on the system.<br />
Requested patch 120293-02 is already installed on the system.<br />
Requested patch 123939-01 is already installed on the system.<br />
Requested patch 137094-01 is already installed on the system.<br />
Requested patch 121096-02 is already installed on the system.<br />
Requested patch 124939-03 is already installed on the system.<br />
Requested patch 119987-03 is already installed on the system.<br />
Requested patch 137322-01 is already installed on the system.<br />
Requested patch 119904-02 is already installed on the system.<br />
Requested patch 120831-06 is already installed on the system.<br />
Requested patch 126441-01 is already installed on the system.<br />
Requested patch 125280-05 is already installed on the system.<br />
The following requested patches do not update any packages installed on the system<br />
No Packages from patch 121212-02 are installed on the system.<br />
Checking patches that you specified for installation.<br />
Done!<br />
The following requested patches will not be installed because<br />
they have been made obsolete by other patches already<br />
installed on the system or by patches you have specified for installation.<br />
0 All packages from patch 118844-20 are patched by higher revision patches.<br />
1 All packages from patch 122661-08 are patched by higher revision patches.<br />
2 All packages from patch 124205-05 are patched by higher revision patches.<br />
The following requested patches will not be installed because<br />
the packages they patch are not installed on this system.<br />
0 No Packages from patch 120415-23 are installed on the system.<br />
1 No Packages from patch 120413-09 are installed on the system.<br />
Approved patches will be installed in this order:<br />
126869-03 126420-02 119255-65 126539-02 121119-15 120273-25 119758-14 126366-14<br />
120740-05 119060-45 120411-30 122912-15 141009-01 125556-02 137122-06 138628-07<br />
124629-10 119253-31 138372-06 125540-06 137128-05 119214-18 140775-03 123896-10<br />
118668-19 139499-04 121309-16 119314-26 122213-32 139463-02 125185-11 121395-03<br />
138857-02 118669-19 140384-01 120200-15 124631-24 138264-03 139100-01 138286-02<br />
119784-10 119091-32 138224-03 138882-02 139482-01 138242-05 140145-01 119247-35<br />
120223-31 139580-02 125165-13 125953-18 139501-02 139561-02 125333-05 139484-05<br />
141015-01 124394-09 140456-01 136883-02 120095-22 125720-28 120544-14 125732-04<br />
126364-07 138254-02 138867-02 138889-08<br />
Checking installed patches&#8230;<br />
Verifying sufficient filesystem capacity (dry run method)&#8230;<br />
Installing patch packages&#8230;<br />
Patch 126869-03 has been successfully installed.<br />
See /a/var/sadm/patch/126869-03/log for details<br />
Patch packages installed:<br />
SUNWbzip<br />
SUNWsfman<br />
Checking installed patches&#8230;<br />
Verifying sufficient filesystem capacity (dry run method)&#8230;<br />
Installing patch packages&#8230;<br />
Patch 126420-02 has been successfully installed.<br />
See /a/var/sadm/patch/126420-02/log for details<br />
Patch packages installed:<br />
SUNWcsr<br />
SUNWcsu<br />
&#8230;<br />
Patch 138889-08 has been successfully installed.<br />
See /a/var/sadm/patch/138889-08/log for details<br />
Patch packages installed:<br />
SUNWcakr<br />
SUNWckr<br />
SUNWcpcu<br />
SUNWcsd<br />
SUNWcsl<br />
SUNWcslr<br />
SUNWcsr<br />
SUNWcsu<br />
SUNWdtrc<br />
SUNWesu<br />
SUNWhea<br />
SUNWib<br />
SUNWibsdpib<br />
SUNWipfh<br />
SUNWipfu<br />
SUNWmdb<br />
SUNWmdbr<br />
SUNWnxge<br />
SUNWos86r<br />
SUNWrds<br />
SUNWroute<br />
SUNWtavor<br />
Unmounting the BE &lt;s10u6_recpatches&gt;.<br />
<span style="color: #008000;">The patch add to the BE &lt;s10u6_recpatches&gt; completed.</span></p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    yes       no     -<br />
s10u6_recpatches           yes      no     no        yes    -</p>
<p>Nach dem erfolgreichen Patchen nun also vom neuen BE starten&#8230;</p>
<p>bash-3.00# <strong>luactivate s10u6_recpatches</strong><br />
System has findroot enabled GRUB<br />
Generating boot-sign, partition and slice information for PBE &lt;s10x_u6wos_07b&gt;<br />
Saving existing file &lt;/etc/bootsign&gt; in top level dataset for BE &lt;s10x_u6wos_07b&gt; as &lt;mount-point&gt;//etc/bootsign.prev.<br />
A Live Upgrade Sync operation will be performed on startup of boot environment &lt;s10u6_recpatches&gt;.</p>
<p>Generating boot-sign for ABE &lt;s10u6_recpatches&gt;<br />
Saving existing file &lt;/etc/bootsign&gt; in top level dataset for BE &lt;s10u6_recpatches&gt; as &lt;mount-point&gt;//etc/bootsign.prev.<br />
Generating partition and slice information for ABE &lt;s10u6_recpatches&gt;<br />
Copied boot menu from top level dataset.<br />
Generating multiboot menu entries for PBE.<br />
Generating multiboot menu entries for ABE.<br />
Disabling splashimage<br />
Re-enabling splashimage<br />
No more bootadm entries. Deletion of bootadm entries is complete.<br />
GRUB menu default setting is unaffected<br />
Done eliding bootadm entries.</p>
<p>**********************************************************************</p>
<p>The target boot environment has been activated. It will be used when you<br />
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You<br />
MUST USE either the init or the shutdown command when you reboot. If you<br />
do not use either init or shutdown, the system will not boot using the<br />
target BE.</p>
<p>**********************************************************************</p>
<p>In case of a failure while booting to the target BE, the following process<br />
needs to be followed to fallback to the currently working boot environment:</p>
<p>1. Boot from Solaris failsafe or boot in single user mode from the Solaris<br />
Install CD or Network.</p>
<p>2. Mount the Parent boot environment root slice to some directory (like<br />
/mnt). You can use the following command to mount:</p>
<p>mount -Fzfs /dev/dsk/c1t0d0s0 /mnt</p>
<p>3. Run &lt;luactivate&gt; utility with out any arguments from the Parent boot<br />
environment root slice, as shown below:</p>
<p>/mnt/sbin/luactivate</p>
<p>4. luactivate, activates the previous working boot environment and<br />
indicates the result.</p>
<p>5. Exit Single User mode and reboot the machine.</p>
<p>**********************************************************************</p>
<p>Modifying boot archive service<br />
Propagating findroot GRUB for menu conversion.<br />
File &lt;/etc/lu/installgrub.findroot&gt; propagation successful<br />
File &lt;/etc/lu/stage1.findroot&gt; propagation successful<br />
File &lt;/etc/lu/stage2.findroot&gt; propagation successful<br />
File &lt;/etc/lu/GRUB_capability&gt; propagation successful<br />
Deleting stale GRUB loader from all BEs.<br />
File &lt;/etc/lu/installgrub.latest&gt; deletion successful<br />
File &lt;/etc/lu/stage1.latest&gt; deletion successful<br />
File &lt;/etc/lu/stage2.latest&gt; deletion successful<br />
Activation of boot environment &lt;s10u6_recpatches&gt; successful.</p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      yes    no        no     -<br />
<span style="color: #008000;">s10u6_recpatches           yes      no     yes       no     -</span></p>
<p>bash-3.00# <strong>init 6</strong><br />
updating /platform/i86pc/boot_archive<br />
&#8230;</p>
<p>Achtung: Es muss zwingend mit init oder shutdown neu gestartet werden!</p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      no     no        yes    -<br />
<span style="color: #008000;">s10u6_recpatches           yes      yes    yes       no     -</span></p>
<p>bash-3.00# <strong>zoneadm list -cv</strong><br />
ID NAME             STATUS     PATH                           BRAND    IP<br />
0 global           running    /                              native   shared<br />
- zone1            configured /zone1                         native   shared</p>
<p>bash-3.00# <strong>zpool import zone1</strong></p>
<p>bash-3.00# <strong>zpool list</strong><br />
NAME      SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT<br />
patches  7.94G  2.69G  5.25G    33%  ONLINE  -<br />
rpool    7.94G  6.36G  1.58G    80%  ONLINE  -<br />
zone1    1.98G   547M  1.45G    26%  ONLINE  -</p>
<p>bash-3.00# <strong>metaset -s zone1data -t</strong></p>
<p>bash-3.00#<strong> metaset</strong><br />
Set name = zone1data, Set number = 1<br />
Host                Owner<br />
horst1<br />
horst2             Yes<br />
Drive    Dbase<br />
c2t1d0   Yes<br />
c3t1d0   Yes</p>
<h3>Patchen der Zone mit ugrade-on-attach</h3>
<p>bash-3.00# <strong>zoneadm -z zone1 attach</strong><br />
These patches installed on the source system are inconsistent with this system:<br />
118668: version mismatch<br />
(17) (19)<br />
118669: version mismatch<br />
(17) (19)<br />
119060: version mismatch<br />
(44) (45)<br />
119091: version mismatch<br />
(31) (32)<br />
119214: version mismatch<br />
(17) (18)<br />
119247: version mismatch<br />
(34) (35)<br />
119253: version mismatch<br />
(29) (31)<br />
119255: version mismatch<br />
(59) (65)<br />
119314: version mismatch<br />
(24) (26)<br />
119758: version mismatch<br />
(12) (14)<br />
119784: version mismatch<br />
(07) (10)<br />
120095: version mismatch<br />
(21) (22)<br />
120200: version mismatch<br />
(14) (15)<br />
120223: version mismatch<br />
(29) (31)<br />
120273: version mismatch<br />
(23) (25)<br />
120411: version mismatch<br />
(29) (30)<br />
120544: version mismatch<br />
(11) (14)<br />
120740: version mismatch<br />
(04) (05)<br />
121119: version mismatch<br />
(13) (15)<br />
121309: version mismatch<br />
(14) (16)<br />
121395: version mismatch<br />
(01) (03)<br />
122213: version mismatch<br />
(28) (32)<br />
122912: version mismatch<br />
(13) (15)<br />
123896: version mismatch<br />
(05) (10)<br />
124394: version mismatch<br />
(08) (09)<br />
124629: version mismatch<br />
(09) (10)<br />
124631: version mismatch<br />
(19) (24)<br />
125165: version mismatch<br />
(12) (13)<br />
125185: version mismatch<br />
(08) (11)<br />
125333: version mismatch<br />
(03) (05)<br />
125540: version mismatch<br />
(04) (06)<br />
125720: version mismatch<br />
(24) (28)<br />
125732: version mismatch<br />
(02) (04)<br />
125953: version mismatch<br />
(17) (18)<br />
126364: version mismatch<br />
(06) (07)<br />
126366: version mismatch<br />
(12) (14)<br />
126420: version mismatch<br />
(01) (02)<br />
126539: version mismatch<br />
(01) (02)<br />
126869: version mismatch<br />
(02) (03)<br />
136883: version mismatch<br />
(01) (02)<br />
137122: version mismatch<br />
(03) (06)<br />
137128: version mismatch<br />
(02) (05)<br />
138224: version mismatch<br />
(02) (03)<br />
138242: version mismatch<br />
(01) (05)<br />
138254: version mismatch<br />
(01) (02)<br />
138264: version mismatch<br />
(02) (03)<br />
138286: version mismatch<br />
(01) (02)<br />
138372: version mismatch<br />
(02) (06)<br />
138628: version mismatch<br />
(02) (07)<br />
138857: version mismatch<br />
(01) (02)<br />
138867: version mismatch<br />
(01) (02)<br />
138882: version mismatch<br />
(01) (02)<br />
These patches installed on this system were not installed on the source system:<br />
125556-02<br />
138889-08<br />
139100-01<br />
139463-02<br />
139482-01<br />
139484-05<br />
139499-04<br />
139501-02<br />
139561-02<br />
139580-02<br />
140145-01<br />
140384-01<br />
140456-01<br />
140775-03<br />
141009-01<br />
141015-01</p>
<p>bash-3.00# <strong>zoneadm -z zone1 attach -u</strong><br />
Getting the list of files to remove<br />
Removing 1209 files<br />
Remove 198 of 198 packages<br />
Installing 1315 files<br />
Add 198 of 198 packages<br />
Updating editable files<br />
The file &lt;/var/sadm/system/logs/update_log&gt; within the zone contains a log of the zone update.</p>
<p>bash-3.00# <strong>zoneadm list -cv</strong><br />
ID NAME             STATUS     PATH                           BRAND    IP<br />
0 global           running    /                              native   shared<br />
- zone1            installed  /zone1                         native   shared</p>
<p>bash-3.00# <strong>zoneadm -z zone1 boot</strong></p>
<p>bash-3.00# <strong>zlogin zone1</strong><br />
[Connected to zone 'zone1' pts/4]<br />
Last login: Thu Apr  9 09:06:23 on pts/5<br />
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005<br />
#<br />
# <strong>exit</strong><br />
[Connection to zone 'zone1' pts/4 closed]</p>
<p>Upgrade-on-attach zum Patchen der Zone hat hier wunder geklappt.</p>
<h3>weiterer Test nach Einspielen des recommended patch clusters</h3>
<p>Nachdem nun Solaris10u6 mit neuestem recommended patch cluster installiert ist m&#246;chte ich das Liveupgrade inclusive Zone nochmals testen.</p>
<p>bash-3.00# <strong>lustatus</strong><br />
Boot Environment           Is       Active Active    Can    Copy<br />
Name                       Complete Now    On Reboot Delete Status<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;-<br />
s10x_u6wos_07b             yes      no     no        yes    -<br />
s10u6_recpatches           yes      yes    yes       no     -</p>
<p>bash-3.00# <strong>zoneadm list -cv</strong><br />
ID NAME             STATUS     PATH                           BRAND    IP<br />
0 global           running    /                              native   shared<br />
2 zone1            running    /zone1                         native   shared</p>
<p>bash-3.00# <strong>lucreate -n s10u6_zonetest</strong><br />
Checking GRUB menu&#8230;<br />
System has findroot enabled GRUB<br />
Analyzing system configuration.<br />
Comparing source boot environment &lt;s10u6_recpatches&gt; file systems with the<br />
file system(s) you specified for the new boot environment. Determining<br />
which file systems should be in the new boot environment.<br />
Updating boot environment description database on all BEs.<br />
Updating system configuration files.<br />
Creating configuration for boot environment &lt;s10u6_zonetest&gt;.<br />
Source boot environment is &lt;s10u6_recpatches&gt;.<br />
Creating boot environment &lt;s10u6_zonetest&gt;.<br />
Cloning file systems from boot environment &lt;s10u6_recpatches&gt; to create boot environment &lt;s10u6_zonetest&gt;.<br />
Creating snapshot for &lt;rpool/ROOT/s10u6_recpatches&gt; on &lt;rpool/ROOT/s10u6_recpatches@s10u6_zonetest&gt;.<br />
Creating clone for &lt;rpool/ROOT/s10u6_recpatches@s10u6_zonetest&gt; on &lt;rpool/ROOT/s10u6_zonetest&gt;.<br />
Setting canmount=noauto for &lt;/&gt; in zone &lt;global&gt; on &lt;rpool/ROOT/s10u6_zonetest&gt;.<br />
Creating snapshot for &lt;zone1&gt; on &lt;zone1@s10u6_zonetest&gt;.<br />
<span style="color: #ff0000;">cannot create &#8216;.&#8217;: missing dataset name<br />
Creating clone for &lt;zone1@s10u6_zonetest&gt; on &lt;zone1-s10u6_zonetest&gt;.<br />
ERROR: cannot create &#8216;zone1-s10u6_zonetest&#8217;: missing dataset name<br />
ERROR: Unable to clone &lt;&gt; on &lt;&gt;.<br />
/usr/lib/lu/luclonefs: zone1@s10u6_zonetest: not found<br />
cannot open &#8216;zone1-s10u6_zonetest&#8217;: dataset does not exist<br />
cannot open &#8216;zone1-s10u6_zonetest&#8217;: dataset does not exist<br />
cannot open &#8216;zone1-s10u6_zonetest&#8217;: dataset does not exist</span><br />
Saving existing file &lt;/boot/grub/menu.lst&gt; in top level dataset for BE &lt;s10x_u6wos_07b&gt; as &lt;mount-point&gt;//boot/grub/menu.lst.prev.<br />
Saving existing file &lt;/boot/grub/menu.lst&gt; in top level dataset for BE &lt;s10u6_zonetest&gt; as &lt;mount-point&gt;//boot/grub/menu.lst.prev.<br />
File &lt;/boot/grub/menu.lst&gt; propagation successful<br />
Copied GRUB menu from PBE to ABE<br />
No entry for BE &lt;s10u6_zonetest&gt; in GRUB menu<br />
Population of boot environment &lt;s10u6_zonetest&gt; successful.<br />
Creation of boot environment &lt;s10u6_zonetest&gt; successful.<br />
bash-3.00#</p>
<p>bash-3.00# <strong>ludelete -n s10u6_zonetest -f</strong><br />
System has findroot enabled GRUB<br />
No entry for BE &lt;s10u6_zonetest&gt; in GRUB menu<br />
Determining the devices to be marked free.<br />
Updating boot environment configuration database.<br />
Updating compare databases on boot environment &lt;s10x_u6wos_07b&gt;.<br />
Updating boot environment description database on all BEs.<br />
Updating all boot environment configuration databases.<br />
Boot environment &lt;s10u6_zonetest&gt; deleted.</p>
<p>bash-3.00# <strong>zfs destroy zone1@s10u6_zonetest</strong></p>
<p>Tja, auch nach Installieren der aktuell empfohlen Patches klappt das nicht wie gew&#252;nscht.</p>
<p>Hat jemand zu diesem Thema eigene Erfahrungen oder Workarounds? Auf Kommentare oder Tips w&#252;rde ich mich freuen&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://otmanix.de/2009/04/10/flying-zones-fuer-arme-teil-2-liveupgrade-mit-solaris10-update6-und-zfs-root/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>flying zones f&#252;r Arme im Eigenbau mit Solaris10 und Vmware Server 2</title>
		<link>http://otmanix.de/2009/04/05/flying-zones-fuer-arme-im-eigenbau-mit-solaris10-und-vmware-server-2/</link>
		<comments>http://otmanix.de/2009/04/05/flying-zones-fuer-arme-im-eigenbau-mit-solaris10-und-vmware-server-2/#comments</comments>
		<pubDate>Sun, 05 Apr 2009 20:33:08 +0000</pubDate>
		<dc:creator>otmanix</dc:creator>
				<category><![CDATA[EMC]]></category>
		<category><![CDATA[NAS]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Virtualisierung]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[Container]]></category>
		<category><![CDATA[disk set]]></category>
		<category><![CDATA[svm]]></category>
		<category><![CDATA[UFS]]></category>
		<category><![CDATA[ZFS]]></category>
		<category><![CDATA[zones]]></category>

		<guid isPermaLink="false">http://otmanix.de/?p=1150</guid>
		<description><![CDATA[Solaris Zones / Container Sun Microsystems hat Solaris10 eine interessante OS-Virtualisierungsl&#246;sung kostenlos beigelegt &#8211; Solaris Zones, &#228;hnlich zu BSD jails. Im Gegensatz zu XVM (Xen im Solaris-Kernel f&#252;r X86) oder Logical Domains (Hypervisor f&#252;r CMT/Niagara) gibt es bei Zones kaum &#8230; <a href="http://otmanix.de/2009/04/05/flying-zones-fuer-arme-im-eigenbau-mit-solaris10-und-vmware-server-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h3>Solaris Zones / Container</h3>
<p>Sun Microsystems hat Solaris10 eine interessante OS-Virtualisierungsl&#246;sung kostenlos beigelegt &#8211; Solaris Zones, &#228;hnlich zu <a title="BSD jails" href="http://en.wikipedia.org/wiki/FreeBSD_jail" target="_blank">BSD jails</a>. Im Gegensatz zu XVM (Xen im Solaris-Kernel f&#252;r X86) oder Logical Domains (Hypervisor f&#252;r CMT/Niagara) gibt es bei Zones kaum Overhead durch die Virtualisierung. Zudem steht es sowohl im Sparc- als auch im X86-Umfeld zur Verf&#252;gung. In einer Zone werden Resourcen der sog. &#8220;globalen Zone&#8221; genutzt. Es gibt aber auch z.T. die M&#246;glichkeit dediziert Resourcen zuzuweisen, z.B. einen eigenen IP-Stack. Den OS-Kernel hingegen gibt es nur einmal. Die Kombination von OS-Virtualisierung mit Zones und dem Resourcemanagement wird als Container bezeichnet.</p>
<p>Container werden i.d.R. genutzt um Applikationen oder Applikationsschichten voneinander abzuschotten und die Resourcenverteilung zu steuern. So kann ein Container ein SAP ERP Entwicklungs- und Testsystem beinhalten und ein weiterer das Produktionssystem. Die Systeme haben je eine eigene Netzwerkkonfiguration und k&#246;nnen weiche oder harten Grenzen f&#252;r CPU-Auslastung und Speicherverbrauch besitzen.</p>
<h3>flying zones</h3>
<p>Heruntergefahrene Zonen kann man klonen oder exportieren. Kopiert man die Filesysteme der Zone auf einen anderen Rechner kann man sie dort importieren und die Zone wieder in Betrieb nehmen. Legt man die Filesysteme auf shared storage kann man durch Zuweisen der relevanten Disks auf allen relevanten Rechnern die Filesysteme je nach Bedarf am passenden System in Betrieb nehmen. Danach kann auch die Zone dort wieder in Betrieb genommen werden. Das Verfahren nennt man Zonenmigration. Das wird genutzt um bei Rechnerausf&#228;llen Zonen umzuziehen oder um eine bessere Auslastung der vorhandenen Systeme zu erzielen. Als Basis f&#252;r den Umzug der Filesysteme kann sowohl ZFS als auch UFS auf shared disk sets genutzt werden.</p>
<p>M&#246;chte man den Umzug von Zonen auf andere Rechner automatisieren, die Verf&#252;gbarkeit der Zonen/Rechner &#252;berwachen lassen und automische Reaktionen in Problemf&#228;llen haben, dann kann man den Sun Cluster 3.2 mit dem Zonenagent einsetzen.</p>
<p>Sun verkauft die Implementierung einer solchen Gesamtl&#246;sung unter dem Titel &#8220;<a title="flying zones" href="http://de.sun.com/sunnews/events/2007/solaris10techno/pdf/A3_Solaris10-FlyingZones_V3.pdf" target="_blank">flying zones</a>&#8220;. Dabei wird noch das Monitoringtool N1AA Analyzer beigelegt. Dort kann man z.B. den Resourcenverbrauch von best. Zonen aufsummieren lassen und pr&#252;fen, ob das denn so zusammen auf einer best. Hardware laufen w&#252;rde. Au&#223;erdem wird einem noch das Softwareinstallationssystem N1AA ans Herz gelegt.</p>
<h3>flying zones f&#252;r Arme im Eigenbau</h3>
<p>Im kostenlosen Vmware Server 2.01 auf meinem PC habe ich eine Testumgebung aufgebaut um die Grundz&#252;ge von flying zones nachzustellen und zu testen. Wichtig war mir eine realistische Umgebung wie im Betriebsalltag, deshalb bin ich von 2 virt. Rechenzentren ausgegangen. In jedem virt. RZ befindet sich ein Solaris-Host und ein Storagesystem. Auf das Storagesystem jedes RZs kann jeder Server zugreifen. Die Platten im Storagesystem sind als shared disks konfiguriert. Es soll mit host based mirroring erreicht werden, dass trotz Ausfall eines kompletten Storagesystems den Betrieb der Zone nicht gest&#246;rt wird, egal auf welchem host die Zone aktiv l&#228;uft. Auf den Einsatz kostenpflichtiger Clustersoftware zur Automatisierung verzichte ich in diesem Test.</p>
<p><a href="http://otmanix.de/wp-content/uploads/2009/04/flyingzones.jpg"><img class="alignnone size-full wp-image-1151" title="flying zones mit Solaris10 und Vmware Server 2" src="http://otmanix.de/wp-content/uploads/2009/04/flyingzones.jpg" alt="flying zones mit Solaris10 und Vmware Server 2" width="50%" height="50%" /></a></p>
<p>In der Testumgebung gibt es nur eine Zone. In der Realit&#228;t w&#228;ren das nat&#252;rlich mehr.</p>
<p>Auf jedem Solaris-Host ist Solaris10u6 (10/08) installiert. Dabei wurde ein lokale Platte genutzt um darauf das OS zu installieren. Dabei wurde bereits die neue Funktionalit&#228;t genutzt ZFS als Rootfilesystem einzusetzen. Eine weitere kleine lokale Platte steht dar&#252;ber hinaus zur Verf&#252;gung. Auf die Grundinstallation der Solaris-hosts gehe ich hier nicht n&#228;her ein. Die shared disks sind ebenfalls bereits den hosts bereitgestellt.</p>
<h3>Testumgebung auf Vmware Server 2.01</h3>
<p>Am Vmware Server ist eigentlich nur die Konfiguration der shared disks interessant. Die Disks werden zun&#228;chst in einer virt. Maschine erstellt, dann deren vmx-Dateien angepasst und die relevanten Teile der vmx-Datei in die des anderen hosts &#252;bertragen.</p>
<p>Ben&#246;tigt werden also folgende Platten:</p>
<p>lokale disks pro System:</p>
<p>1 Disk mit &gt;= 5GB f&#252;r den ZFS-RootPool<br />
1 Disk &gt;= 20MB f&#252;r die lokale State Database</p>
<p>shared disks (insgesamt):</p>
<p>2 shared Disks (preaallocated) f&#252;r Zonen-Root (ZFS) 2GB<br />
2 shared Disks (preaallocated) mit Zonen-Daten (UFS) 50MB</p>
<p>relevanter Teil der vmx-Dateien:</p>
<pre>scsi1.present = "TRUE"
scsi1.sharedBus = "virtual"
scsi1.virtualDev = "lsilogic"</pre>
<pre>scsi1:0.present = "TRUE"
scsi1:0.fileName = "D:\Virtual Machines\ext1disk1.vmdk"
scsi1:0.writeThrough = "TRUE"
scsi1:0.mode = "independent-persistent"</pre>
<pre>scsi1:1.present = "TRUE"
scsi1:1.fileName = "D:\Virtual Machines\ext1disk2.vmdk"
scsi1:1.writeThrough = "TRUE"
scsi1:1.mode = "independent-persistent"</pre>
<pre>scsi2.present = "TRUE"
scsi2.sharedBus = "virtual"
scsi2.virtualDev = "lsilogic"</pre>
<pre>scsi2:0.present = "TRUE"
scsi2:0.fileName = "D:\Virtual Machines\ext2disk1.vmdk"
scsi2:0.writeThrough = "TRUE"
scsi2:0.mode = "independent-persistent"</pre>
<pre>scsi2:1.present = "TRUE"
scsi2:1.fileName = "D:\Virtual Machines\ext2disk2.vmdk"
scsi2:1.writeThrough = "TRUE"
scsi2:1.mode = "independent-persistent"</pre>
<pre>disk.locking = "FALSE"</pre>
<p><a href="http://otmanix.de/wp-content/uploads/2009/04/horst2.jpg"><img class="alignnone size-full wp-image-1159" title="VM &quot;horst2&quot; im Vmware Server 2.01" src="http://otmanix.de/wp-content/uploads/2009/04/horst2.jpg" alt="VM &quot;horst2&quot; im Vmware Server 2.01" width="30%" height="30%" /></a></p>
<p>Hier ein Blick auf das System nach der Solaris-Installation:</p>
<pre>bash-3.00# <strong>zpool list</strong>
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
rpool  7.94G  4.65G  3.28G    58%  ONLINE  -

bash-3.00# <strong>zpool status rpool</strong>
pool: rpool
state: ONLINE
scrub: none requested
config:
NAME        STATE     READ WRITE CKSUM
rpool       ONLINE       0     0     0
c1t0d0s0  ONLINE       0     0     0
errors: No known data errors

bash-3.00# <strong>zfs list</strong>
NAME                        USED  AVAIL  REFER  MOUNTPOINT
rpool                      5.15G  2.67G  35.5K  /rpool
rpool/ROOT                 3.77G  2.67G    18K  legacy
rpool/ROOT/s10x_u6wos_07b  3.77G  2.67G  3.77G  /
rpool/dump                  900M  2.67G   900M  -
rpool/export                 37K  2.67G    19K  /export
rpool/export/home            18K  2.67G    18K  /export/home
rpool/swap                  512M  3.16G  5.54M  -

bash-3.00# <strong>df -h</strong>
Filesystem             size   used  avail capacity  Mounted on
rpool/ROOT/s10x_u6wos_07b 7.8G   3.8G   2.7G    59%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                   532M   364K   532M     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
/usr/lib/libc/libc_hwcap2.so.1 6.4G   3.8G   2.7G    59%    /lib/libc.so.1
fd                       0K     0K     0K     0%    /dev/fd
swap                   535M   2.7M   532M     1%    /tmp
swap                   532M    32K   532M     1%    /var/run
rpool/export           7.8G    19K   2.7G     1%    /export
rpool/export/home      7.8G    18K   2.7G     1%    /export/home
rpool                  7.8G    35K   2.7G     1%    /rpool
/hgfs                   16G   4.0M    16G     1%    /hgfs
/tmp/VMwareDnD           0K     0K     0K     0%    /var/run/vmblock

bash-3.00# <strong>swap -l</strong>
swapfile             dev  swaplo blocks   free
/dev/zvol/dsk/rpool/swap 181,1       8 1048568 1047280</pre>
<h3>Arbeiten mit den shared disks</h3>
<h4>ZFS f&#252;r Zonenroot, RAID1 gespiegelt</h4>
<pre>bash-3.00# <strong>format</strong>
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c1t0d0 &lt;DEFAULT cyl 4092 alt 2 hd 128 sec 32&gt;
/pci@0,0/pci15ad,1976@10/sd@0,0
1. c1t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,1976@10/sd@1,0
2. c2t0d0 &lt;VMware,-VMware Virtual S-1.0-2.00GB&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@0/sd@0,0
3. c2t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@0/sd@1,0
4. c3t0d0 &lt;VMware,-VMware Virtual S-1.0-2.00GB&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@1/sd@0,0
5. c3t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@1/sd@1,0
Specify disk (enter its number): 0
selecting c1t0d0
[disk formatted]
/dev/dsk/c1t0d0s0 is part of active ZFS pool rpool. Please see zpool(1M).
/dev/dsk/c1t0d0s2 is part of active ZFS pool rpool. Please see zpool(1M).

bash-3.00# <strong>zpool create zone1 mirror c2t0d0 c3t0d0</strong>
bash-3.00# zpool list zone1
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
zone1  1.98G    94K  1.98G     0%  ONLINE  -

bash-3.00# <strong>zpool status zone1</strong>
pool: zone1
state: ONLINE
scrub: none requested
config:
NAME        STATE     READ WRITE CKSUM
zone1       ONLINE       0     0     0
mirror    ONLINE       0     0     0
c2t0d0  ONLINE       0     0     0
c3t0d0  ONLINE       0     0     0
errors: No known data errors

bash-3.00# <strong>zfs list</strong>
NAME                        USED  AVAIL  REFER  MOUNTPOINT
rpool                      5.15G  2.67G  35.5K  /rpool
rpool/ROOT                 3.77G  2.67G    18K  legacy
rpool/ROOT/s10x_u6wos_07b  3.77G  2.67G  3.77G  /
rpool/dump                  900M  2.67G   900M  -
rpool/export                 37K  2.67G    19K  /export
rpool/export/home            18K  2.67G    18K  /export/home
rpool/swap                  512M  3.16G  5.54M  -
zone1                       106K  1.95G    18K  /zone1</pre>
<h4>Datenbereich mit UFS-Filesystem auf SVM shared disk set, RAID1 gespiegelt</h4>
<pre>bash-3.00# <strong>metaset -s zone1data -a c2t1d0 c3t1d0 -h horst1 horst2</strong>
metaset: horst1: there are no existing databases</pre>
<p>Es existiert noch keine lokale state database. Deshalb auf horst1 und horst2 die zweite lokale Platte partitionieren und in der Slice7 eine lokale State Database anlegen.</p>
<pre>bash-3.00# <strong>format</strong>
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c1t0d0 &lt;DEFAULT cyl 4092 alt 2 hd 128 sec 32&gt;
/pci@0,0/pci15ad,1976@10/sd@0,0
1. c1t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,1976@10/sd@1,0
2. c2t0d0 &lt;VMware,-VMware Virtual S-1.0-2.00GB&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@0/sd@0,0
3. c2t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@0/sd@1,0
4. c3t0d0 &lt;VMware,-VMware Virtual S-1.0-2.00GB&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@1/sd@0,0
5. c3t1d0 &lt;DEFAULT cyl 47 alt 2 hd 64 sec 32&gt;
/pci@0,0/pci15ad,790@11/pci15ad,1976@1/sd@1,0
Specify disk (enter its number): <strong>1</strong>
selecting c1t1d0
[disk formatted]
FORMAT MENU:
disk       - select a disk
type       - select (define) a disk type
partition  - select (define) a partition table
current    - describe the current disk
format     - format and analyze the disk
fdisk      - run the fdisk program
repair     - repair a defective sector
label      - write label to the disk
analyze    - surface analysis
defect     - defect list management
backup     - search for backup labels
verify     - read and display labels
save       - save new disk/partition definitions
inquiry    - show vendor, product and revision
volname    - set 8-character volume name
!&lt;cmd&gt;     - execute &lt;cmd&gt;, then return
format&gt; <strong>fdisk</strong>
No fdisk table exists. The default partition for the disk is:
a 100% "SOLARIS System" partition
Type "y" to accept the default partition,  otherwise type "n" to edit the
partition table.
<strong>y</strong>
quit
format&gt; <strong>part</strong>
PARTITION MENU:
0      - change `0' partition
1      - change `1' partition
2      - change `2' partition
3      - change `3' partition
4      - change `4' partition
5      - change `5' partition
6      - change `6' partition
7      - change `7' partition
select - select a predefined table
modify - modify a predefined partition table
name   - name the current table
print  - display the current table
label  - write partition map and label to the disk
!&lt;cmd&gt; - execute &lt;cmd&gt;, then return
quit
partition&gt; <strong>print</strong>
Current partition table (original):
Total disk cylinders available: 46 + 2 (reserved cylinders)
Part      Tag    Flag     Cylinders      Size            Blocks
0 unassigned    wm       0             0         (0/0/0)      0
1 unassigned    wm       0             0         (0/0/0)      0
2     backup    wu       0 - 45       46.00MB    (46/0/0) 94208
3 unassigned    wm       0             0         (0/0/0)      0
4 unassigned    wm       0             0         (0/0/0)      0
5 unassigned    wm       0             0         (0/0/0)      0
6 unassigned    wm       0             0         (0/0/0)      0
7 unassigned    wm       0             0         (0/0/0)      0
8       boot    wu       0 -  0        1.00MB    (1/0/0)   2048
9 unassigned    wm       0             0         (0/0/0)      0
partition&gt; <strong>7</strong>
Part      Tag    Flag     Cylinders      Size            Blocks
7 unassigned    wm       0             0         (0/0/0)      0
Enter partition id tag[unassigned]:
Enter partition permission flags[wm]:
Enter new starting cyl[0]:
Enter partition size[0b, 0c, 0e, 0.00mb, 0.00gb]: <strong>46c</strong>
partition&gt; <strong>print</strong>
Current partition table (unnamed):
Total disk cylinders available: 46 + 2 (reserved cylinders)
Part      Tag    Flag     Cylinders      Size            Blocks
0 unassigned    wm       0             0         (0/0/0)      0
1 unassigned    wm       0             0         (0/0/0)      0
2     backup    wu       0 - 45       46.00MB    (46/0/0) 94208
3 unassigned    wm       0             0         (0/0/0)      0
4 unassigned    wm       0             0         (0/0/0)      0
5 unassigned    wm       0             0         (0/0/0)      0
6 unassigned    wm       0             0         (0/0/0)      0
7 unassigned    wm       0 - 45       46.00MB    (46/0/0) 94208
8       boot    wu       0 -  0        1.00MB    (1/0/0)   2048
9 unassigned    wm       0             0         (0/0/0)      0
partition&gt; <strong>label</strong>
Ready to label disk, continue? <strong>y</strong>
partition&gt; <strong>quit</strong>
FORMAT MENU:
disk       - select a disk
type       - select (define) a disk type
partition  - select (define) a partition table
current    - describe the current disk
format     - format and analyze the disk
fdisk      - run the fdisk program
repair     - repair a defective sector
label      - write label to the disk
analyze    - surface analysis
defect     - defect list management
backup     - search for backup labels
verify     - read and display labels
save       - save new disk/partition definitions
inquiry    - show vendor, product and revision
volname    - set 8-character volume name
!&lt;cmd&gt;     - execute &lt;cmd&gt;, then return
quit
format&gt; <strong>quit</strong>
bash-3.00#

bash-3.00# <strong>metadb -a -f c1t1d0s7</strong>

bash-3.00# <strong>metadb</strong>
flags           first blk       block count
a        u         16              8192            /dev/dsk/c1t1d0s7
bash-3.00# echo "set md:mirrored_root_flag=1" &gt;&gt; /etc/system</pre>
<p>Auf horst1 nun das shared disk set anlegen.</p>
<pre>bash-3.00# <strong>metaset -s zone1data -a -h horst1 horst2</strong>
metaset: horst2: rpc.metad: Permission denied</pre>
<p>Dem Dienst fehlen die Berechtigungen.</p>
<p>Auf horst1</p>
<pre>bash-3.00# <strong>echo horst2 &gt; /.rhosts</strong></pre>
<p>Auf horst2</p>
<pre>bash-3.00# <strong>echo horst1 &gt; /.rhosts</strong></pre>
<p>Auf horst1 nun das shared disk set erstellen:</p>
<pre>bash-3.00# <strong>metaset -s zone1data -a -h horst1 horst2</strong>

bash-3.00# <strong>metaset -s zone1data -a c2t1d0 c3t1d0</strong>

bash-3.00# <strong>metaset</strong>
Set name = zone1data, Set number = 1
Host                Owner
horst1             Yes
horst2
Drive    Dbase
c2t1d0   Yes
c3t1d0   Yes

bash-3.00# <strong>metadb -s zone1data</strong>
flags           first blk       block count
a        u         16              8192            /dev/dsk/c2t1d0s7
a        u         16              8192            /dev/dsk/c3t1d0s7</pre>
<p>Nun die RAID1-Spiegelung mit Solaris Volummanager (SVM) aufsetzen:</p>
<pre>bash-3.00# <strong>metainit -s zone1data d11 1 1 c2t1d0s0</strong>
zone1data/d11: Concat/Stripe is setup

bash-3.00# <strong>metainit -s zone1data d12 1 1 c3t1d0s0</strong>
zone1data/d12: Concat/Stripe is setup

bash-3.00# <strong>metainit -s zone1data d10 -m d11</strong>
zone1data/d10: Mirror is setup

bash-3.00# <strong>metattach -s zone1data d10 d12</strong>
zone1data/d10: submirror zone1data/d12 is attached

bash-3.00# <strong>metastat -s zone1data</strong>
zone1data/d10: Mirror
Submirror 0: zone1data/d11
State: Okay
Submirror 1: zone1data/d12
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 86016 blocks (42 MB)
zone1data/d11: Submirror of zone1data/d10
State: Okay
Size: 86016 blocks (42 MB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c2t1d0s0          0     No            Okay   Yes
zone1data/d12: Submirror of zone1data/d10
State: Okay
Size: 86016 blocks (42 MB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c3t1d0s0          0     No            Okay   Yes
Device Relocation Information:
Device   Reloc  Device ID
c3t1d0   Yes    id1,sd@f0000000049d7b0e80006e5c10004
c2t1d0   Yes    id1,sd@f0000000049d7b0e80004846b0003</pre>
<p>Im Anschluss die Platte mit UFS formatieren:</p>
<pre>bash-3.00# <strong>newfs /dev/md/zone1data/rdsk/d10</strong>
/dev/md/zone1data/rdsk/d10: Unable to find Media type. Proceeding with system determined parameters.
newfs: construct a new file system /dev/md/zone1data/rdsk/d10: (y/n)? <strong>y</strong>
/dev/md/zone1data/rdsk/d10:     86016 sectors in 42 cylinders of 64 tracks, 32 sectors
42.0MB in 3 cyl groups (16 c/g, 16.00MB/g, 7680 i/g)
super-block backups (for fsck -F ufs -o b=#) at:
32, 32832, 65632,</pre>
<h3>Konfiguration und Installation der Zone zone1</h3>
<pre>bash-3.00# <strong>zonecfg -z zone1</strong>
zone1: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zone1&gt; <strong>create</strong>
zonecfg:zone1&gt; <strong>set zonepath=/zone1</strong>
zonecfg:zone1&gt; <strong>set autoboot=false</strong>
zonecfg:zone1&gt; <strong>add fs</strong>
zonecfg:zone1:fs&gt; <strong>set dir=/daten</strong>
zonecfg:zone1:fs&gt; <strong>set special=/dev/md/zone1data/dsk/d10</strong>
zonecfg:zone1:fs&gt; <strong>set raw=/dev/md/zone1data/rdsk/d10</strong>
zonecfg:zone1:fs&gt; <strong>set type=ufs</strong>
zonecfg:zone1:fs&gt; <strong>end</strong>
zonecfg:zone1&gt; <strong>add net</strong>
zonecfg:zone1:net&gt; <strong>set physical=e100g0</strong>
zonecfg:zone1:net&gt; <strong>set address=192.168.178.61</strong>
zonecfg:zone1:net&gt; <strong>end</strong>
zonecfg:zone1&gt; <strong>exit</strong>

bash-3.00# <strong>zoneadm list -c</strong>
global
zone1

bash-3.00# <strong>cat /etc/zones/index</strong>
# Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
#
# ident "@(#)zones-index        1.2     04/04/01 SMI"
#
# DO NOT EDIT: this file is automatically generated by zoneadm(1M)
# and zonecfg(1M).  Any manual changes will be lost.
#
global:installed:/
zone1:configured:/zone1:

bash-3.00# <strong>cat /etc/zones/zone1.xml</strong>
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1"&gt;
&lt;!--
DO NOT EDIT THIS FILE.  Use zonecfg(1M) instead.
--&gt;
&lt;zone name="zone1" zonepath="/zone1" autoboot="false"&gt;
&lt;inherited-pkg-dir directory="/lib"/&gt;
&lt;inherited-pkg-dir directory="/platform"/&gt;
&lt;inherited-pkg-dir directory="/sbin"/&gt;
&lt;inherited-pkg-dir directory="/usr"/&gt;
&lt;filesystem special="/dev/md/zone1data/dsk/d10" raw="/dev/md/zone1data/rdsk/d10" directory="/daten" type="ufs"/&gt;
&lt;network address="192.168.178.61" physical="e100g0"/&gt;
&lt;/zone&gt;

bash-3.00# <strong>chmod 700 /zone1</strong>

bash-3.00# <strong>zoneadm -z zone1 install</strong>
Preparing to install zone &lt;zone1&gt;.
Checking &lt;ufs&gt; file system on device &lt;/dev/md/zone1data/rdsk/d10&gt; to be mounted at &lt;/zone1/root&gt;
Creating list of files to copy from the global zone.
Copying &lt;8135&gt; files to the zone.
Initializing zone product registry.
Determining zone package initialization order.
Preparing to initialize &lt;1186&gt; packages on the zone.
Initialized &lt;1186&gt; packages on zone.
Zone &lt;zone1&gt; is initialized.
The file &lt;/zone1/root/var/sadm/system/logs/install_log&gt; contains a log of the zone installation.

bash-3.00# <strong>zoneadm list -cv</strong>
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
- zone1            installed  /zone1                         native   shared

bash-3.00# <strong>zoneadm -z zone1 boot</strong>

bash-3.00# <strong>zlogin -C zone1</strong>
[Connected to zone 'zone1' console]
143/143
Reading ZFS config: done.
Select a Language
0. English
1. German
2. es
3. fr
Please make a choice (0 - 3), or press h or ? for help:<strong>1</strong>
...
Auf welcher Art von Terminal arbeiten Sie?
1) ANSI Standard CRT
2) DEC VT52
3) DEC VT100
4) Heathkit 19
5) Lear Siegler ADM31
6) PC-Konsole
7) Sun-Kommando-Shell
 <img src='http://otmanix.de/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> Sun-Workstation
9) Televideo 910
10) Televideo 925
11) Wyse Modell 50
12) X Terminal Emulator (xterms)
13) CDE Terminal Emulator (dtterm)
14) Andere
Geben Sie die gew&#252;nschte Zahl ein und dr&#252;cken Sie Eingabetaste: <strong>3</strong>
...
System identification is completed.
rebooting system due to change(s) in /etc/default/init
[NOTICE: Zone rebooting]
SunOS Release 5.10 Version Generic_137138-09 64-bit
Copyright 1983-2008 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
Hostname: zone1
Reading ZFS config: done.
zone1 console login: Apr  5 13:33:22 zone1 sendmail[6008]: My unqualified host name (localhost) unknown; sleeping for retry
<strong>root</strong>
Password:
Apr  5 13:33:44 zone1 login: ROOT LOGIN /dev/console
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005

# <strong>svcadm disable svc:*sendmail*</strong>

bash-3.00# <strong>df -h</strong>
Dateisystem           Gr&#246;&#223;e belegt verf&#252;gbar Kapazit&#228;t Eingeh&#228;ngt auf
/                        0K   541M   1,4G    28%    /
/daten                  39M   1,0M    34M     3%    /daten
/dev                   2,0G   541M   1,4G    28%    /dev
/lib                   6,4G   3,8G   2,7G    59%    /lib
/platform              6,4G   3,8G   2,7G    59%    /platform
/sbin                  6,4G   3,8G   2,7G    59%    /sbin
/usr                   6,4G   3,8G   2,7G    59%    /usr
proc                     0K     0K     0K     0%    /proc
ctfs                     0K     0K     0K     0%    /system/contract
mnttab                   0K     0K     0K     0%    /etc/mnttab
objfs                    0K     0K     0K     0%    /system/object
swap                   452M   316K   452M     1%    /etc/svc/volatile
/usr/lib/libc/libc_hwcap2.so.1 6,4G   3,8G   2,7G    59%    /lib/libc.so.1
fd                       0K     0K     0K     0%    /dev/fd
swap                   452M    36K   452M     1%    /tmp
swap                   452M    12K   452M     1%    /var/run
bash-3.00# <strong>exit</strong>
# <strong>^D</strong>
zone1 console login: <strong>~.</strong>
[Connection to zone 'zone1' console closed]</pre>
<h3>Zonenmigration</h3>
<p>Zone exportieren</p>
<pre>bash-3.00# <strong>zlogin zone1 init 0</strong>

bash-3.00# <strong>zoneadm list -cv</strong>
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
- zone1            installed  /zone1                         native   shared

bash-3.00# <strong>zoneadm -z zone1 detach</strong>
bash-3.00# zoneadm list -cv
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
- zone1            configured /zone1                         native   shared

bash-3.00# <strong>ls -l /zone1</strong>
total 3343
-rw-r--r--   1 root     root     1618163 Apr  5 14:25 SUNWdetached.xml
drwxr-xr-x  13 root     root          52 Apr  5 14:22 dev
drwxr-xr-x  19 root     root          21 Apr  5 13:44 root</pre>
<p>ZFS-Pool mit Zonenroot exportieren</p>
<pre>bash-3.00# <strong>zpool export zone1</strong>

bash-3.00# <strong>zpool list</strong>
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
rpool  7.94G  5.02G  2.92G    63%  ONLINE  -</pre>
<p>SVM disk set mit UFS-Filesystem f&#252;r Daten exportieren</p>
<pre>bash-3.00# <strong>metaset</strong>
Set name = zone1data, Set number = 1
Host                Owner
horst1             Yes
horst2
Drive    Dbase
c2t1d0   Yes
c3t1d0   Yes

bash-3.00# <strong>metaset -s zone1data -r</strong>

bash-3.00# <strong>metaset</strong>
Set name = zone1data, Set number = 1
Host                Owner
horst1
horst2
Drive    Dbase
c2t1d0   Yes
c3t1d0   Yes</pre>
<p>Auf horst2:</p>
<p>ZFS-Pool importieren</p>
<pre>bash-3.00# <strong>zpool list</strong>
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
rpool  7.94G  4.65G  3.28G    58%  ONLINE  -

bash-3.00# <strong>zpool import</strong>
pool: zone1
id: 12609083278336438915
state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
zone1       ONLINE
mirror    ONLINE
c2t0d0  ONLINE
c3t0d0  ONLINE

bash-3.00# <strong>zpool import zone1</strong>

bash-3.00# <strong>zpool list</strong>
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
rpool  7.94G  4.65G  3.28G    58%  ONLINE  -
zone1  1.98G   544M  1.45G    26%  ONLINE  -</pre>
<p>SVM disk set importieren</p>
<pre>bash-3.00# <strong>metaset</strong>
Set name = zone1data, Set number = 1
Host                Owner
horst1
horst2
Drive    Dbase
c2t1d0   Yes
c3t1d0   Yes

bash-3.00# <strong>metaset -s zone1data -t</strong>

bash-3.00# <strong>metaset</strong>
Set name = zone1data, Set number = 1
Host                Owner
horst1
horst2             Yes
Drive    Dbase
c2t1d0   Yes
c3t1d0   Yes

bash-3.00# <strong>metastat -s zone1data d10</strong>
zone1data/d10: Mirror
Submirror 0: zone1data/d11
State: Okay
Submirror 1: zone1data/d12
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 86016 blocks (42 MB)
zone1data/d11: Submirror of zone1data/d10
State: Okay
Size: 86016 blocks (42 MB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c2t1d0s0          0     No            Okay   Yes
zone1data/d12: Submirror of zone1data/d10
State: Okay
Size: 86016 blocks (42 MB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c3t1d0s0          0     No            Okay   Yes
Device Relocation Information:
Device   Reloc  Device ID
c2t1d0   Yes    id1,sd@f0000000049d7b0e80004846b0003
c3t1d0   Yes    id1,sd@f0000000049d7b0e80006e5c10004</pre>
<p>Zone zone1 importieren und wieder in Betrieb nehmen:</p>
<pre>bash-3.00# <strong>zonecfg -z zone1</strong>
zone1: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zone1&gt; <strong>create -a /zone1</strong>
zonecfg:zone1&gt; <strong>exit</strong>

bash-3.00# <strong>zoneadm list -cv</strong>
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
- zone1            configured /zone1                         native   shared

bash-3.00# <strong>zoneadm -z zone1 attach</strong>

bash-3.00# <strong>zoneadm list -cv</strong>
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
- zone1            installed  /zone1                         native   shared

bash-3.00# <strong>zoneadm -z zone1 boot</strong>

bash-3.00# <strong>zoneadm list -cv</strong>
ID NAME             STATUS     PATH                           BRAND    IP
0 global           running    /                              native   shared
2 zone1            running    /zone1                         native   shared

bash-3.00# <strong>zlogin zone1</strong>
[Connected to zone 'zone1' pts/5]
Last login: Sun Apr  5 14:22:15 on pts/5
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005

# <strong>df -h</strong>
Filesystem             size   used  avail capacity  Mounted on
/                        0K   545M   1.4G    28%    /
/daten                  39M   5.0M    30M    15%    /daten
/dev                   2.0G   545M   1.4G    28%    /dev
/lib                   6.4G   3.8G   2.7G    59%    /lib
/platform              6.4G   3.8G   2.7G    59%    /platform
/sbin                  6.4G   3.8G   2.7G    59%    /sbin
/usr                   6.4G   3.8G   2.7G    59%    /usr
proc                     0K     0K     0K     0%    /proc
ctfs                     0K     0K     0K     0%    /system/contract
mnttab                   0K     0K     0K     0%    /etc/mnttab
objfs                    0K     0K     0K     0%    /system/object
swap                   437M   300K   437M     1%    /etc/svc/volatile
/usr/lib/libc/libc_hwcap2.so.1 6.4G   3.8G   2.7G    59%    /lib/libc.so.1
fd                       0K     0K     0K     0%    /dev/fd
swap                   437M    36K   437M     1%    /tmp
swap                   437M    12K   437M     1%    /var/run

# <strong>ls -l /daten</strong>
total 8176
-rw-r--r--   1 root     root     4165061 Apr  5 14:14 lksf_book_alpha.pdf
drwx------   2 root     root        8192 Apr  5 12:13 lost+found

<a href="http://otmanix.de/wp-content/uploads/2009/04/horst2rconsole.jpg"><img class="alignnone size-full wp-image-1160" title="VM &quot;horst2&quot; Remote Console des Vmware Server 2.01" src="http://otmanix.de/wp-content/uploads/2009/04/horst2rconsole.jpg" alt="VM &quot;horst2&quot; Remote Console des Vmware Server 2.01" width="30%" height="30%" /></a></pre>
<h3>Fazit</h3>
<p>Zonen sind ne nette Sache. Mit der M&#246;glichkeit der Zonenmigration wird das Thema aber erst richtig interessant und RZ-tauglich.</p>
<h3>Weiterf&#252;hrende Literatur, etc.</h3>
<p><a title="SVM" href="http://docs.sun.com/app/docs/doc/816-4520?l=de" target="_blank">Solaris Volume Manager Administration Guide</a></p>
<p><a title="ZFS" href="http://docs.sun.com/app/docs/doc/819-5461?l=de" target="_blank">ZFS Administration Guide</a></p>
<p><a href="http://docs.sun.com/app/docs/doc/817-1592?l=de" target="_blank">Solaris Containers</a></p>
<p><a href="http://docs.sun.com/app/docs/doc/817-5093?l=de" target="_blank">Devices and Filesystems</a></p>
<p><a href="http://docs.sun.com/app/docs/coll/1236.9" target="_blank">Solaris10u6 10/08</a></p>
<p><a href="http://prefetch.net/blog/index.php/2009/03/22/building-clusters-with-shared-disk-using-vmware-server-20/" target="_blank">Blog O&#8217;Matty zu shared disks unter Vmware Server 2</a></p>
<p>P.S.</p>
<p>Der n&#228;chste Test wird Liveupgrade mit ZFS-Rootfilesystem und Zonen zum Thema haben&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://otmanix.de/2009/04/05/flying-zones-fuer-arme-im-eigenbau-mit-solaris10-und-vmware-server-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Automatisiertes Schreiben von disk label unter Solaris</title>
		<link>http://otmanix.de/2009/03/18/automatisiertes-schreiben-von-disk-label-unter-solaris/</link>
		<comments>http://otmanix.de/2009/03/18/automatisiertes-schreiben-von-disk-label-unter-solaris/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 20:16:11 +0000</pubDate>
		<dc:creator>otmanix</dc:creator>
				<category><![CDATA[OpenSolaris]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[fmthard]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[prtvtoc]]></category>
		<category><![CDATA[svm]]></category>

		<guid isPermaLink="false">http://otmanix.de/?p=1133</guid>
		<description><![CDATA[Wer unter Solaris mit UFS-Filesystemen arbeitet muss vor der Benutzung einer Platte selbige mit einem disk label (vtoc bzw. Partitionstabelle) versehen. Dazu startet man den Befehl &#8220;format&#8221;, w&#228;hlt die gew&#252;nschte Disk aus, &#228;ndert unter &#8220;partition&#8221; die Gr&#246;&#223;en f&#252;r die Partitionen, &#8230; <a href="http://otmanix.de/2009/03/18/automatisiertes-schreiben-von-disk-label-unter-solaris/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Wer unter Solaris mit UFS-Filesystemen arbeitet muss vor der Benutzung einer Platte selbige mit einem disk label (vtoc bzw. Partitionstabelle) versehen. Dazu startet man den Befehl &#8220;format&#8221;, w&#228;hlt die gew&#252;nschte Disk aus, &#228;ndert unter &#8220;partition&#8221; die Gr&#246;&#223;en f&#252;r die Partitionen, speichert das mit &#8220;label&#8221; und beendet das Programm mit &#8220;quit&#8221;.</p>
<pre>root@server # <strong>format</strong>
Searching for disks...done

AVAILABLE DISK SELECTIONS:
       0. c0t0d0 &lt;SUN36G cyl 24620 alt 2 hd 27 sec 107&gt;
          /ssm@0,0/pci@1a,700000/pci@1/SUNW,isptwo@4/sd@0,0
       1. c1t0d0 &lt;SUN36G cyl 24620 alt 2 hd 27 sec 107&gt;
          /ssm@0,0/pci@1b,700000/pci@1/SUNW,isptwo@4/sd@0,0
       2. c2t40d41 &lt;EMC-SYMMETRIX-5772 cyl 49598 alt 2 hd 30 sec 128&gt;
          /ssm@0,0/pci@1a,600000/pci@1/lpfc@4/sd@28,29
...</pre>
<pre>Specify disk (enter its number): <strong>0</strong>
selecting c0t0d0
[disk formatted]

FORMAT MENU:
        disk       - select a disk
        type       - select (define) a disk type
        partition  - select (define) a partition table
        current    - describe the current disk
        format     - format and analyze the disk
        repair     - repair a defective sector
        label      - write label to the disk
        analyze    - surface analysis
        defect     - defect list management
        backup     - search for backup labels
        verify     - read and display labels
        save       - save new disk/partition definitions
        inquiry    - show vendor, product and revision
        volname    - set 8-character volume name
        !&lt;cmd&gt;     - execute &lt;cmd&gt;, then return
        quit
format&gt; <strong>partition</strong>

PARTITION MENU:
        0      - change `0' partition
        1      - change `1' partition
        2      - change `2' partition
        3      - change `3' partition
        4      - change `4' partition
        5      - change `5' partition
        6      - change `6' partition
        7      - change `7' partition
        select - select a predefined table
        modify - modify a predefined partition table
        name   - name the current table
        print  - display the current table
        label  - write partition map and label to the disk
        !&lt;cmd&gt; - execute &lt;cmd&gt;, then return
        quit
partition&gt; <strong>print</strong>
Current partition table (original):
Total disk cylinders available: 24620 + 2 (reserved cylinders)

Part      Tag    Flag     Cylinders         Size            Blocks
  0       root    wm       0 -  6812        9.39GB    (6813/0/0)  19682757
  1       swap    wu    6813 - 21330       20.00GB    (14518/0/0) 41942502
  2     backup    wm       0 - 24619       33.92GB    (24620/0/0) 71127180
  3 unassigned    wm       0                0         (0/0/0)            0
  4 unassigned    wm       0                0         (0/0/0)            0
  5        var    wm   21331 - 24233        4.00GB    (2903/0/0)   8386767
  6 unassigned    wm   24234 - 24596      512.06MB    (363/0/0)    1048707
  7 unassigned    wm   24597 - 24619       32.44MB    (23/0/0)       66447

partition&gt; <strong>quit</strong>

FORMAT MENU:
        disk       - select a disk
        type       - select (define) a disk type
        partition  - select (define) a partition table
        current    - describe the current disk
        format     - format and analyze the disk
        repair     - repair a defective sector
        label      - write label to the disk
        analyze    - surface analysis
        defect     - defect list management
        backup     - search for backup labels
        verify     - read and display labels
        save       - save new disk/partition definitions
        inquiry    - show vendor, product and revision
        volname    - set 8-character volume name
        !&lt;cmd&gt;     - execute &lt;cmd&gt;, then return
        quit
format&gt; <strong>quit</strong></pre>
<p>Im Bereich &#8220;partition&#8221; kann man mit &#8220;print&#8221; die aktuelle Partitionstabelle ansehen. Bei neuen Platten wird ein Standardvorschlag zur Partitionierung angezeigt, der nat&#252;rlich abge&#228;ndert werden kann. Wird dies nicht getan und trotzdem &#8220;label&#8221; ausgef&#252;hrt, wird dieser default-label geschrieben.</p>
<p>Hat man nun die Aufgabe eine gr&#246;&#223;ere Anzahl Platten zu partitionieren m&#246;chte man dann den Vorgang doch irgendwie automatisieren. Dazu gibt es die Tools prtvtoc und fmthard. Mit prtvtoc kann die Partitionstabelle einer Platte als Text in genormter Form ausgegeben werden.</p>
<pre>root@server # <strong>prtvtoc /dev/rdsk/c0t0d0s0</strong></pre>
<pre>* /dev/rdsk/c0t0d0s2 partition map</pre>
<pre>*</pre>
<pre>* Dimensions:</pre>
<pre>*     512 bytes/sector</pre>
<pre>*     107 sectors/track</pre>
<pre>*      27 tracks/cylinder</pre>
<pre>*    2889 sectors/cylinder</pre>
<pre>*   24622 cylinders</pre>
<pre>*   24620 accessible cylinders</pre>
<pre>*</pre>
<pre>* Flags:</pre>
<pre>*   1: unmountable</pre>
<pre>*  10: read-only</pre>
<pre>*</pre>
<pre>*                          First     Sector    Last</pre>
<pre>* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory</pre>
<pre>       0      2    00          0  19682757  19682756</pre>
<pre>       1      3    01   19682757  41942502  61625258</pre>
<pre>       2      5    00          0  71127180  71127179</pre>
<pre>       5      7    00   61625259   8386767  70012025</pre>
<pre>       6      0    00   70012026   1048707  71060732</pre>
<pre>       7      0    00   71060733     66447  71127179</pre>
<p>Diese Ausgabe l&#228;&#223;t sich nun als Vorlage nutzen um Platten mit &#8220;fmthard&#8221; zu partitionieren. Sinn ergibt das nat&#252;rlich nur bei Disks mit gleicher Gr&#246;&#223;e.</p>
<pre>prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c1t0d0s2</pre>
<p>Dummerweise bekommt man nun ziemlich wahrscheinlich einen I/O-error beim Schreiben der Partitionstabelle auf die zweite Platte (wenn diese neu ist). Hier des R&#228;tsels L&#246;sung:</p>
<p><em>manpage zu &#8220;fmthard</em>&#8221;</p>
<blockquote><p>For disks under one terabyte, fmthard cannot write a VTOC on an unlabeled disk. Use format(1M) for this purpose.<br />
SunOS 5.10          Last change: 11 Apr 2005</p></blockquote>
<p>Na klasse, da l&#228;&#223;t sich das Tool zum Automatisieren in der Masse der Anwendungsf&#228;lle also nicht nutzen. Weniger bekannt ist der folgende Workaround:</p>
<p>Man automatisiert das Schreiben eines Standard disk label mit &#8220;Format&#8221; und benutzt im Anschluss wie oben gezeigt &#8220;prtvtoc&#8221; und &#8220;fmthard&#8221; (&#252;blicherweise wird immer die Slice 2 angegeben, da diese per Definition die komplette Disk umfassen sollte!).</p>
<pre class="MsoNormal">echo label &gt; /tmp/input
echo quit &gt;&gt; /tmp/input
format -d c1t0d0  -f /tmp/input
prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c1t0d0s2</pre>
<p>Um eine gr&#246;&#223;ere Zahl Disks zu partitionieren schreibt man ein kleines Skript:</p>
<pre>cd /dev/rdsk/
echo label &gt; /tmp/input
echo quit &gt;&gt; /tmp/input
DISKS=$(ls c4t50d*s2|sed 's/s2//')
export DISKS
for i in $DISKS
do
format -d $i -f /tmp/input
done</pre>
<p>In diesem Beispiel werden alle LUNs am Controller 4 / Target 50 mit einem Standard disk label versehen.</p>
<p>Danach kann man z.B. das Partitionslayout einer Platte auf alle neuen Platten &#252;bertragen:</p>
<pre>for i in $DISKS
do
prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/${i}s2
done</pre>
<p>Alternativ k&#246;nnte man aber auch die neuen Platten einem Diskset hinzuf&#252;gen:</p>
<pre>for i in $DISKS
do
<span lang="EN-US">metaset -s oradb -a $i</span>
done</pre>
<p>P.S.</p>
<p>Die Skripte kann man nat&#252;rlich noch sch&#246;ner schreiben. Ich will hier nur das Prinzip zeigen&#8230;</p>
<p>Hier noch etwas Lesestoff: <a href="http://docs.sun.com/app/docs/doc/817-5093/disksprep-103?a=view">http://docs.sun.com/app/docs/doc/817-5093/disksprep-103?a=view</a></p>
]]></content:encoded>
			<wfw:commentRss>http://otmanix.de/2009/03/18/automatisiertes-schreiben-von-disk-label-unter-solaris/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Parameter f&#252;r SAP/Oracle-Testsystem auf Solaris10u5, EMC und ZFS</title>
		<link>http://otmanix.de/2008/05/01/parameter-fuer-saporacle-testsystem-auf-solaris10u5-emc-und-zfs/</link>
		<comments>http://otmanix.de/2008/05/01/parameter-fuer-saporacle-testsystem-auf-solaris10u5-emc-und-zfs/#comments</comments>
		<pubDate>Thu, 01 May 2008 15:21:42 +0000</pubDate>
		<dc:creator>otmanix</dc:creator>
				<category><![CDATA[EMC]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[ZFS]]></category>
		<category><![CDATA[dmx]]></category>
		<category><![CDATA[fc]]></category>
		<category><![CDATA[mpxio]]></category>
		<category><![CDATA[svm]]></category>

		<guid isPermaLink="false">http://otmanix.de/?p=499</guid>
		<description><![CDATA[- Anschlu&#223; EMC DMX-Speichersystem an Sun Fire V490 - Sun/Emulex-FC-HBAs an SAN-Switch - UFS f&#252;r / und swap auf internen FC-Disks - Mirroring der Boot-Disk per SVM - ZFS f&#252;r EMC Disks - Multpathing per mpxio - Solaris 10 u5 &#8230; <a href="http://otmanix.de/2008/05/01/parameter-fuer-saporacle-testsystem-auf-solaris10u5-emc-und-zfs/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>- Anschlu&#223; EMC DMX-Speichersystem an Sun Fire V490<br />
- Sun/Emulex-FC-HBAs an SAN-Switch<br />
- UFS f&#252;r / und swap auf internen FC-Disks<br />
- Mirroring der Boot-Disk per SVM<br />
- ZFS f&#252;r EMC Disks<br />
- Multpathing per mpxio<br />
- Solaris 10 u5 enth&#228;lt alle relevanten EMC und SAP/Oracle recommended Patches</p>
<p>Informationshilfen:<br />
<a href="http://www.solarisinternals.com//wiki/index.php?title=Category:ZFS">http://www.solarisinternals.com//wiki/index.php?title=Category:ZFS</a> &#8211; ZFS tuning<br />
<a href="http://www.sun.com/bigadmin/content/submitted/svm_mirroring.jsp">http://www.sun.com/bigadmin/content/submitted/svm_mirroring.jsp</a> &#8211; SVM Bootdisk Mirroring<br />
<a href="http://powerlink.emc.com">http://powerlink.emc.com</a> &gt; EMC E-Lab-Navigator f&#252;r Supportmatrix</p>
<p><a href="http://otmanix.de/wp-content/uploads/2008/05/v490-emc.pdf">E-Lab-Navigator Supportmatrix f&#252;r EMC DMX und SF V490</a></p>
<p>Tools:</p>
<p>https://HOSTNAME:6789/zfs/zfsmodule/Index &#8211; ZFS Webgui</p>
<p>Installiertes Solaris-Release?<br />
# cat /etc/release<br />
Solaris 10 5/08 s10s_u5wos_10 SPARC<br />
Copyright 2008 Sun Microsystems, Inc.  All Rights Reserved.<br />
Use is subject to license terms.<br />
Assembled 24 March 2008</p>
<p>Kernelparameter f&#252;r SVM, ZFS, EMC, SAP/Oracle<br />
# cat /etc/system</p>
<p>&#8230;<br />
* Begin MDD root info (do not edit)<br />
rootdev:/pseudo/md@0:0,10,blk<br />
set md:mirrored_root_flag=1<br />
* End MDD root info (do not edit)</p>
<p>* ZFS<br />
* http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide</p>
<p>* disk-cache flush aus<br />
set zfs:zfs_nocacheflush=1</p>
<p>* 4GB RAM max. fuer ZFS-Arc-Cache (0xWERT , WERT = MB*1024*1024 &gt; HEX)<br />
set zfs:zfs_arc_max=0&#215;100000000</p>
<p>* File-Level-Prefetching<br />
* set zfs:zfs_prefetch_disable = 1</p>
<p>* Device-Level-Prefetching (13 = 8k-Bloecke fuer disks reads, OLTP-tuning)<br />
set zfs:zfs_vdev_cache_bshift = 13</p>
<p>* Device-Level-Prefetching ausschalten<br />
* set zfs:zfs_vdev_cache_max = 0&#215;1</p>
<p>* Device I/O Queue Size (I/O Concurrency)<br />
* I/O queue depth pro LUN, default=35<br />
* bei lokalen SATA-disks auf 10 setzen<br />
* ansonsten gleich ssd_max_throttle setzen<br />
set zfs:zfs_vdev_max_pending = 32</p>
<p>* EMC</p>
<p>* Queue-Laenge (empfohlen 20, bei Metadevices ggf. 32)<br />
set ssd:ssd_max_throttle=32</p>
<p>* Timeout in HEX, recommended 0x3c = 60s bei multipathing, sonst 0&#215;78<br />
set ssd:ssd_io_time=0x3c</p>
<p>* Verzoegerung bis device als offline betrachtet wird<br />
set fcp:fcp_offline_delay=20</p>
<p>* SAP / Oracle</p>
<p>* max. file descriptors pro Prozess<br />
set rlim_fd_cur=8192</p>
<p>* security: stack nicht ausfuehrbar<br />
set noexec_user_stack=1</p>
<p>Emulex-Treiber f&#252;r Anschlu&#223; an SAN-Switch konfigurieren<br />
# cat emlxs.conf<br />
&#8230;<br />
# +++ Variables relating to IP networking support. +++<br />
#<br />
# network-on:  Enable/Disable IP networking support in the driver.<br />
#<br />
# 0 = Disables IP networking suppport in the driver.<br />
# 1 = Enables IP networking suppport in the driver.<br />
#<br />
# Range:  Min:0  Max:1  Default:1<br />
#<br />
#network-on=1;<br />
network-on=0;<br />
#<br />
# +++ Fibre Channel specific parameters +++<br />
#<br />
# topology:  link topology for initializing the Fibre Channel connection.<br />
#<br />
#          0 = attempt loop mode, if it fails attempt point-to-point mode<br />
#          2 = attempt point-to-point mode only<br />
#          4 = attempt loop mode only<br />
#          6 = attempt point-to-point mode, if it fails attempt loop mode<br />
#<br />
# Set point-to-point mode if you want to run as an N_Port.<br />
# Set loop mode if you want to run as an NL_Port.<br />
#<br />
# Range:  Min:0  Max:6  Default:0<br />
#<br />
#topology=0;<br />
topology=2;<br />
# link-speed:  Sets the link speed setting for initializing the Fibre Channel<br />
#              connection.<br />
#<br />
#  0 = auto select<br />
#  1 = 1 Gigabaud<br />
#  2 = 2 Gigabaud<br />
#  4 = 4 Gigabaud<br />
#  8 = 8 Gigabaud<br />
#<br />
# Range:  Min:0  Max:8  Default:0<br />
#<br />
link-speed=0;<br />
&#8230;</p>
<p>Multipathing konfigurieren<br />
# cat fp.conf<br />
&#8230;<br />
#<br />
# I/O multipathing feature (MPxIO) can be enabled or disabled using<br />
# mpxio-disable property. Setting mpxio-disable=&#8221;no&#8221; will activate<br />
# I/O multipathing; setting mpxio-disable=&#8221;yes&#8221; disables the feature.<br />
#<br />
# Global mpxio-disable property:<br />
#<br />
# To globally enable MPxIO on all fp ports set:<br />
# mpxio-disable=&#8221;no&#8221;;<br />
#<br />
# To globally disable MPxIO on all fp ports set:<br />
# mpxio-disable=&#8221;yes&#8221;;<br />
#<br />
# Per port mpxio-disable property:<br />
#<br />
# You can also enable or disable MPxIO on a per port basis.<br />
# Per port settings override the global setting for the specified ports.<br />
# To disable MPxIO on port 0 whose parent is /pci@8,600000/SUNW,qlc@4 set:<br />
# name=&#8221;fp&#8221; parent=&#8221;/pci@8,600000/SUNW,qlc@4&#8243; port=0 mpxio-disable=&#8221;yes&#8221;;<br />
#<br />
# NOTE: If you just want to enable or disable MPxIO on all fp ports, it is<br />
# better to use stmsboot(1M) as it also updates /etc/vfstab.<br />
#<br />
#<br />
# You can describe a list of target port WWNs and LUN numbers which will<br />
# not be configured. LUN numbers will be interpreted as decimal. White<br />
# spaces and &#8216;,&#8217; can be used in the list of LUN numbers.<br />
#<br />
# pwwn-lun-blacklist=<br />
# &#8220;target-port-wwn,lun-list&#8221;<br />
#<br />
# To prevent LUNs 1 and 2 from being configured for target<br />
# port 510000f010fd92a1 and target port 510000e012079df1, set:<br />
#<br />
# pwwn-lun-blacklist=<br />
# &#8220;510000f010fd92a1,1,2&#8243;,<br />
# &#8220;510000e012079df1,1,2&#8243;;<br />
#<br />
# mpxio einschalten<br />
mpxio-disable=&#8221;no&#8221;;<br />
# mpxio fuer interne FC disks ausschalten<br />
name=&#8221;fp&#8221; parent=&#8221;/pci@9,600000/SUNW,qlc@2&#8243; port=0 mpxio-disable=&#8221;yes&#8221;;</p>
<p>Multipathing f&#252;r Zusammenarbeit mit EMC DMX  konfigurieren<br />
# cat /kernel/drv/scsi_vhci.conf<br />
&#8230;<br />
# Load balancing global configuration: setting load-balance=&#8221;none&#8221; will cause<br />
# all I/O to a given device (which supports multipath I/O) to occur via one<br />
# path.  Setting load-balance=&#8221;round-robin&#8221; will cause each path to the device<br />
# to be used in turn.<br />
#<br />
load-balance=&#8221;round-robin&#8221;;<br />
#<br />
# Automatic failback configuration<br />
# possible values are auto-failback=&#8221;enable&#8221; or auto-failback=&#8221;disable&#8221;<br />
auto-failback=&#8221;enable&#8221;;<br />
#<br />
# For enabling MPxIO support for 3rd party symmetric device need an<br />
# entry similar to following in this file. Just replace the &#8220;SUN     SENA&#8221;<br />
# part with the Vendor ID/Product ID for the device, exactly as reported by<br />
# Inquiry cmd.<br />
#<br />
# device-type-scsi-options-list =<br />
# &#8220;SUN     SENA&#8221;, &#8220;symmetric-option&#8221;;<br />
#<br />
# symmetric-option = 0&#215;1000000;<br />
# Konfiguration fuer EMC Symmetrix<br />
# zwischen EMC und SYMMETRIX 5 Leerzeichen!!!<br />
device-type-scsi-options-list = &#8220;EMC     SYMMETRIX&#8221;, &#8220;symmetric-option&#8221;;<br />
symmetric-option = 0&#215;1000000;</p>
<p>Zum Aktivieren der Konfiguration:<br />
# reboot &#8212; -r</p>
<p>Dies stellt nur eine kurze &#220;bersicht der relevanten Parameter f&#252;r ein Testsystem dar. Kommentare und konstruktive Kritik sind willkommen <img src='http://otmanix.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://otmanix.de/2008/05/01/parameter-fuer-saporacle-testsystem-auf-solaris10u5-emc-und-zfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Solaris als Storageserver</title>
		<link>http://otmanix.de/2008/04/21/solaris-als-storageserver/</link>
		<comments>http://otmanix.de/2008/04/21/solaris-als-storageserver/#comments</comments>
		<pubDate>Mon, 21 Apr 2008 20:34:21 +0000</pubDate>
		<dc:creator>otmanix</dc:creator>
				<category><![CDATA[EMC]]></category>
		<category><![CDATA[NAS]]></category>
		<category><![CDATA[Netapp]]></category>
		<category><![CDATA[OpenSolaris]]></category>
		<category><![CDATA[Samba]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[ZFS]]></category>
		<category><![CDATA[CIFS]]></category>
		<category><![CDATA[fc]]></category>
		<category><![CDATA[fcoe]]></category>
		<category><![CDATA[iscsi]]></category>
		<category><![CDATA[iSNS]]></category>
		<category><![CDATA[mpxio]]></category>
		<category><![CDATA[multipathing]]></category>
		<category><![CDATA[NFS]]></category>
		<category><![CDATA[svm]]></category>
		<category><![CDATA[UFS]]></category>

		<guid isPermaLink="false">http://otmanix.de/?p=487</guid>
		<description><![CDATA[&#8220;Wo liegt der Reiz an Solaris?&#8221; werde ich immer wieder gefragt. Eines der Sahnest&#252;cke von Solaris ist meiner Meinung nach der Einsatz als universelle Storageplattform auf LowCost-Hardware, z.B. als g&#252;nstiger Ersatz f&#252;r einen Netapp-Filer. Wer die Opensolaris-Entwicklung etwas mitverfolgt erlebt &#8230; <a href="http://otmanix.de/2008/04/21/solaris-als-storageserver/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>&#8220;Wo liegt der Reiz an Solaris?&#8221; werde ich immer wieder gefragt. Eines der Sahnest&#252;cke von Solaris ist meiner Meinung nach der Einsatz als universelle Storageplattform auf LowCost-Hardware, z.B. als g&#252;nstiger Ersatz f&#252;r einen Netapp-Filer. Wer die Opensolaris-Entwicklung etwas mitverfolgt erlebt hier beinahe monatlich neue Features im Storageumfeld. Hier ist bei weitem noch kein Ende der Entwicklung in Sicht.</p>
<p><a href="http://www.opensolaris.org/os/community/storage/" target="_self">http://www.opensolaris.org/os/community/storage/</a></p>
<p><strong>SVM, UFS, ZFS &#8211; Volumemanager, Filesysteme, Volumes, Snapshots, uvm.<br />
</strong></p>
<p>Traditionell wird unter Solaris der SVM als Volumemanager benutzt, UFS ist das Standard-Filesystem. Mit Multiterabyte-Support und Journaling per SVM wurde UFS im Nachhinein aufgebohrt. UFS-Snapshots funktionieren, wirken aber irgendwie wie ein angest&#252;ckelter Fremdk&#246;rper. Das Handling von SVM ist sehr gew&#246;hnungsbed&#252;rftig, Freunde gewinnt man so sicherlich nicht. SVM/UFS ist heute nach wie vor f&#252;r die Spiegelung von lokalen Bootdevices &#252;blich.</p>
<p>Der gro&#223;e Wurf gelang Sun mit ZFS. ZFS ist Volumemanager und Filesystem zugleich. Damit ist die Liste der Features aber noch lange nicht ersch&#246;pft. Prinzipiell werden Platten oder Slices (Partitionen) einem Pool zugewiesen, ein entsprechender RAID-Level gesetzt (Striping, Mirroring, RAID-Z) und diverse Parameter wie z.B. Blocksize gesetzt. In einem Pool k&#246;nnen dann ZFS-Filesysteme oder Volumes (&#228;hnlich RAW-devices) angelegt und mit Parametern, wie z.B. Quota und Reservierung, versehen werden. Auf Volumes k&#246;nnen beliebige Filesysteme aufgebracht werden.</p>
<p>Auf ZFS-Pools, -Filesysteme und -Volumes k&#246;nnen Snapshots angewendet werden. Diese k&#246;nnen auch geclont und damit beschreibbar wiederverwendet werden.</p>
<p>Mit zfs send/receive k&#246;nnen ZFS-Daten &#252;ber IP repliziert werden.</p>
<p>ZFS Pools k&#246;nnen exportiert und auf einem anderen Rechner wieder importiert werden. Ge&#228;nderte Hardwarepfade, etc. spielen keine Rolle &#8211; so lange alle Platten eines Pools zur Verf&#252;gung stehen klappt der Import.</p>
<p>ZFS ist (noch?) nicht als Shared Filesystem geeignet. D.h. im Cluster kann es nur f&#252;r Failoverszenarien eingesetzt werden.</p>
<p>Die Performance von ZFS ist abh&#228;ngig vom Szenario, wo es zum Einsatz kommen soll. Mittlerweile in den meisten Bereichen UFS ebenb&#252;rtig gibt es noch Potential zu VxFS. Tuning ist oft sinnvoll. Je h&#246;her das Solaris-Release, desto mehr M&#246;glichkeiten zur Optimierung gibt es.</p>
<p>ZFS bietet neben der eing&#228;ngen Shell-Kommandos auch ein Webgui.</p>

<a href='http://otmanix.de/2008/04/21/solaris-als-storageserver/zfs-admin-pool/' title='zfs-admin-pool'><img width="150" height="150" src="http://otmanix.de/wp-content/uploads/2008/04/zfs-admin-pool-150x150.gif" class="attachment-thumbnail" alt="zfs-admin-pool" title="zfs-admin-pool" /></a>
<a href='http://otmanix.de/2008/04/21/solaris-als-storageserver/zfs-admin/' title='zfs-admin'><img width="150" height="150" src="http://otmanix.de/wp-content/uploads/2008/04/zfs-admin-150x150.gif" class="attachment-thumbnail" alt="zfs-admin" title="zfs-admin" /></a>

<p>ZFS hat eingebaute Mechanismen wie &#8220;Self Healing&#8221; und Schutz gegen &#8220;silent data corruption&#8221;.</p>
<p><a href="http://blogs.sun.com/chrisg/entry/latency_bubble_in_your_io" target="_self">http://blogs.sun.com/chrisg/entry/latency_bubble_in_your_io</a></p>
<p><a href="http://przemol.blogspot.com/2008/02/zfs-vs-vxfs-vs-ufs-on-x4500-thumper.html" target="_self">http://przemol.blogspot.com/2008/02/zfs-vs-vxfs-vs-ufs-on-x4500-thumper.html</a></p>
<p><a href="http://blogs.sun.com/SC/entry/why_sunw_nfs_is_required" target="_self">http://blogs.sun.com/SC/entry/why_sunw_nfs_is_required</a></p>
<p><a href="http://www.solarisinternals.com//wiki/index.php?title=Category:ZFS" target="_self">http://www.solarisinternals.com//wiki/index.php?title=Category:ZFS</a></p>
<p><a href="http://www.opensolaris.org/os/community/zfs/docs/" target="_self">http://www.opensolaris.org/os/community/zfs/docs/</a></p>
<p><a href="http://wiki.edv-widhalm.com/index.php/Solaris_Volume_Manager_%28HowTo%29" target="_self">http://wiki.edv-widhalm.com/index.php/Solaris_Volume_Manager_%28HowTo%29</a></p>
<p><a href="http://wiki.edv-widhalm.com/index.php/Zfs_%28HowTo%29" target="_self">http://wiki.edv-widhalm.com/index.php/Zfs_%28HowTo%29</a></p>
<p><a href="http://www.learning-solaris.com/index.php/category/unix-solaris-storage-volume-management/" target="_self">http://www.learning-solaris.com/index.php/category/unix-solaris-storage-volume-management/</a></p>
<p><a href="http://www.osnews.com/story/19665/Solaris_Filesystem_Choices" target="_self">http://www.osnews.com/story/19665/Solaris_Filesystem_Choices</a></p>
<p><a title="zfs cache flush" href="http://blogs.digitar.com/jjww/?itemid=52" target="_self">http://blogs.digitar.com/jjww/?itemid=52</a></p>
<p><strong>NAS &#8211; iSCSI</strong></p>
<p>Solaris beherrscht iSCSI Initiator (Zugriff auf iSCSI-Volume) und iSCSI Target (Bereitstellen<br />
eines iSCSI Volumes). Dabei kann z.B. ein ZFS Volume als iSCSI Target genutzt werden. Das kann man z.B. nutzen um einem Windows- oder VMware-ESX-Server Diskspace zur Verf&#252;gung zu stellen. Von den ZFS Volumes k&#246;nnen dann Snapshots erstellt werden.</p>
<p><a href="http://blogs.sun.com/mhuff/entry/introduction_to_iscsi_in_solaris" target="_self">http://blogs.sun.com/mhuff/entry/introduction_to_iscsi_in_solaris</a></p>
<p><a href="http://www.opensolaris.org/os/project/iscsitgt/" target="_self">http://www.opensolaris.org/os/project/iscsitgt/</a></p>
<p><a href="http://www.opensolaris.org/os/project/isns/" target="_self">http://www.opensolaris.org/os/project/isns/</a></p>
<p><a href="http://blogs.sun.com/lokibear/entry/download_isns_web_based_management" target="_self">http://blogs.sun.com/lokibear/entry/download_isns_web_based_management</a></p>
<p><strong>NAS Freigaben &#8211; NFS und CIFS</strong></p>
<p>ZFS-Filesysteme beherrschen UNIX- und Windows-ACLs (W2K kompatibel) &#8211; damit entfallen viele H&#252;rden als Netzwerkspeicher. Dar&#252;ber hinaus k&#246;nnen in ZFS-Filesystemen NFS- und CIFS-Freigaben als Eigenschaften eingerichtet werden. Eine ADS-Integration ist auch m&#246;glich. Der brandneue CIFS-Server mit ZFS-Integration d&#252;rfte unter Solaris eine ernsthafte Konkurrenz zu Samba werden.</p>
<p><a href="http://blogs.sun.com/timthomas/entry/opensolaris_as_a_storageos_the" target="_self">http://blogs.sun.com/timthomas/entry/opensolaris_as_a_storageos_the</a></p>
<p><a href="http://blogs.sun.com/dougm/" target="_self">http://blogs.sun.com/dougm/</a></p>
<p><a href="http://blogs.sun.com/amw/entry/cifs_in_solaris" target="_self">http://blogs.sun.com/amw/entry/cifs_in_solaris</a></p>
<p><strong>SAN &#8211; Fibrechannel, FCoE<br />
</strong></p>
<p>Im Bereich Fibrechannel wurde zuletzt in erster Linie in leichtere Administration auf der Shell investiert. Interessant sind die OpenSolaris-Projekte Comstar und FC over Ethernet. Hier bewegt sich einiges, gerade auch im Bereich Virtualisierung mit NPIV (virtuelle FC-HBAs).</p>
<p><a href="http://www.opensolaris.org/os/project/comstar/" target="_self">http://www.opensolaris.org/os/project/comstar/</a></p>
<p><a href="http://www.opensolaris.org/os/project/fcoe/" target="_self">http://www.opensolaris.org/os/project/fcoe/</a></p>
<p><a href="http://www.opensolaris.org/os/project/npiv/" target="_self">http://www.opensolaris.org/os/project/npiv/</a></p>
<p><strong>mpxio &#8211; Multipathing</strong></p>
<p>Solaris unterst&#252;tzt mit mpxio Multipathing f&#252;r SCSI-, FC-, SAS- und iSCSI-Disks. Speichersysteme mit SCSI SPC-2/3 werrden automatisch erkannt, eine manuelle Zuordnung in der Konfigurationsdatei durch Vendor und Product ist auch m&#246;glich, z.B. &#8220;EMC     SYMMETRIX&#8221;. Es wird Failover und Roundrobin als Verfahren unterst&#252;tzt. Mit dem mpathadm-Kommando ist die Administration sehr eing&#228;ngig. Durch mpxio wird aus den verschiedenen Hardwarepfaden (verschiedene Controller/Targets, gleiche LUN) ein virtueller Pfad erstellt, der dann f&#252;r die Konfiguration im Volumemanager benutzt wird.</p>
<p><a href="http://www.opensolaris.org/os/project/mpxio/" target="_self">http://www.opensolaris.org/os/project/mpxio/</a></p>
<p>last but not least: ZFS in der Praxis &#8230; (Achtung! US-Propaganda)<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="wmode" value="transparent" /><param name="src" value="http://www.youtube.com/v/CN6iDzesEs0&amp;hl=en" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://www.youtube.com/v/CN6iDzesEs0&amp;hl=en" wmode="transparent"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://otmanix.de/2008/04/21/solaris-als-storageserver/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

