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.  非大域ゾーンの構成 (概要)

この章に追加されている説明

ゾーンのリソースについて

インストール前の構成処理

ゾーンのコンポーネント

ゾーンの名前とパス

ゾーンの自動ブート

リソースプールの関連付け

Solaris 10 8/07: dedicated-cpu リソース

Solaris 10 5/08: capped-cpu リソース

ゾーンのスケジューリングクラス

Solaris 10 8/07: 物理メモリーの制御と capped-memory リソース

ゾーンネットワークインタフェース

共有 IP 非大域ゾーン

Solaris 10 8/07: 排他的 IP 非大域ゾーン

共有 IP 非大域ゾーンと排他的 IP 非大域ゾーンのセキュリティーの相違

共有 IP 非大域ゾーンと排他的 IP 非大域ゾーンの同時使用

ゾーンでマウントされるファイルシステム

ゾーンで構成されるデバイス

ゾーン内のホスト ID

ゾーン規模のリソース制御の設定

Solaris 10 11/06 以降: 構成可能な特権

ゾーンのコメントの追加

zonecfg コマンドの使用

zonecfg のモード

zonecfg の対話型モード

zonecfg のコマンドファイルモード

ゾーン構成データ

リソースタイプとプロパティータイプ

リソースタイプのプロパティー

Tecla コマンド行編集ライブラリ

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 ブランドゾーンでのアプリケーションの管理と実行 (タスク)

用語集

索引

ゾーン構成データ

ゾーン構成データは 2 種類のエンティティーから成ります。 リソースとプロパティーです。各リソースは、タイプのほかにも 1 つ以上のプロパティーを持つことがあります。プロパティーは名前と値から成ります。どのようなプロパティーセットを持つかは、リソースタイプによって異なります。

リソースタイプとプロパティータイプ

リソースタイプとプロパティータイプは次のとおりです。

ゾーン名

ゾーン名は、構成ユーティリティーでゾーンを識別するために使用されます。ゾーン名には次のような規則が適用されます。

  • 各ゾーンの名前は一意でなければならない。

  • ゾーン名では大文字と小文字が区別される。

  • ゾーン名は英数字で始まる必要がある。

    名前には、英数字、下線 (_)、ハイフン (-)、およびピリオド (.) を使用できます。

  • 名前の長さは 64 文字以内でなければならない。

  • global という名前と SUNW で始まるすべての名前は、予約されているので使用できない。

zonepath

zonepath プロパティーは、ゾーンのルートを含むパスです。各ゾーンでは、大域ゾーンのルートディレクトリファイルシステムの zonepath の下に root ディレクトリがあります。ゾーンのインストール時に、適切な所有者とモードによる zonepath ディレクトリ階層が作成されます。zonepath ディレクトリは、所有者が root、モードが 700 で所有される必要があります。

非大域ゾーンのルートパスは 1 つ下のレベルになります。ゾーンのルートディレクトリの所有権とアクセス権は、大域ゾーンのルートディレクトリ (/) と同じになります。ゾーンのディレクトリの所有者は root で、モードは 755 であることが必要です。これらのディレクトリは正しいアクセス権を使って自動作成され、ゾーン管理者がこれらのディレクトリを検証する必要はありません。この階層構造により、大域ゾーンのユーザーでも権限を持っていない場合は、非大域ゾーンのファイルシステムと行き来できなくなります。

パス
説明
/home/export/my-zone
zonecfg zonepath
/home/export/my-zone/root
ゾーンのルート
/home/export/my-zone/dev
ゾーン用に作成されたデバイス

この問題の詳細については、「ファイルシステムの行き来」を参照してください。

autoboot

このプロパティーを true に設定すると、大域ゾーンのブート時にこのゾーンが自動的にブートされます。ゾーンサービス svc:/system/zones:default が無効になっている場合、このプロパティーの設定にかかわらず、ゾーンは自動的にはブートしません。svcadm(1M) のマニュアルページに記載されているように、svcadm コマンドを使用してゾーンサービスを有効にできます。

global# svcadm enable zones
bootargs

Solaris 10 8/07: このプロパティーは、ゾーンのブート引数を設定するために使用します。rebootzoneadm boot、または zoneadm reboot コマンドで無効にされた場合を除き、このブート引数が適用されます。「Solaris 10 8/07: ゾーンのブート引数」を参照してください。

pool

このプロパティーは、システム上のリソースプールをゾーンに関連付けるために使用します。1 つのプール内のリソースを複数のゾーンが共有してもかまいません。「Solaris 10 8/07: dedicated-cpu リソース」も参照してください。

limitpriv

Solaris 10 11/06 以降: このプロパティーは、デフォルト以外の特権マスクを指定する場合に使用します。「非大域ゾーン内の特権」を参照してください。

