複製操作は、複製元の zonepath から複製先の zonepath にデータをコピーすることにより、システム上に新しいゾーンをプロビジョニングするのに使用されます。
Solaris 10 5/09 以降では、複製元の zonepathと複製先の zonepath が両方とも ZFS 上にあり、同じプールに含まれる場合、zoneadm clone コマンドは自動的に ZFS を使用してゾーンを複製します。ただし、ZFS の zonepath のコピーは行い、ZFS の複製は行わないように指定することもできます。
新規ゾーンをインストールする前に、そのゾーンを構成する必要があります。zoneadm create サブコマンドに渡されるパラメータは、複製するゾーンの名前です。この複製元のゾーンを停止する必要があります。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
複製元のゾーン (この手順では my-zone) を停止します。
global# zoneadm -z my-zone halt |
複製元ゾーン my-zone の構成をファイル (たとえば、master ) にエクスポートすることにより、新規ゾーンの構成を開始します。
global# zonecfg -z my-zone export -f /export/zones/master |
既存の構成を変更する代わりに、「ゾーンの構成方法」で説明されている手順を使って、新規ゾーン構成を作成することもできます。この方法を使用する場合は、ゾーンを作成したあとで手順 6 に進みます。
master ファイルを編集します。複数のゾーンで同一であってはならないコンポーネントに対して、異なるプロパティーと資源を設定します。たとえば、新しい zonepath を設定する必要があります。共有 IP ゾーンの場合は、各 net 資源の IP アドレスを変更する必要があります。排他的 IP ゾーンの場合は、各 net 資源の physical プロパティーを変更する必要があります。
master ファイル内のコマンドを使って、新規ゾーン zone1 を作成します。
global# zonecfg -z zone1 -f /export/zones/master |
my-zone を複製して、新規ゾーン zone1 をインストールします。
global# zoneadm -z zone1 clone my-zone |
システムには次のように表示されます。
Cloning zonepath /export/home/my-zone... |
Solaris 10 5/09 以降では、複製元の zonepath が ZFS プール上にある場合 (例: zeepool)、システムには次のように表示されます。
Cloning snapshot zeepool/zones/my-zone@SUNWzone1 Instead of copying, a ZFS clone has been created for this zone. |
システム内のゾーンの一覧を表示します。
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared - zone1 installed /export/home/zone1 native shared |
独自の ZFS ファイルシステム上にある複製元 zonepath を zoneadm コマンドで複製すると、次の処理が実行されます。
zoneadm コマンドは、ソフトウェア目録を作成します。
zoneadm コマンドは、ZFS スナップショットを作成し、SUNWzoneX という形式の名前 (例: SUNWzone1) を付けます。
zoneadm コマンドは、ZFS クローンを使用してスナップショットを複製します。
最初にゾーンを複製したときに作成された既存のスナップショットから、元のゾーンを何度も複製することができます。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
ゾーン zone2 を構成します。
既存のスナップショットを使用して new-zone2 を作成することを指定します。
global# zoneadm -z zone2 clone -s zeepool/zones/my-zone@SUNWzone1 my-zone |
システムには次のように表示されます。
Cloning snapshot zeepool/zones/my-zone@SUNWzone1 |
zoneadm コマンドは、スナップショット SUNWzone1 のソフトウェアを検証し、スナップショットを複製します。
システム内のゾーンの一覧を表示します。
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /zeepool/zones/my-zone native shared - zone1 installed /zeepool/zones/zone1 native shared - zone2 installed /zeepool/zones/zone2 native shared |
ZFS ファイルシステム上のゾーンの自動複製を防止し、代わりに zonepath をコピーするように指定する場合は、ここで説明する手順を使用します。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
ZFS クローンは行わず、ZFS 上の zonepath をコピーするように指定します。
global# zoneadm -z zone1 clone -m copy my-zone |