ゾーン構成データは、「リソース」と「プロパティー」という 2 種類のエンティティーから成ります。各リソースは、タイプのほかにも 1 つ以上のプロパティーを持つことがあります。プロパティーは名前と値から成ります。どのようなプロパティーセットを持つかは、リソースタイプによって異なります。
ゾーンの名前。ゾーン名には次のような規則が適用されます。
各ゾーンの名前は一意でなければならない。
ゾーン名では大文字と小文字が区別される。
ゾーン名は英数字で始まる必要がある。
名前には、英数字、下線 (_)、ハイフン (-)、およびピリオド (.) を使用できます。
名前の長さは 63 文字以内でなければならない。
名前 global は、大域ゾーン用に予約されています。
SYS で始まる名前は予約されており、使用できません。
zonecfg template プロパティーで作成されたゾーンでは、zonepath のデフォルト値は /system/zones/zonename です。
指定されている場合、zonepath プロパティーは、ゾーンがインストールされるパスを示します。各ゾーンには、ルートディレクトリのパスが設定されます。これは、大域ゾーンのルートディレクトリに対する相対パスです。インストール時には、大域ゾーンのディレクトリの可視性が制限されている必要があります。ゾーンのパスの所有者は root で、モードは 700 です。ゾーンのパスが存在しない場合、インストール時に自動的に作成されます。アクセス権が正しくない場合、自動的に修正されます。
非大域ゾーンのルートパスは 1 つ下のレベルになります。ゾーンのルートディレクトリの所有権とアクセス権は、大域ゾーンのルートディレクトリ (/) と同じになります。ゾーンのディレクトリの所有者は root で、モードは 755 であることが必要です。この階層構造により、大域ゾーンのユーザーでも権限を持っていない場合は、非大域ゾーンのファイルシステムと行き来できなくなります。
ゾーンは、ZFS データセット上に存在する必要があります。ZFS データセットは、ゾーンのインストール時または接続時に自動的に作成されます。ZFS データセットを作成できない場合、ゾーンのインストールや接続は行われません。
|
詳細は、Oracle Solaris ゾーンの作成と使用 の ファイルシステムの行き来を参照してください。
zonecfg template プロパティーでは、zonepath のデフォルト値は /system/zones/zonename です。
このプロパティーを true に設定すると、大域ゾーンのブート時にこのゾーンが自動的にブートされます。これは、デフォルトでは false に設定されます。ゾーンサービス svc:/system/zones:default が無効になっている場合、このプロパティーの設定に関係なく、ゾーンは自動的にはブートしません。svcadm(1M) のマニュアルページに記載されているように、svcadm コマンドを使用してゾーンサービスを有効にできます。
global# svcadm enable zones
pkg update を実行中のこの設定については、Oracle Solaris ゾーンの作成と使用 の ゾーンのパッケージングの概要を参照してください。
大域スコープ。大域ゾーンのクリーンシャットダウン時にこのゾーンに対して実行するアクション。値は、shutdown (クリーンゾーンシャットダウン、デフォルト)、halt、または suspend です。
このプロパティーは、ゾーンのブート引数を設定するために使用します。reboot、zoneadm boot、または zoneadm reboot コマンドで無効にされた場合を除き、このブート引数が適用されます。Zone Boot Argumentsを参照してください。
このプロパティーは、デフォルト以外の特権マスクを指定するために使用されます。Oracle Solaris ゾーンの作成と使用 の 非大域ゾーン内の特権を参照してください。
特権を追加するには、特権名だけを指定するか、特権名の前に priv_ 付けて指定します。特権を除外するには、名前の前にダッシュ (-) または感嘆符 (!) を付けます。複数の特権は、コンマで区切り、引用符 (“) で囲みます。
priv_str_to_set(3C) で説明されているように、特殊な特権セット none、all、および basic は、それぞれの通常の定義に展開されます。ゾーン構成は大域ゾーンで行われるため、特殊な特権セット zone は使用できません。特定の特権を追加または削除してデフォルトの特権セットを変更するのが一般的な使用方法であるため、特殊なセットである default はデフォルトの特権セットにマップされます。limitpriv プロパティーの先頭に default がある場合、デフォルトセットに展開されます。
次のエントリは、dtrace_proc 特権と dtrace_user 特権だけを必要とする DTrace プログラムをゾーンで使用できるようにします。
global# zonecfg -z userzone zonecfg:userzone> set limitpriv="default,dtrace_proc,dtrace_user"
次のエントリでは、priocntlコマンドを使用して、システム上のアクティブなプロセス、タスク、またはプロジェクトに関連付けられたリソース制御を調べて変更できます。
global# zonecfg -z userzone zonecfg:userzone> set limitpriv="default,proc_priocntl"
ゾーンの特権セットに不許可の特権が含まれる場合、必須の特権が欠落している場合、または未知の特権が含まれる場合、ゾーンの検証、準備、またはブートの試行は失敗し、エラーメッセージが表示されます。
このプロパティーは、ゾーンのスケジューリングクラスを設定します。詳細とヒントについては、スケジューリングクラスを参照してください。
このプロパティーは、すべての非大域ゾーンのために設定する必要があります。排他的 IP 非大域ゾーン、共有 IP 非大域ゾーン、およびOracle Solaris ゾーンの作成と使用 の ゾーンの構成方法を参照してください。
このリソースは、ゾーンの実行中にシステムのプロセッサの一部をそのゾーン専用に割り当てます。dedicated-cpu リソースは、ncpus の制限を設定し、必要に応じて importance、ncores、cores、および sockets も設定します。詳細は、dedicated-cpu リソースを参照してください。
この solaris-kz リソースは、ゾーンの実行中にシステムのプロセッサの一部をそのゾーン専用に割り当てます。virtual-cpu リソースは、ncpus の制限を設定します。詳細は、solaris-kz のみ: virtual-cpu リソースを参照してください。
このリソースは、ゾーンの実行中にゾーンで消費可能な CPU リソースの量に対する制限を設定します。この capped-cpu リソースは、ncpus に制限を設けます。詳細は、capped-cpu リソースを参照してください。
このリソースは、ゾーンのメモリー上限を設定する際に使用される各プロパティーをグループ化します。capped-memory リソースは、physical、swap、および locked メモリーの制限を設定します。これらのプロパティーの少なくとも 1 つは指定する必要があります。capped-memory リソースを使用するには、service/resource-cap パッケージが大域ゾーン内にインストールされている必要があります。
ib-vhca リソースは、排他的 IP ゾーンのブート時に、そのゾーンに対して一時的な仮想 InfiniBand HCA デバイスを自動的に作成します。デバイスは、ゾーンが停止すると削除されます。
anet リソースは、排他的 IP ゾーンのブート時に、そのゾーンに対して一時的な VNIC インタフェースを自動的に作成します。VNIC は、ゾーンが停止すると削除されます。
net リソースは、非大域ゾーンに大域ゾーン内にある既存のネットワークインタフェースを割り当てます。ネットワークインタフェースリソースは、インタフェースの名前です。各ゾーンでは、インストール済み状態から準備完了状態に移行するときに設定される、複数のネットワークインタフェースを保持できます。
dataset リソースで使用する必要のある唯一のデータセットタイプは、ZFS ファイルシステムです。ZFS dataset リソースを追加して、ストレージ管理の非大域ゾーンへの委任を有効にします。ゾーン管理者は、そのデータセット内のファイルシステムの作成と破棄、およびデータセットのプロパティーの変更を行うことができます。ゾーン管理者は、子のファイルシステムとその子孫のクローンを作成できます。ゾーン管理者は、ゾーンに追加されていないデータセットを操作したり、ゾーンに割り当てられているデータセットに設定されている最上位レベルの割り当て制限を超過したりすることはできません。データセットが非大域ゾーンに委任されると、zoned プロパティーが自動的に設定されます。ゾーン管理者がマウントポイントを受け入れられない値に設定しなければならない可能性があるため、ゾーンファイルシステムを大域ゾーンにマウントすることはできません。
次の方法で、ZFS データセットをゾーンに追加できます。
lofs マウントされたファイルシステムとして (大域ゾーンとの領域共有のみが目的の場合)
委任されたデータセットとして
zonecfg template プロパティーの使用中に rootzpool リソースが指定されていない場合、デフォルトの zonepath データセットは rootpool/VARSHARE/zones/zonename です。データセットは、マウントポイント /system/zones を持つ svc-zones サービスによって作成されます。残りのプロパティーは、rootpool/VARSHARE/zones/ から継承されます。
Oracle Solaris 11.2 での ZFS ファイルシステムの管理 の 第 9 章, Oracle Solaris ZFS の高度なトピック、Oracle Solaris ゾーンの作成と使用 の ファイルシステムと非大域ゾーン、および datasets(5) のマニュアルページを参照してください。
データセットの問題については、Oracle Solaris ゾーンの作成と使用 の 第 12 章, Oracle Solaris ゾーンで発生するさまざまな問題のトラブルシューティングを参照してください。
各ゾーンでは、インストール済み状態から準備完了状態に移行するときにマウントする各種のファイルシステムを指定できます。ファイルシステムリソースは、ファイルシステムのマウントポイントのパスを指定します。ゾーンでのファイルシステムの使用の詳細は、Oracle Solaris ゾーンの作成と使用 の ファイルシステムと非大域ゾーンを参照してください。
fs リソースによって追加された UFS ファイルシステムの割り当て制限情報を取得するために、quota コマンド (quota(1M) を参照) は使用できません。
このプロパティーを設定すると、ゾーン管理者によって作成されたか、または NFS を使用してインポートされた、該当のタイプの任意のファイルシステムをマウントし、またそのファイルシステムを管理するための機能がゾーン管理者に提供されます。また、稼働中のゾーン内でのファイルシステムのマウント権限は、fs-allowed プロパティーで制限します。デフォルトでは、hsfs ファイルシステムおよび NFS などのネットワークファイルシステムのマウントだけがゾーン内で許可されます。
このプロパティーは、ゾーンに委任されたブロック型デバイスでも使用できます。
fs-allowed プロパティーは、ゾーン内からマウントできる、追加のファイルシステムのコンマ区切りリスト (たとえば、ufs,pcfs) を受け入れます。
zonecfg:my-zone> set fs-allowed=ufs,pcfs
このプロパティーは、add fs プロパティーまたは add dataset プロパティーを使用して大域ゾーンによって管理されるゾーンのマウントに影響を与えません。
セキュリティーに関する考慮事項については、Oracle Solaris ゾーンの作成と使用 の ファイルシステムと非大域ゾーンおよびOracle Solaris ゾーンの作成と使用 の 非大域ゾーンでのデバイスの使用を参照してください。
zonecfg device リソースは、非大域ゾーンのプラットフォームに仮想ディスクを追加するために使用します。デバイスリソースは、デバイス照合の指定子です。各ゾーンでは、インストール済み状態から準備完了状態に移行するときに構成するべきデバイスを指定できます。
Oracle Solaris ゾーンで NPIV (N_Port_ID Virtualization) サポートを提供します。
このリソースは、システム上のリソースプールをゾーンに関連付けるために使用します。1 つのプール内のリソースを複数のゾーンが共有してもかまいません。dedicated-cpu リソースも参照してください。
rctl リソースは、ゾーン規模のリソース制御に使用されます。リソース制御は、ゾーンがインストール済み状態から準備完了状態に移行するときに有効になります。
詳細は、ゾーン規模のリソース制御の設定を参照してください。
この汎用属性は、ユーザーコメントとして使用したり、ほかのサブシステムで使用したりできます。attr の name プロパティーは、英数字で始まる必要があります。name プロパティーには、英数字、ハイフン (-)、およびピリオド (.) を使用できます。zone. で始まる属性名はシステム用に予約されています。
リソースには、構成可能なプロパティーもあります。リソースタイプとそれに関連付けられるプロパティーは次のとおりです。
ユーザー名と特定のゾーンに対するそのユーザーの承認を定義します。
zonecfg:my-zone> add admin zonecfg:my-zone:admin> set user=zadmin zonecfg:my-zone:admin> set auths=login,manage zonecfg:my-zone:admin> end
auths プロパティーには、次の値を使用できます。
login (solaris.zone.login)
manage (solaris.zone.manage)
clone (solaris.zone.clonefrom)
config (solaris.zone.config)
config (solaris.zone.liveconfig)
これらの auths はゾーンの作成を許可するわけではありません。この機能は、ゾーンのセキュリティープロファイル内に含まれています。
storage
ゾーンのインストール専用の ZFS zpool を提供するためのストレージオブジェクトの URI を識別します。URI と storage に指定可能な値については、solaris および solaris10 のみ: rootzpool リソースを参照してください。ゾーンのインストール時に、zpool が自動的に作成されるか、事前に作成された zpool がインポートされます。my-zone_rpool という名前が割り当てられます。
zonecfg:my-zone> add rootzpool zonecfg:my-zone:rootzpool> add storage dev:dsk/c4t1d0 zonecfg:my-zone:rootzpool> end
ミラー化構成を作成する場合は、storage プロパティーを追加できます。
add storage dev:dsk/c4t1d0 add storage dev:dsk/c4t3d0
1 つのゾーンに構成できる rootzpool リソースは 1 つだけです。
storage、name
zpool をゾーンに委任するためのストレージオブジェクトの URI を 1 つ以上定義します。URI と storage プロパティーに指定可能な値については、solaris および solaris10 のみ: rootzpool リソースを参照してください。name プロパティーに指定可能な値は、zpool(1M) のマニュアルページで定義されています。
この例では、zpool ストレージリソースがゾーンに委任されています。zpool は自動的に作成されるか、または以前に作成された zpool がインストール中にインポートされます。zpool の名前は my-zone_pool1 です。
zonecfg:my-zone> add zpool zonecfg:my-zone:zpool> set name=pool1 zonecfg:my-zone:zpool> add storage dev:dsk/c4t2d0 zonecfg:my-zone:zpool> add storage dev:dsk/c4t4d0 zonecfg:my-zone:zpool> end
ゾーン構成には、1 つ以上の zpool リソースを含めることができます。
ncpus、importance、cores、cpus、sockets
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
コア 0、1、2、および 3 を永続的にゾーン my-zone に割り当てます。次の dedicated-cpu の例では cores を使用しますが、cpus=、cores=、および sockets= はすべて使用可能です。
zonecfg:my-zone> add dedicated-cpu zonecfg:my-zone:dedicated-cpu> set cores=0-3 zonecfg:my-zone:dedicated-cpu> end
ncpus
CPU の数を指定します。次の例では、ゾーン my-zone に 3 つの CPU を指定します。
zonecfg:my-zone> add virtual-cpu zonecfg:my-zone:dedicated-cpu> set ncpus=3 zonecfg:my-zone:dedicated-cpu> end
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
physical、swap、locked
ゾーン 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
capped-memory リソースを使用するには、resource-cap パッケージが大域ゾーン内にインストールされている必要があります。
dir、special、raw、type、options
fs リソースのパラメータは、ファイルシステムをマウントする方法と場所を決定する値を指定します。fs のパラメータは次のように定義されています。
ファイルシステムのマウントポイントを指定します
大域ゾーンからマウントするブロック型特殊デバイスの名前またはディレクトリを指定します
ファイルシステム (ZFS には適用されない) をマウントする前に、fsck の実行対象の raw デバイスを指定します。
ファイルシステムのタイプを指定します
mount コマンドで使用されるオプションに似たマウントオプションを指定します
次の例の各行では、大域ゾーン内の pool1/fs1 という名前のデータセットを、構成されるゾーン内で /shared/fs1 としてマウントすることを指定しています。使用するファイルシステムのタイプは ZFS です。
zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/shared/fs1 zonecfg:my-zone:fs> set special=pool1/fs1 zonecfg:my-zone:fs> set type=zfs zonecfg:my-zone:fs> end
パラメータの詳細は、Oracle Solaris ゾーンの作成と使用 の -o nosuid オプション、Oracle Solaris ゾーンの作成と使用 の セキュリティーの制限およびファイルシステムの動作、および fsck(1M) と mount(1M) のマニュアルページを参照してください。また、セクション 1M のマニュアルページには、特定のファイルシステムに固有のマウントオプションに関するものがあります。このようなマニュアルページの名前は、mount_filesystem という形式です。
name、alias
次の例の各行では、データセット sales を非大域ゾーンでマウントして可視にし、大域ゾーンでは不可視にするように指定しています。
zonecfg:my-zone> add dataset zonecfg:my-zone> set name=tank/sales zonecfg:my-zone> end
委任されたデータセットは、次の例に示されているようにデフォルト以外の別名を持つことができます。データセットの別名には、スラッシュ (/) を含めることができないことに注意してください。
zonecfg:my-zone> add dataset zonecfg:my-zone:dataset> set name=tank/sales zonecfg:my-zone:dataset> set alias=data zonecfg:my-zone:dataset> end
%{zonename} トークンは、name プロパティーに使用できます。
デフォルトの別名に戻すには、clear alias を使用します。
zonecfg:my-zone> clear alias
ib-vhca リソースは、仮想機能 (VF) を割り当てるために使用する物理機能 (PF) を指定します。
カーネルゾーンで VF を割り当てるには、次の手順を使用します。
ibadm(1M) のマニュアルページに記載の ibadm コマンドを使用して、PF を仮想化します。
zonecfg コマンドを使用して、カーネルゾーンに VF を割り当てます。特定の VF インデックスが指定されていないことに注意してください。ブート時に、使用可能な VF が、zoneadmd によって指定された PF からカーネルゾーンに動的に割り当てられます。VF が使用可能ではない場合、リソースの割り当ては失敗します。
仮想 InfiniBand デバイスの構成のために使用する物理 InfiniBand デバイスを設定します。デバイス名を取得するには、ibadm(1M) を参照してください。
ib-vhca リソースの一意の識別子。
ポートリソースを使用して、割り当てられた VF に許容可能な pkey を指定します。ポートには、物理ポート番号 (通常 1 または 2) に対応する id プロパティーもあります。
InfiniBand パーティションキーを指定します。pkey 値は、キーワードか、16 進数値のコンマ区切りリストのいずれかになります。16 進値を指定するときに、0x の接頭辞は使用しないでください。
pkey に使用されるキーワードは auto です。auto キーワードを使用して、指定された over-hca の値に基づいて pkey 値を自動的に生成して割り当てます。
id 値は、port リソースを一意に識別するために使用されます。id は物理ポート番号に対応します。
linkname、lower-link、allowed-address、auto-mac-address、configure-allowed-address、defrouter linkmode (IPoIB)、mac-address (IPoIB 以外)、mac-slot (IPoIB 以外)、mac-prefix (IPoIB 以外)、mtu、maxbw、pkey (IPoIB)、priority、vlan-id (IPoIB 以外)、rxfanout、rxrings、txrings、link-protection、allowed-dhcp-cids
solaris-kz のみ: zonecfg anet リソースの iov プロパティーを使用すると、シングルルート I/O (SR-IOV) NIC 仮想機能 (VF) を作成および管理できます。次のいずれかのプロパティーが設定されている場合は、iov プロパティーを auto または on に設定しないでください。
allowed-address
allowed-dhcp-cids
configure-allowed-address
cos
defrouter
etsbw-lcl
evs
link-protection
maxbw
mtu
priority
rxfanout
rxrings
txrings
vlan-id
vport
vsi-mgrid
vsi-typeid
vsi-vers
iov プロパティーがすでに auto または on に設定されている場合は、これらのプロパティーの設定に失敗します。
例と詳細については、Oracle Solaris カーネルゾーンの作成と使用 の カーネルゾーンでのシングルルート I/O NIC 仮想化の管理および zonecfg(1M) のマニュアルページを参照してください。
solaris のみ:zonecfg では、IPoIB データリンクに次の anet プロパティーを設定しないでください。
mac-address
mac-prefix
mac-slot
vlan-id
zonecfg では、IPoIB 以外のデータリンクに次の anet プロパティーを設定しないでください。
linkmode
pkey
EVS anet リソースには、次のプロパティーのみを設定してください。
linkname
evs
vport
configure-allowed-address
anet リソースは、ゾーンのブート時に自動 VNIC インタフェースまたは IPoIB インタフェースを作成し、ゾーンの停止時にその VNIC または IPoIB インタフェースを削除します。solaris-kz ブランドでは IPoIB はサポートされません。リソースプロパティーは、zonecfg コマンドを使用して管理されます。使用できるプロパティーのすべてのテキストについては、zonecfg(1M) のマニュアルページを参照してください。
Oracle Solaris カーネルゾーンの作成と使用 の カーネルゾーンでのシングルルート I/O NIC 仮想化の管理を参照してください。ネットワーク統計情報を提供するために使用されるシャドウ VNIC に関する具体的な情報については、Oracle Solaris カーネルゾーンの作成と使用 の Oracle Solaris カーネルゾーンでの仮想機能とシャドウ VNIC の使用を参照してください。
作成されるリンクの基礎となるリンクを指定します。auto に設定すると、zoneadmd デーモンは、ゾーンがブートするたびに VNIC が作成されるリンクを自動的に選択します。anet リソースの lower-link として VNIC を作成できる任意のリンクを指定できます。
ブート中に VNIC を自動的に作成するためのデータリンクを選択すると、すべての IPoIB リンクがスキップされます。
自動作成される VNIC インタフェースまたは IPoIB インタフェースの名前を指定します。solaris-kz では IPoIB はサポートされません。
指定された値またはキーワードに基づいて VNIC の MAC アドレスを設定します。値がキーワードでない場合は、ユニキャスト MAC アドレスとして解釈されます。サポートされるキーワードについては、zonecfg(1M) のマニュアルページを参照してください。ランダムな MAC アドレスを選択すると、生成されたアドレスはゾーンの再ブートおよびゾーンの切り離しと接続の操作後にも保持されます。デフォルトのポリシー auto-mac-address を使用するときは、Oracle Solaris ゾーンはランダムな mac-address を取得できます。
IPoIB データリンクインタフェースを作成するために使用するパーティションキーを設定します。このプロパティーは必須です。指定した pkey は、0x 接頭辞があるかどうかに関係なく、常に 16 進数として扱われます。
データリンクインタフェースの linkmode を設定します。デフォルト値は cm です。有効な値は次のとおりです。
接続モード。このモードでは、65520 バイトのデフォルトの MTU を使用し、65535 バイトの最大 MTU をサポートします。
低信頼データグラムモード。リモートノードに対して接続モードが使用できない場合は、代わりに低信頼データグラムモードが自動的に使用されます。このモードでは、2044 のデフォルトの MTU を使用し、4092 バイトの最大 MTU をサポートします。
排他的 IP ゾーン用の IP アドレスを構成し、また排他的 IP ゾーンで使用できる、構成可能な IP アドレスセットの制限も行います。複数のアドレスを指定するには、IP アドレスのコンマ区切りリストを使用します。
defrouter プロパティーを使用すると、非大域ゾーンと大域ゾーンが別個のネットワーク上に存在する場合にデフォルト経路を設定できます。
defrouter プロパティーが設定されたゾーンは、大域ゾーン用に構成されていないサブネット上に存在する必要があります。
zonecfg コマンドで SYSdefault テンプレートを使用してゾーンを作成したときに、ほかの IP リソースが設定されていない場合は、次のプロパティーを持つ anet リソースがゾーン構成に自動的に組み込まれます。linkname は、物理 Ethernet リンクに対して自動的に作成され、netN という形式の最初に使用できる名前 (net0) に設定されます。デフォルト値を変更するには、zonecfg コマンドを使用します。
デフォルトのポリシー auto を使用すると、適切な mac-address が割り当てられます。
ランダムな mac-address
ランダムな mac-address
ファクトリ mac-address
ファクトリ mac-address
ファクトリ mac-address
デフォルトのポリシーでは、物理 Ethernet リンク (たとえば、net0) に対して自動 VNIC が作成され、この VNIC に MAC アドレスが割り当てられます。オプションの lower-link プロパティーは、自動 VNIC が作成される、基礎となるリンク vnic1 に設定されます。zonecfg コマンドを使用して、リンク名、ベースとなる物理リンク、MAC アドレス、帯域幅制限などの VNIC プロパティー、およびその他の VNIC プロパティーを指定できます。ip-type=exclusive も指定する必要があります。
zonecfg:my-zone> set ip-type=exclusive zonecfg:my-zone> add anet zonecfg:my-zone:anet> set linkname=net0 zonecfg:my-zone:anet> set lower-link=auto zonecfg:my-zone:anet> set mac-address=random zonecfg:my-zone:anet> set link-protection=mac-nospoof zonecfg:my-zone:anet> end
次の例は、物理リンク net5 上の IPoIB データリンクインタフェースを使用し、IB のパーティションキーを 0xffff にして構成された solaris ブランドゾーンを示しています。
zonecfg:my-zone> set ip-type=exclusive zonecfg:my-zone:anet> add anet zonecfg:my-zone:anet> set linkname=ib0 zonecfg:my-zone:anet> set lower-link=net5 zonecfg:my-zone:anet> set pkey=0xffff zonecfg:my-zone:anet> end
次の例は、ゾーンを使用して VLAN を構成する方法を示しています。vlan-id プロパティーは、IPoIB データリンクではサポートされません。
zonecfg:my-zone:anet> add anet zonecfg:my-zone:anet> set linkname=net0 zonecfg:my-zone:anet> set lower-link=net0 zonecfg:my-zone:anet> set vlan-id=101 zonecfg:my-zone:anet> end
プロパティーの詳細については、zonecfg(1M) のマニュアルページを参照してください。リンクプロパティーの詳細は、dladm(1M) のマニュアルページを参照してください。zonecfg iov anet プロパティーを使用してカーネルゾーンでシングルルート I/O (SR-IOV) NIC 仮想機能 (VF) を作成および管理する方法については、Oracle Solaris カーネルゾーンの作成と使用 の カーネルゾーンでのシングルルート I/O NIC 仮想化の管理を参照してください。
address、allowed-addressphysical、defrouter
排他的 IP ゾーンの場合は、物理インタフェースだけを指定する必要があります。
allowed-address プロパティーは、排他的 IP ゾーンで使用できる、構成可能な IP アドレスのセットを制限します。
defrouter プロパティーを使用すると、非大域ゾーンと大域ゾーンが別個のネットワーク上に存在する場合にデフォルト経路を設定できます。
defrouter プロパティーが設定されたゾーンは、大域ゾーン用に構成されていないサブネット上に存在する必要があります。
デフォルトのルーターを持つゾーンからのトラフィックは、宛先のゾーンに戻る前にそのルーターに送信されます。
共有 IP ゾーンがそれぞれ異なるサブネット上にある場合は、大域ゾーンでデータリンクを構成しないでください。
共有 IP ゾーンの場合の次の例では、物理インタフェース nge0 が、IP アドレス 192.168.0.1 のゾーンに追加されています。システム上のネットワークインタフェースをリスト表示するには、次のように入力します。
global# ipadm show-if -po ifname,class,active,persistent lo0:loopback:yes:46-- nge0:ip:yes:----
出力の各行には、ループバックの行を除いて、ネットワークインタフェースの名前があります。説明に loopback が含まれている行は、カードには当てはまりません。46 の persistent フラグは、そのインタフェースが大域ゾーン内で持続的に構成されていることを示します。yes という有効な値は、そのインタフェースが現在構成されていることを示しています。また class の ip の値は、nge0 がループバックインタフェースではないことを示しています。ゾーンのデフォルト経路は、10.0.0.1 に設定されています。defrouter プロパティーの設定はオプションです。ip-type=shared は必須です。
zonecfg:my-zone> set ip-type=shared zonecfg:my-zone> add net zonecfg:my-zone:net> set physical=vnic1 zonecfg:my-zone:net> set address=192.168.0.1 zonecfg:my-zone:net> set defrouter=10.0.0.1 zonecfg:my-zone:net> end
排他的 IP ゾーンの場合の次の例では、VNIC が、VLAN である物理インタフェースに使用されます。使用可能なデータリンクを調べるには、dladm show-link を使用してください。allowed-address プロパティーは、ゾーンが使用できる IP アドレスを抑制します。defrouter プロパティーは、デフォルト経路を設定するために使用します。ip-type=exclusive も指定する必要があります。
zonecfg:my-zone> set ip-type=exclusive zonecfg:my-zone> add net zonecfg:myzone:net> set allowed-address=10.1.1.32/24 zonecfg:my-zone:net> set physical=vnic1 zonecfg:myzone:net> set defrouter=10.1.1.1 zonecfg:my-zone:net> end
add net 手順では、物理デバイスタイプだけを指定します。physical プロパティーは VNIC でもかまいません。
match、allow-partition、allow-raw-io
マッチングするデバイス名は、マッチングするパターンまたは絶対パスにできます。次のトークンは、match および storage プロパティーでサポートされています。
%{zonename}
%{id}
%{ global-rootzpool}
allow-partition と allow-raw-io の両方を true または false に設定できます。デフォルトは false です。allow-partition はパーティション分割を有効にします。allow-raw-io は uscsi を有効にします。
これらのリソースの詳細は、zonecfg(1M) を参照してください。
solaris-kz ゾーンについて device:match リソースプロパティーで指定できる制限には、次のものが含まれます。
LUN ごとに 1 つのリソースのみが許可されます。
スライスとパーティションはサポートされません。
raw ディスクデバイスのサポートのみが提供されます。
サポートされるデバイスパスは、lofi、ramdisk、dsk、および zvols です。
次の例では、ディスクデバイスに対する uscsi 操作が solaris ゾーン構成に追加されます。
zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/*dsk/cXtYdZ* zonecfg:my-zone:device> set allow-raw-io=true zonecfg:my-zone:device> end
Veritas Volume Manager デバイスは、add device を使用して非大域ゾーンに委任されます。
次の例では、ストレージデバイスが solaris-kz ゾーンに追加されています。
zonecfg:my-zone> add device zonecfg:my-zone:device> set storage=iscsi:///luname.naa.600144f03d70c80000004ea57da10001 zonecfg:my-zone:device> set bootpri=0 zonecfg:my-zone:device> end
storage プロパティーのトークンを使用している場合は、device リソースの新しいインスタンスがゾーン構成に追加されると、システムには次のように表示されます。
device 0: match not specified storage.template: dev:/dev/zvol/dsk/%{global-rootzpool}/VARSHARE/zones/%{zonename}/disk%{id} storage: dev:/dev/zvol/dsk/rpool/VARSHARE/zones/kernel-zone1/disk0 id: 0 bootpri: 0
storage は、デフォルト値を持つ唯一のプロパティーであるため、このプロパティーにのみ、リソースの追加後に表示される info 出力の値が含まれています。
![]() | 注意 - デバイスを追加する前に、制限とセキュリティーに関する確認事項について、Oracle Solaris ゾーンの作成と使用 の 非大域ゾーンでのデバイスの使用、Oracle Solaris ゾーンの作成と使用 の 非大域ゾーンでのアプリケーションの実行、およびOracle Solaris ゾーンの作成と使用 の 非大域ゾーン内の特権を参照してください。 |
name、value
使用可能なゾーン規模のリソース制御は、次のとおりです。
zone.cpu-cap
zone.cpu-shares (推奨: cpu-shares)
zone.max-locked-memory
zone.max-lofi
zone.max-lwps (推奨: max-lwps)
zone.max-msg-ids (推奨: max-msg-ids)
zone.max-processes (推奨: max-processes)
zone.max-sem-ids (推奨: max-sem-ids)
zone.max-shm-ids (推奨: max-shm-ids)
zone.max-shm-memory (推奨: max-shm-memory)
zone.max-swap
ゾーン規模のリソース制御を設定するために推奨される、より簡単な方法は、Oracle Solaris ゾーンの作成と使用 の ゾーンの構成方法に示されているように、rctl リソースの代わりにプロパティー名を使用する方法です。add rctl を使用してゾーン内のゾーン規模のリソース制御エントリを構成する場合、その形式は project データベース内のリソース制御エントリの形式とは異なります。ゾーン構成では、rctl リソースタイプは、名前と値の対 3 つから成ります。これらの名前は、priv、limit、および 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
リソース制御と属性の全般的な情報については、Oracle Solaris 11.3 でのリソースの管理 の 第 6 章, リソース制御についておよびOracle Solaris ゾーンの作成と使用 の 非大域ゾーンで使用されるリソース制御を参照してください。
name、type、value
次の例では、ゾーンに関するコメントを追加します。
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 サブコマンドを使用すると、ゾーン構成を標準出力に出力できます。構成は、コマンドファイルに使用できる形式で保存されます。