JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris の管理: Oracle Solaris コンテナ - リソース管理と Oracle Solaris ゾーン     Oracle Solaris 10 1/13 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I リソース管理

1.  Solaris 10 リソース管理の紹介

2.  プロジェクトとタスク (概要)

3.  プロジェクトとタスクの管理

4.  拡張アカウンティング (概要)

5.  拡張アカウンティングの管理 (タスク)

6.  リソース制御 (概要)

7.  リソース制御の管理 (タスク)

8.  公平配分スケジューラ (概要)

9.  公平配分スケジューラの管理 (タスク)

10.  リソース上限デーモンによる物理メモリーの制御 (概要)

11.  リソース上限デーモンの管理 (タスク)

12.  リソースプール (概要)

13.  リソースプールの作成と管理 (タスク)

14.  リソース管理の構成例

15.  Solaris 管理コンソールのリソース制御機能

パート II ゾーン

16.  Solaris ゾーンの紹介

ゾーンの概要

ブランドゾーンについて

ゾーンを使用する場合

ゾーンのしくみ

ゾーン機能のサマリー

非大域ゾーンの管理のしくみ

非大域ゾーンの作成のしくみ

非大域ゾーンの状態モデル

非大域ゾーンの特性

非大域ゾーンでのリソース管理機能の使用

非大域ゾーンによって提供される機能

システムのゾーンの設定 (タスクマップ)

17.  非大域ゾーンの構成 (概要)

18.  非大域ゾーンの計画と構成 (タスク)

19.  非大域ゾーンのインストール、停止、複製、およびアンインストールについて (概要)

20.  非大域ゾーンのインストール、ブート、停止、アンインストール、および複製 (タスク)

21.  非大域ゾーンへのログイン (概要)

22.  非大域ゾーンへのログイン (タスク)

23.  非大域ゾーンの移動と移行 (タスク)

24.  Oracle Solaris 10 9/10: ゾーンへの物理的な Oracle Solaris システムの移行 (タスク)

25.  ゾーンがインストールされている Oracle Solaris システムでのパッケージとパッチについて (概要)

26.  ゾーンがインストールされている Oracle Solaris システムでのパッケージとパッチの追加および削除 (タスク)

27.  Oracle Solaris ゾーンの管理 (概要)

28.  Oracle Solaris ゾーンの管理 (タスク)

29.  非大域ゾーンにインストールされている Oracle Solaris 10 システムのアップグレード

30.  Oracle Solaris ゾーンで発生するさまざまな問題のトラブルシューティング

パート III lx ブランドゾーン

31.  ブランドゾーンと Linux ブランドゾーンについて

32.  lx ブランドゾーン構成の計画 (概要)

33.  lx ブランドゾーンの構成 (タスク)

34.  lx ブランドゾーンのインストール、ブート、停止、複製、およびアンインストールについて (概要)

35.  lx ブランドゾーンのインストール、ブート、停止、アンインストール、および複製 (タスク)

36.  lx ブランドゾーンへのログイン (タスク)

37.  lx ブランドゾーンの移動と移行 (タスク)

38.  lx ブランドゾーンでのアプリケーションの管理と実行 (タスク)

用語集

索引

ゾーンのしくみ

非大域ゾーンは、1 つの箱と考えることができます。この箱の中では、システムのほかの部分と相互に作用することなく、1 つ以上のアプリケーションを実行できます。Solaris ゾーンは、ソフトウェアで定義される柔軟な境界を使用して、ソフトウェアアプリケーションやサービスを隔離します。これにより Solaris オペレーティングシステムの 1 つのインスタンス内で実行されるアプリケーションを互いに独立して管理することができます。したがって、同じアプリケーションのさまざまなバージョンをそれぞれ異なるゾーンで実行でき、構成の要件を満たすことができます。

ゾーンに割り当てられたプロセスは、同じゾーンに割り当てられたほかのプロセスを操作、監視したり、これらのプロセスと直接通信したりできます。システムのほかのゾーンに割り当てられたプロセスや、ゾーンに割り当てられていないプロセスに対しては、このような機能は実行できません。異なるゾーンに割り当てられたプロセスどうしでは、ネットワーク API を介した通信のみ可能です。