特権を追加するには、特権名だけを指定するか、特権名の前に priv_ 付けて指定します。特権を除外するには、名前の前にダッシュ (-) または感嘆符 (!) を付けます。複数の特権は、コンマで区切り、引用符 () で囲みます。

priv_str_to_set(3C)で説明されているように、特殊な特権セット noneall、および basic は、それぞれの通常の定義に展開されます。ゾーン構成は大域ゾーンで行われるため、特殊な特権セット zone は使用できません。特定の特権を追加または削除してデフォルトの特権セットを変更するのが一般的な使用方法であるため、特殊なセットである default はデフォルトの特権セットにマップされます。limitpriv プロパティーの先頭に default がある場合、デフォルトセットに展開されます。

次のエントリは、dtrace_proc 特権と dtrace_user 特権だけを必要とする DTrace プログラムをゾーンで使用できるようにします。

global# zonecfg -z userzone
zonecfg:userzone> set limitpriv="default,dtrace_proc,dtrace_user"

ゾーンの特権セットに不許可の特権が含まれる場合、必須の特権が欠落している場合、または未知の特権が含まれる場合、ゾーンの検証、準備、またはブートの試行は失敗し、エラーメッセージが表示されます。

scheduling-class

Solaris 10 8/07: このプロパティーは、ゾーンのスケジューリングクラスを設定します。詳細とヒントについては、「ゾーンのスケジューリングクラス」を参照してください。

ip-type

Solaris 10 8/07: このプロパティーは、ゾーンが排他的 IP ゾーンである場合のみ設定する必要があります。「Solaris 10 8/07: 排他的 IP 非大域ゾーン」および 「ゾーンの構成方法」を参照してください。

dedicated-cpu

Solaris 10 8/07: このリソースは、ゾーンの実行中にシステムのプロセッサの一部をそのゾーン専用に割り当てます。dedicated-cpu リソースは、ncpus の制限を設定し、必要に応じて importance も設定します。詳細は、「Solaris 10 8/07: dedicated-cpu リソース」を参照してください。

capped-cpu リソース

Solaris 10 5/08: このリソースは、ゾーンの実行中にゾーンで消費可能な CPU リソース量に対する制限を設定します。このリソースは、ncpus に制限を設けます。

capped-memory リソース

Solaris 10 8/07: このリソースは、ゾーンのメモリー上限を設定するためのプロパティーをグループ化します。capped-memory リソースは、physicalswap、および locked メモリーの制限を設定します。これらのプロパティーの少なくとも 1 つは指定する必要があります。

dataset

Solaris 10 6/06: ZFS ファイルシステムのデータセットリソースを追加すると、ストレージ管理を非大域ゾーンに委譲できます。ゾーン管理者は、そのデータセット内のファイルシステムの作成と破棄、クローンの作成と破棄、およびデータセットのプロパティーの変更を行うことができます。ゾーン管理者は、ゾーンに追加されていないデータセットを操作したり、ゾーンに割り当てられているデータセットに設定されている最上位レベルの割り当て制限を超過したりすることはできません。

次の方法で、ZFS データセットをゾーンに追加できます。

  • lofs マウントされたファイルシステムとして (大域ゾーンとの領域共有のみが目的の場合)

  • 委任されたデータセットとして

『Oracle Solaris ZFS 管理ガイド』の第 10 章「Oracle Solaris ZFS の高度なトピック」および 「ファイルシステムと非大域ゾーン」を参照してください。

データセットの問題については、第 30 章Oracle Solaris ゾーンで発生するさまざまな問題のトラブルシューティングも参照してください。

fs

各ゾーンでは、インストール済み状態から準備完了状態に移行するときにマウントする各種のファイルシステムを指定できます。ファイルシステムリソースは、ファイルシステムのマウントポイントのパスを指定します。ゾーンでファイルシステムを使用する方法の詳細については、「ファイルシステムと非大域ゾーン」を参照してください。

inherit-pkg-dir

完全ルートゾーンでは、このリソースを構成するべきではありません。

疎ルートゾーンで inherit-pkg-dir リソースを使用すると、非大域ゾーンが大域ゾーンと共有するソフトウェアパッケージの保存先ディレクトリを指定できます。

inherit-pkg-dir ディレクトリに転送されるソフトウェアパッケージの内容は、非大域ゾーンでは読み取り専用モードで継承されます。ゾーンのパッケージデータベースが更新され、パッケージが反映されます。zoneadm を使用してゾーンをインストールした後で、これらのリソースを変更または削除することはできません。


注 - 構成には、デフォルトの inherit-pkg-dir リソースが 4 つ含まれています。これらのディレクトリリソースは、大域ゾーンからどのディレクトリが関連パッケージを継承するべきかを指定します。リソースの実装は、読み取り専用のループバックファイルシステムマウントによって行われます。

  • /lib

  • /platform

  • /sbin

  • /usr


