BrandZ は、ネイティブでないオペレーティング環境を含む非大域ゾーンを作成するためのフレームワークを提供します。これらのコンテナは、ネイティブな環境では実行できないアプリケーションを SolarisTM オペレーティングシステムで実行するために使用されるブランドゾーンです。ここで説明するブランドは solaris8 ブランドで、これは Solaris 8 Containers です。
今すぐ solaris8 ゾーンを作成する場合は、「Solaris 8 システムの評価」に進んでください。
デフォルトでは、非大域ゾーンは大域ゾーンのオペレーティングシステムと同じ特性を持ちます。大域ゾーンでは Solaris 10 オペレーティングシステムまたはそれ以降の Solaris 10 リリースが実行されています。このような「ネイティブな」非大域ゾーンと大域ゾーンでは、標準への適合、実行時の動作、コマンドセット、およびパフォーマンス特性が共有されます。
非大域ゾーン内で別のオペレーティング環境を実行することもできます。ブランドゾーン (BrandZ) フレームワークは Solaris ゾーンインフラストラクチャーを拡張して、ブランド、つまり実行時動作の代替セットの作成機能を追加します。「ブランド」は、さまざまなオペレーティング環境を指す場合があります。たとえば、非大域ゾーンは、Solaris オペレーティングシステムの別のバージョンや Linux などのオペレーティング環境をエミュレートすることができます。または、ネイティブブランドの動作に特性や機能を追加する場合もあります。すべてのゾーンに、それぞれ関連するブランドが構成されます。
ブランドは、ゾーンにインストールできるオペレーティング環境を定義し、ゾーンにインストールされたネイティブでないソフトウェアが正しく機能するようにゾーン内でのシステムの動作を決定します。また、ゾーンのブランドにより、アプリケーションの起動時に正しいアプリケーションタイプが識別されます。すべてのブランドゾーン管理は、ネイティブ なゾーン構造の拡張を通して実行されます。管理手順のほとんどはすべてのゾーンで同一です。
構成済み状態にあるゾーンのブランドは変更することができます。ブランドゾーンのインストールが完了したあとは、そのブランドの変更や削除を行うことはできません。
BrandZ はゾーンのツールを次のように拡張します。
zonecfg コマンドを使用して、ゾーンの構成時にゾーンのブランドタイプを設定します。
zoneadm コマンドを使用して、ゾーンのブランドタイプの報告とゾーンの管理を行います。
ラベルが有効になっている Solaris Trusted Extensions システムにブランドゾーンを構成してインストールすることはできますが、このシステム構成でブランドゾーンを起動することはできません。
ブランドゾーンで使用できる次のコンポーネントは、ブランドによって定義されます。
特権。
デバイスのサポート。ブランドでは、サポートされていないデバイスや認識されないデバイスの追加を禁止するように選択することができます。solaris8 非大域ゾーンにデバイスを追加することができます。「Solaris 8 ブランドゾーンについて」を参照してください。
ブランドゾーンに必要なファイルシステムは、ブランドによって定義されます。zonecfg の fs 資源プロパティーを使用して、追加の Solaris ファイルシステムをブランドゾーンに追加することができます。
ブランドゾーンでは、ブランドゾーンで実行中のプロセスだけに適用される一連の介入ポイントがカーネル内に用意されます。
これらのポイントは、syscall パス、プロセスローディングパス、スレッド作成パスなどのパス内に見つかります。
これらの各ポイントで、ブランドは Solaris の標準的な動作を補完したり置き換えたりすることができます。
ブランドは librtld_db のプラグインライブラリを提供することもできます。デバッガ (mdb(1) のマニュアルページを参照) や DTrace (dtrace(1M) のマニュアルページを参照) といった Solaris のツールは、このプラグインライブラリを使用して、ブランドゾーン内で実行中のプロセスのシンボル情報にアクセスできます。
コンテナは、プラットフォームの資源にアプリケーションを仮想的に割り当てます。ゾーンを使用すると、Solaris オペレーティングシステムの単一のインスタンスを複数のゾーンで共有しているにもかかわらず、アプリケーション構成要素を互いに隔離できます。資源管理機能では、作業負荷に与える資源の量を割り当てることができます。
コンテナは、CPU 使用率などの資源の消費量に制限を設けます。コンテナ内で実行されるアプリケーションの処理要件の変化に応じて、これらの制限を拡張することもできます。
このマニュアルに記載されていない追加情報については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』も参照してください。そのマニュアルには、Solaris ゾーンとブランドゾーンの全体の概要が記載されています。
そのマニュアルで説明されている、次に示すゾーンおよび資源管理の概念について、よく理解しておくようにしてください。
サポートされる機能とサポートされない機能
利用可能なシステム資源をアプリケーションでどのように使用するかを管理者が制御できるようにする資源制御
ゾーンの構成、インストール、および管理に使用されるコマンド。主に zonecfg、zoneadm、および zlogin
大域ゾーンおよび非大域ゾーン
完全ルート非大域ゾーンモデル
大域管理者とゾーン管理者
ゾーンの状態モデル
ゾーン隔離の特徴
特権
ネットワーク
ゾーンの IP タイプ、排他的 IP と共有 IP
Solaris コンテナの概念、つまり、資源プールなどの資源管理機能をゾーンで使用する方法
公平配分スケジューラ (FSS)。これは、配分に基づいて CPU 時間を割り当てることができるようにするスケジューリングクラスです
資源上限デーモン (rcapd)。これを大域ゾーンから使用して、ブランドゾーンの常駐セットサイズ (RSS) 使用量を制御できます
Solaris 8 ブランドゾーン (solaris8) は、Solaris 10 8/07 以降のオペレーティングシステムが稼働している SPARC マシンで Solaris 8 アプリケーションをサポートする完全な実行環境です。このブランドは、32 ビットおよび 64 ビットの Solaris 8 アプリケーションをサポートします。
solaris8 ブランドゾーンは、完全ルートゾーンモデルに基づいています。各ゾーンのファイルシステムには、オペレーティングシステムを構成するソフトウェアの完全なコピーが含まれています。ただし、一元的なパッチ適用の対象にならないという点で、solaris8 ゾーンはネイティブな完全ルートゾーンとは異なります。
solaris8 ゾーンでは、次のような Solaris 10 の多くの機能を使用できます。
システムの信頼性を向上させる障害管理アーキテクチャー (FMA) (smf(5) を参照)。
Solaris 8 ではサポートされていない新しいハードウェア上で実行する機能。
Solaris 10 のパフォーマンス向上。
大域ゾーンから DTrace を実行して solaris8 ゾーンのプロセスを検査する機能。
Solaris 8 で使用可能な機能の中には、Solaris ゾーン内では使用できないものがあります。
非大域ゾーン内では、次の機能を構成することはできません。
Solaris Live Upgrade の起動環境
Solaris ボリュームマネージャーのメタデバイス
共有 IP ゾーンでの DHCP アドレスの割り当て
SSL プロキシサーバー
また、非大域ゾーンは NFS サーバーになることはできず、動的再構成 (DR) 操作は大域ゾーンからのみ実行できます。
solaris8 ブランドゾーンには次の制限が適用されます。
bsmconv(1M) と auditon(2) で説明されている Solaris 監査と Solaris 基本セキュリティーモジュールの監査はサポートされません。監査サブシステムは常に無効になっているように見えます。
cpc(3CPC) で説明されている CPU パフォーマンスカウンタ機能は使用できません。
次に示すディスクおよびハードウェア関連のコマンドは機能しません。
add_drv(1M)
disks(1M)
format(1M)
fdisk(1M)
prtdiag(1M)
rem_drv(1M)
委任されている ZFS データセットをゾーンで使用することはできませんが、ZFS ファイルシステム上にゾーンを配置することはできます。大域ゾーンと共有する ZFS ファイルシステムを、zonecfg fs 資源を介して追加することができます。「solaris8 ブランドゾーンの構成方法」の手順 7 を参照してください。
setfacl コマンドと getfacl コマンドは ZFS には使用できません。cpio アーカイブまたは tar アーカイブのファイルに ACL が設定されている場合にアーカイブを展開すると、ACL を設定できないという警告が発生しますが、ファイルは正常に展開されます。これらのコマンドは UFS に使用できます。
zonecfg コマンドを使用して、次のコンポーネントを solaris8 ブランドゾーンに追加することができます。
fs 資源を使用して、追加の Solaris ファイルシステムをブランドゾーンに追加できます。例については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「ゾーンの構成方法」を参照してください。
device 資源を使用して、solaris8 非大域ゾーンにデバイスを追加できます。デバイスを追加する方法については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 18 章「非大域ゾーンの計画と構成 (手順)」を参照してください。非大域ゾーンのデバイスに関する考慮事項の詳細は、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「非大域ゾーンでのデバイスの使用」を参照してください。
limitpriv 資源を使用して、solaris8 非大域ゾーンに特権を追加できます。特権を追加する方法については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 18 章「非大域ゾーンの計画と構成 (手順)」および『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「非大域ゾーン内の特権」を参照してください。
ネットワーク構成を指定できます。詳細は、「事前構成作業」、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「共有 IP 非大域ゾーンにおけるネットワーク」、および『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「Solaris 10 8/07: 排他的 IP 非大域ゾーンにおけるネットワーク」を参照してください。
さまざまな資源制御機能を使用できます。詳細は、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 17 章「非大域ゾーンの構成 (概要)」、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 18 章「非大域ゾーンの計画と構成 (手順)」、および『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 26 章「Solaris のゾーン管理 (概要)」を参照してください。
既存の Solaris 8 システムを solaris8 ブランドゾーンに直接移行することができます。これは、システムで Solaris 2/04 リリースが稼働している場合に最適です。詳細は、「Solaris 8 システムをゾーンに直接移行するためのイメージの作成」を参照してください。