Solaris 10 8/07 以降では、ゾーンが独自の排他的 IP インスタンスを持っているか、または IP 層の構成と状態を大域ゾーンと共有しているかに応じて、IP ネットワーク接続を 2 通りの方法で構成できます。ゾーンの IP タイプの詳細については、「ゾーンネットワークインタフェース」を参照してください。構成については、「ゾーンの構成方法」を参照してください。

Solaris システムごとに 1 つの「大域ゾーン」があります。大域ゾーンは 2 つの機能を持っています。大域ゾーンは、システムのデフォルトのゾーンであり、システム全体の管理に使用されるゾーンでもあります。「大域管理者」が「非大域ゾーン」(単にゾーンとも呼ばれる) を作成した場合を除き、すべてのプロセスが大域ゾーンで実行されます。

非大域ゾーンの構成、インストール、管理、およびアンインストールは、大域ゾーンからのみ行うことができます。システムハードウェアからブートできるのは、大域ゾーンだけです。物理デバイス、共有 IP ゾーンでのルーティング、動的再構成 (DR) といったシステム基盤の管理は、大域ゾーンでのみ行うことができます。大域ゾーンで実行されるプロセスは、適切な権限が付与されていれば、ほかのゾーンに関連付けられているオブジェクトにもアクセスできます。

非大域ゾーンの特権付きプロセスには許可されていない操作を、大域ゾーンの特権のないプロセスが実行できることもあります。たとえば、大域ゾーンのユーザーは、システムのすべてのプロセスに関する情報を表示できます。この機能がサイトで問題になる場合は、大域ゾーンへのアクセスを制限します。

大域ゾーンも含め、各ゾーンにはゾーン名が割り当てられます。大域ゾーンの名前は常に global となります。各ゾーンには、一意の数値 ID も与えられます。これは、ゾーンのブート時にシステムによって割り当てられます。大域ゾーンには、常に ID 0 が割り当てられます。ゾーンの名前と数値 ID については、zonecfg コマンドの使用」を参照してください。

各ゾーンには、ノード名も割り当てられます。これは、ゾーン名とは完全に独立した名前です。ノード名は、ゾーンの管理者によって割り当てられます。詳細は、「非大域ゾーンのノード名」を参照してください。

各ゾーンには、ルートディレクトリのパスが設定されます。これは、大域ゾーンのルートディレクトリに対する相対パスです。詳細は、zonecfg コマンドの使用」を参照してください。

デフォルトでは、非大域ゾーンのスケジューリングクラスは、システムのスケジューリングクラスと同じに設定されます。ゾーンのスケジューリングクラスを設定する方法については、「ゾーンのスケジューリングクラス」を参照してください。

priocntl (priocntl(1) のマニュアルページを参照) を使用すると、デフォルトのスケジューリングクラスの変更やリブートを行うことなく、実行中のプロセスを別のスケジューリングクラスに移動できます。

ゾーン機能のサマリー

次の表に、大域ゾーンと非大域ゾーンの特性をまとめます。

ゾーンの種類
特性
大域
  • システムによって ID 0 が割り当てられます

  • システムでブートされ実行される Solaris カーネルの単一のインスタンスを提供します

  • Oracle Solaris システムソフトウェアパッケージの完全なインストールが含まれています

  • 追加のソフトウェアパッケージや、パッケージを通してインストールされない追加のソフトウェア、ディレクトリ、ファイル、その他のデータが含まれている場合もあります

  • 大域ゾーンにインストールされているすべてのソフトウェアコンポーネントに関する情報を格納した、一貫性のある完全な製品データベースを提供します

  • 大域ゾーンのホスト名やファイルシステムテーブルなど、大域ゾーンのみに固有の構成情報を保持します

  • すべてのデバイスとすべてのファイルシステムが認識される、唯一のゾーンです

  • 非大域ゾーンの存在と構成が認識される、唯一のゾーンです

  • 非大域ゾーンの構成、インストール、管理、またはアンインストールを行うことができる、唯一のゾーンです