net

ネットワークインタフェースリソースは、インタフェースの名前です。各ゾーンでは、インストール済み状態から準備完了状態に移行するときに設定するべきネットワークインタフェースを指定できます。

device

デバイスリソースは、デバイス照合の指定子です。各ゾーンでは、インストール済み状態から準備完了状態に移行するときに構成するべきデバイスを指定できます。

rctl

rctl リソースは、ゾーン規模のリソース制御に使用されます。リソース制御は、ゾーンがインストール済み状態から準備完了状態に移行するときに有効になります。

hostid

大域ゾーンの hostid とは異なる hostid を設定できます。

attr

この汎用属性は、ユーザーコメントとして使用したり、ほかのサブシステムで使用したりできます。attrname プロパティーは、英数字で始まる必要があります。name プロパティーには、英数字、ハイフン (-)、およびピリオド (.) を使用できます。zone. で始まる属性名はシステム用に予約されています。

リソースタイプのプロパティー

リソースには、構成可能なプロパティーもあります。リソースタイプとそれに関連付けられるプロパティーは次のとおりです。

dedicated-cpu

ncpusimportance

Solaris 10 8/07: CPU の数を指定し、必要に応じてプールの相対的な重要性も指定します。次の例では、ゾーン my-zone で使用する CPU の範囲を指定します。importance も設定します。

zonecfg:my-zone> add dedicated-cpu
zonecfg:my-zone:dedicated-cpu> set ncpus=1-3
zonecfg:my-zone:dedicated-cpu> set importance=2
zonecfg:my-zone:dedicated-cpu> end
capped-cpu

ncpus

CPU の数を指定します。次の例では、ゾーン my-zone の CPU 数のキャップを 3.5 に指定します。

zonecfg:my-zone> add capped-cpu
zonecfg:my-zone:capped-cpu> set ncpus=3.5
zonecfg:my-zone:capped-cpu> end
capped-memory

physicalswaplocked

ゾーン my-zone のメモリー制限を指定します。各制限はオプションですが、少なくとも 1 つは設定する必要があります。

zonecfg:my-zone> add capped-memory
zonecfg:my-zone:capped-memory> set physical=50m
zonecfg:my-zone:capped-memory> set swap=100m
zonecfg:my-zone:capped-memory> set locked=30m
zonecfg:my-zone:capped-memory> end
fs

dirspecialrawtypeoptions

fs リソースのパラメータは、ファイルシステムをマウントする方法と場所を決定する値を指定します。fs のパラメータは次のように定義されています。

dir

ファイルシステムのマウントポイントを指定します

special

大域ゾーンからマウントするブロック型特殊デバイスの名前またはディレクトリを指定します

raw

ファイルシステムをマウントする前に fsck を実行する、raw デバイスを指定します

type

ファイルシステムのタイプを指定します

options

mount コマンドで使用されるオプションに似たマウントオプションを指定します

次の例では、大域ゾーンの /dev/dsk/c0t0d0s2 を、構成中のゾーンに /mnt としてマウントするように指定します。raw プロパティーでデバイスを指定する (オプション) と、ファイルシステムのマウントを実行する前に、そのデバイスに対して fsck コマンドが実行されます。使用するファイルシステムの種類は UFS です。nodevices オプションと logging オプションも追加します。

zonecfg:my-zone> add fs
zonecfg:my-zone:fs> set dir=/mnt
zonecfg:my-zone:fs> set special=/dev/dsk/c0t0d0s2
zonecfg:my-zone:fs> set raw=/dev/rdsk/c0t0d0s2
zonecfg:my-zone:fs> set type=ufs
zonecfg:my-zone:fs> add options [nodevices,logging]
zonecfg:my-zone:fs> end

詳細は、-o nosuid オプション」「セキュリティーの制限およびファイルシステムの動作」、および fsck(1m)mount(1M) のマニュアルページを参照してください。また、セクション 1M のマニュアルページには、特定のファイルシステムに固有のマウントオプションに関するものがあります。このようなマニュアルページの名前は、mount_ filesystem という形式です。


注 - fs リソースプロパティーを使用して ZFS ファイルシステムを追加する方法については、『Oracle Solaris ZFS 管理ガイド』の「ZFS ファイルシステムを非大域ゾーンに追加する」を参照してください。


dataset

name

次の例では、データセット sales を非大域ゾーンでマウントして可視にし、大域ゾーンでは不可視にするように指定します。

zonecfg:my-zone> add dataset
zonecfg:my-zone> set name=tank/sales
zonecfg:my-zone> end
inherit-pkg-dir

dir