非大域
  • ゾーンのブート時にシステムによってゾーン ID が割り当てられます

  • 大域ゾーンからブートされる Solaris カーネルの下で処理を共有します

  • 完全な Oracle Solaris オペレーティングシステムソフトウェアパッケージのインストール済みのサブセットが含まれています

  • 大域ゾーンから共有された Oracle Solaris ソフトウェアパッケージが含まれています

  • 大域ゾーンから共有されたものではない、インストールされた追加のソフトウェアパッケージが含まれていることもあります

  • 追加のソフトウェア、ディレクトリ、ファイル、非大域ゾーンで作成されたその他のデータなど、パッケージを通してインストールされないもの、あるいは、大域ゾーンからの共有でないものが含まれていることもあります

  • ゾーンにインストールされているすべてのソフトウェアコンポーネントに関する情報を格納した、一貫性のある完全な製品データベースを持ちます。非大域ゾーンに置かれているコンポーネントと、読み取り専用モードで大域ゾーンから共有されるコンポーネントがあります

  • ほかのゾーンの存在を認識できません

  • 自身を含め、ゾーンのインストール、管理、アンインストールを行うことはできません

  • 非大域ゾーンのホスト名やファイルシステムテーブルなど、その非大域ゾーンのみに固有の構成情報を保持します

  • 独自のタイムゾーン設定を持つことができます

非大域ゾーンの管理のしくみ

大域管理者は、スーパーユーザー特権または Primary Administrator の役割を持ちます。大域ゾーンにログインすると、大域管理者はシステム全体を監視したり制御したりできます。

非大域ゾーンは「ゾーン管理者」が管理できます。大域管理者が Zone Management プロファイルをゾーン管理者に割り当てます。ゾーン管理者の特権は、非大域ゾーンに対してのみ有効です。

非大域ゾーンの作成のしくみ

大域管理者が zonecfg コマンドを使ってゾーンを構成します。このとき、ゾーンの仮想プラットフォームやアプリケーション環境に応じて、各種のパラメータを指定します。次に、大域管理者がゾーンをインストールします。大域管理者は、ゾーン管理コマンド zoneadm を使用して、ゾーンに対応するファイルシステム階層にソフトウェアをパッケージレベルでインストールします。大域管理者は、zlogin コマンドを使用して、インストールされたゾーンにログインできます。初回ログイン時にゾーンの内部構成が完了します。次に、zoneadm コマンドを使ってゾーンをブートします。

ゾーンの構成については、第 17 章非大域ゾーンの構成 (概要)を参照してください。ゾーンのインストールについては、第 19 章非大域ゾーンのインストール、停止、複製、およびアンインストールについて (概要)を参照してください。ゾーンへのログインについては、第 21 章非大域ゾーンへのログイン (概要)を参照してください。

非大域ゾーンの状態モデル

非大域ゾーンの状態は、次の 6 つのいずれかになります。

構成済み

ゾーンの構成は完了し、安定した記憶領域に確定されています。ただし、ゾーンのアプリケーション環境の要素のうち、最初のブート後に指定する必要のあるものは、まだ含まれていません。

不完全

インストール処理やアンインストール処理の途中は、zoneadm によってターゲットゾーンの状態が「不完全」に設定されます。処理が正常に完了すると、適切な状態に設定されます。

インストール済み

ゾーンの構成はシステム上でインスタンス化されています。zoneadm コマンドにより、指定された Solaris システムでその構成を正常に使用できるかどうかが確認されます。パッケージはゾーンのルートパスにインストールされます。この状態では、ゾーンに関連付けられた仮想プラットフォームはありません。

準備完了

ゾーンの仮想プラットフォームが確立されています。カーネルにより zsched プロセスが作成され、ネットワークインタフェースが設定されてゾーンで使用可能になり、ファイルシステムがマウントされ、デバイスの構成が完了しています。システムにより、一意のゾーン ID が割り当てられます。この状態では、ゾーンに関連付けられたプロセスは起動されていません。

稼働

ゾーンのアプリケーション環境に関連付けられたユーザープロセスが稼働状態です。アプリケーション環境に関連付けられた最初のユーザープロセス (init) が作成されるとすぐに、ゾーンの状態は「稼働」になります。

停止処理中および停止

これらは、ゾーンの停止処理の間に見られる遷移状態です。ただし、なんらかの理由でゾーンを停止処理できない場合は、ゾーンがどちらかの状態で停止します。

zoneadm コマンドを使用してこれらの状態間の遷移を開始する方法については、第 20 章非大域ゾーンのインストール、ブート、停止、アンインストール、および複製 (タスク)および zoneadm(1M) のマニュアルページを参照してください。