次の例では、大域ゾーンから /opt/sfw をループバックマウントするように指定します。

zonecfg:my-zone> add inherit-pkg-dir
zonecfg:my-zone:inherit-pkg-dir> set dir=/opt/sfw
zonecfg:my-zone:inherit-pkg-dir> end
net

addressphysicaldefrouter


注 - 共有 IP ゾーンの場合は、IP アドレスとデバイスの両方を指定します。必要に応じて、デフォルトのルーターを設定できます。

  • 大域ゾーンで構成されていないサブネット上に非大域ゾーンがある場合、defrouter プロパティーを使用してデフォルト経路を設定できます。

  • defrouter プロパティーを設定したゾーンは、大域ゾーンで構成されていないサブネット上にある必要があります。

共有 IP ゾーンがそれぞれ異なるサブネット上にある場合は、大域ゾーンでデータリンクを構成しないでください。

排他的 IP ゾーンの場合は、物理インタフェースだけを指定します。physical プロパティーは VNIC でもかまいません。


次に示す共有 IP ゾーンの例では、IP アドレス 192.168.0.1 をゾーンに追加します。物理インタフェースとして hme0 カードを使用します。どの物理インタフェースを使用するかを決定するには、システムで ifconfig -a と入力します。出力の各行は、ループバックドライバの行を除き、システムにインストールされているカードの名前で始まります。説明に LOOPBACK が含まれている場合、その行はカードに関するものではありません。

zonecfg:my-zone> add net
zonecfg:my-zone:net> set physical=hme0
zonecfg:my-zone:net> set address=192.168.0.1
zonecfg:my-zone:net> end

次に示す排他的 IP ゾーンの例では、物理インタフェースとして bge32001 リンクを使用します。使用可能なデータリンクを調べるには、dladm show-link を使用してください。排他的 IP ゾーンで使用するデータリンクは GLDv3 でなければならず、GLDv3 以外のデータリンクは dladm show-link の出力に type: legacy と表示されます。ip-type=exclusive も指定する必要があります。

zonecfg:my-zone> set ip-type=exclusive
zonecfg:my-zone> add net
zonecfg:my-zone:net> set physical=bge32001
zonecfg:my-zone:net> end
device

match

次の例では、/dev/pts デバイスをゾーンに追加します。

zonecfg:my-zone> add device
zonecfg:my-zone:device> set match=/dev/pts*
zonecfg:my-zone:device> end
rctl

namevalue

Solaris 10 8/07: このリリースで新しく追加されたリソース制御は、zone.max-locked-memoryzone.max-msg-idszone.max-sem-idszone.max-shm-idszone.max-shm-memory、および zone.max-swap です。

次のゾーン規模のリソース制御を使用できます:

  • zone.cpu-shares (推奨: cpu-shares )

  • zone.max-locked-memory

  • zone.max-lwps (推奨: max-lwps)

  • zone.max-msg-ids (推奨: max-msg-ids )

  • zone.max-sem-ids (推奨: max-sem-ids )

  • zone.max-shm-ids (推奨: max-shm-ids )

  • zone.max-shm-memory (推奨: max-shm-memory )

  • zone.max-swap

ゾーン規模のリソース制御を設定する場合に望ましい、より簡単な方法は、rctl リソースの代わりにプロパティー名を使用する方法です。詳細は、「ゾーンの構成方法」を参照してください。add rctl を使ってゾーン内のゾーン規模のリソース制御エントリを構成する場合、その形式は project データベース内のリソース制御エントリの形式とは異なります。ゾーン構成では、rctl リソースタイプは、名前と値の対 3 つから成ります。これらの名前は、privlimit、および action です。これらの名前には、単純な値がそれぞれ設定されます。

zonecfg:my-zone> add rctl
zonecfg:my-zone:rctl> set name=zone.cpu-shares
zonecfg:my-zone:rctl> add value (priv=privileged,limit=10,action=none)zonecfg:my-zone:rctl> end
zonecfg:my-zone> add rctl
zonecfg:my-zone:rctl> set name=zone.max-lwps
zonecfg:my-zone:rctl> add value (priv=privileged,limit=100,action=deny)
zonecfg:my-zone:rctl> end

リソース制御と属性の概要については、第 6 章リソース制御 (概要)および 「非大域ゾーンで使用されるリソース制御」を参照してください。

attr

nametypevalue

次の例では、ゾーンに関するコメントを追加します。

zonecfg:my-zone> add attr
zonecfg:my-zone:attr> set name=comment
zonecfg:my-zone:attr> set type=string
zonecfg:my-zone:attr> set value="Production zone"
zonecfg:my-zone:attr> end

export サブコマンドを使用すると、ゾーン構成を標準出力に出力できます。構成は、コマンドファイルに使用できる形式で保存されます。