表 16-1 ゾーンの状態に影響を与えるコマンド

ゾーンの現在の状態
適用できるコマンド
構成済み
zonecfg -z zonename verify

zonecfg -z zonename commit

zonecfg -z zonename delete

zoneadm -z zonename attach

zoneadm -z zonename verify

zoneadm -z zonename install

zoneadm -z zonename clone

zonecfg を使用して、構成済みまたはインストール済みの状態にあるゾーンの名前を変更することもできます。

不完全
zoneadm -z zonename uninstall
インストール済み
zoneadm -z zonename ready (オプション)

zoneadm -z zonename boot

zoneadm -z zonename uninstall は、指定されたゾーンの構成をシステムからアンインストールします。

zoneadm -z zonename move path

zoneadm -z zonename detach

zonecfg -z zonename を使用すると、attrbootargscapped-memorydatasetdedicated-cpudevicefsip-typelimitprivnetrctl、または scheduling-class プロパティーを追加または削除することができます。インストール済み状態のゾーンの名前を変更することもできます。inherit-pkg-dir リソースは変更できません。

準備完了
zoneadm -z zonename boot

zoneadm halt とシステムリブートを実行すると、準備完了状態のゾーンがインストール済み状態に戻ります。

zonecfg -z zonename を使用すると、attrbootargscapped-memorydatasetdedicated-cpudevicefsip-typelimitprivnetrctl、または scheduling-class プロパティーを追加または削除することができます。inherit-pkg-dir リソースは変更できません。

稼働
zlogin options zonename

zoneadm -z zonename reboot

zoneadm -zzonename halt を実行すると、準備完了状態のゾーンがインストール済み状態に戻ります。

zoneadm halt とシステムのリブートを実行すると、稼働状態のゾーンがインストール済み状態に戻ります。

zonecfg -z zonename を使用すると、attrbootargscapped-memorydatasetdedicated-cpudevicefsip-typelimitprivnetrctl、または scheduling-class プロパティーを追加または削除することができます。zonepath リソースと inherit-pkg-dir リソースは変更できません。


注 - zonecfg 経由で変更されたパラメータは、稼働中のゾーンには影響しません。変更を適用するには、ゾーンをリブートする必要があります。


非大域ゾーンの特性

ゾーンを使用すると、必要に応じてほぼどのような単位にも細かく隔離できます。専用の CPU、物理デバイス、物理メモリーの一部分などをゾーンに割り当てる必要はありません。このようなリソースは、1 つのドメインまたはシステムで実行される複数のゾーンに渡って多重化するか、オペレーティングシステムに用意されているリソース管理機能を使ってゾーンごとに割り当てることができます。

ゾーンごとにカスタマイズされたサービスを提供できます。基本的なプロセス隔離を強化するために、同じゾーン内のプロセスのみ互いに認識したりシグナルを送信したりできます。ゾーン間で基本的な通信を行うには、各ゾーンに IP 接続機能を持たせます。あるゾーンで実行中のアプリケーションが、別のゾーンのネットワークトラフィックを監視することはできません。それぞれのパケットストリームが同じ物理インタフェースを通過する場合でも、この隔離は維持されます。

各ゾーンには、ファイルシステム階層の一部分が割り当てられます。各ゾーンは、ファイルシステム階層で割り当てられた部分ツリーに限定されます。したがって、特定のゾーンで実行されている作業負荷は、別のゾーンで実行されているほかの作業負荷のディスク上のデータにアクセスすることはできません。

ネームサービスで使用されるファイルは、ゾーン独自のルートファイルシステムのビュー内に置かれます。したがって、異なるゾーンのネームサービスは互いに隔離され、サービスごとに異なる構成を使用できます。

非大域ゾーンでのリソース管理機能の使用

リソース管理機能を使用する場合は、リソース管理制御の境界とゾーンの境界をそろえる必要があります。このように境界をそろえることで、名前空間のアクセス、セキュリティー隔離、およびリソースの使用状況をすべて制御できる、より完成された仮想マシンのモデルを作成できます。

ゾーンで各種のリソース管理機能を使用するための特殊要件については、このドキュメントでこれらの機能に関連する各章を参照してください。