この手順では、いくつかのグローバルプロパティーおよびリソースタイプを設定し、新しい非大域ゾーンを構成する方法を示します。
非大域ゾーンの作成時に指定する必要のあるパラメータは、ゾーン名のみです。zonepath パラメータは割り当てられます。そのほかのリソースおよびプロパティーはオプションです。オプションのリソースには、dedicated-cpu リソースと capped-cpu リソースのどちらを使用するかを決めるなど、選択肢の中から選ぶ必要があるものもあります。
global$ pfbash zonecfg -z kzone1 "create ; set autoboot=true"共有 IP ゾーンの場合、zonecfg net リソースで静的アドレスを割り当てできるだけです。このアドレスは、コマンド行で指定することはできません。
始める前に
ゾーンのどのグローバルプロパティーおよびリソースを構成するかを特定し、それらの値を決定します。ゾーンで構成できるグローバルプロパティーおよびリソースタイプについては、Oracle Solaris Zones Configuration Resources の Zone Configuration Dataおよび zonecfg(8) のマニュアルページを参照してください。
詳細については、root 以外のユーザーへのゾーンを管理する権利の割り当てを参照してください。
global$ pfbash zonecfg -z zonename
このゾーンの初回構成時には、次のシステムメッセージが表示されます。
zonename: No such zone configured Use 'create' to begin configuring a new zone.
このステップでは、デフォルト設定を使用します。
zonecfg:zonename> create create: Using system default template 'SYSdefault' zonecfg:zonename> info zonename: zonename zonepath.template: /system/zones/%{zonename} zonepath: /system/zones/zonename
true に設定すると、大域ゾーンのブート時にこのゾーンが自動的にブートします。デフォルト値は false です。
zonecfg:zonename> set autoboot=true
zonecfg:zonename> set bootargs="-m verbose"
CPU の数または数の範囲を設定し、必要に応じて重要性も設定します。
zonecfg:zonename> add dedicated-cpu zonecfg:zonename:dedicated-cpu> set ncpus=N zonecfg:zonename:dedicated-cpu> set importance=N zonecfg:zonename:dedicated-cpu> end
設定する特権をコンマ区切りリストで指定します。この設定は、システムクロックを設定する機能をデフォルトの特権セットに追加します。
zonecfg:zonename> set limitpriv="privileges-list"
zonecfg:zonename> set scheduling-class=FSS
このステップでは、メモリーの上限、スワップメモリーの上限、およびロックされたメモリーの上限の値を設定します。
zonecfg:zonename> add capped-memory zonecfg:zonename:capped-memory> set physical=value zonecfg:zonename:capped-memory> set swap=value zonecfg:zonename:capped-memory> set locked=value zonecfg:zonename:capped-memory> end
このステップでは、マウントポイント、ゾーンのマウントポイント、およびファイルシステムタイプを設定します。
zonecfg:zonename> add fs zonecfg:zonename:fs> set dir=mountpoint zonecfg:zonename:fs> set special=zone-mountpoint zonecfg:zonename:fs> set type=fs-type zonecfg:zonename:fs> end
複数のファイルシステムを追加するには、このステップを繰り返します。
zonecfg:zonename set hostid=ID
dataset リソースには、ZFS ファイルシステムのパスを指定する必要があります。ゾーン管理者は、子ファイルシステムとその子孫のクローンを作成できます。ゾーン管理者は、データセットのプロパティーを変更したり、圧縮や暗号化を制御したりできます。
zonecfg:zonename> add dataset zonecfg:zonename> set name=storage-pool/dataset zonecfg:zonename> end
作成されるリンクの基礎となるリンクとして auto を指定します。zoneadmd デーモンは、ゾーンがブートするたびに VNIC が作成されるリンクを自動的に選択します。データリンクを選択するときは、IPoIB リンクはスキップされます。
zonecfg:zonename> set ip-type=exclusive zonecfg:zonename> add anet zonecfg:zonename:anet> set lower-link=auto zonecfg:zonename:anet> end
zonecfg:zonename> add device zonecfg:zonename:device> set match=/dev/sound/* zonecfg:zonename:device> end
複数のデバイスを追加するには、このステップを繰り返します。
zonecfg:zonename> add device zonecfg:zonename:device> set match=infiniband/ofs/* zonecfg:zonename:device> end
複数のデバイスを追加するには、このステップを繰り返します。
複数のデバイスを追加するには、このステップを繰り返します。
zonecfg:zonename> add device zonecfg:zonename:device> set match=infiniband/hca/* zonecfg:zonename:device> end
zonecfg:zonename> add device zonecfg:zonename:device> set match=/dev/*dsk/cNtXdY* zonecfg:zonename:device> set allow-partition=true zonecfg:zonename:device> end
複数のデバイスを追加するには、このステップを繰り返します。
![]() | 注意 - ゾーンでディスクに対する uscsi 操作の実行を可能にすると、ゾーンはディスクと同じバスに接続されている、すべての他のデバイスにもアクセスできます。したがって、この機能を有効にするとセキュリティーリスクが生じ、同じバス上のリソースを使用する大域ゾーンまたはほかのゾーンに対する攻撃が可能になります。詳細は、uscsi(4I)を参照してください。 |
zonecfg:zonename> add device zonecfg:zonename:device> set match=/dev/*dsk/cNtXdY* zonecfg:zonename:device> set allow-raw-io=true zonecfg:zonename:device> end
複数のデバイスを追加するには、このステップを繰り返します。
zonecfg:zonename> set property=value
複数のリソース制御を追加するには、このステップを繰り返します。
zonecfg:zonename> add attr zonecfg:zonename:attr> set name=comment zonecfg:zonename:attr> set type=string zonecfg:zonename:attr> set value="comment" zonecfg:zonename:attr> end
zonecfg:zonename> verify
zonecfg:zonename> commit zonecfg:zonename> exit
確定された変更は、ゾーンの次回ブート時に有効になります。
プロンプトで commit コマンドを明示的に入力しなくても、exit を入力するか EOF が発生すると、commit の実行が自動的に試みられます。
この例では、システムのデフォルトテンプレート SYSdefault を使用して、my-zone という名前の新しいゾーンを構成します。
global$ pfbash zonecfg -z my-zone my-zone: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:my-zone> create create: Using system default template 'SYSdefault' zonecfg:my-zone> info zonename: my-zone> zonepath.template: /system/zones/%{zonename} zonepath: /system/zones/my-zone zonecfg:my-zone> set autoboot=true zonecfg:my-zone> set bootargs="-m verbose" zonecfg:my-zone> add dedicated-cpu zonecfg:my-zone:dedicated-cpu> set ncpus=1-2 zonecfg:my-zone:dedicated-cpu> set importance=10 zonecfg:my-zone:dedicated-cpu> end zonecfg:my-zone> set limitpriv="default,sys_time" zonecfg:my-zone> set scheduling-class=FSS zonecfg:my-zone> add capped-memory zonecfg:my-zone:capped-memory> set physical=1g zonecfg:my-zone:capped-memory> set swap=2g zonecfg:my-zone:capped-memory> set locked=500m zonecfg:my-zone:capped-memory> end zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/usr/local zonecfg:my-zone:fs> set special=/opt/local zonecfg:my-zone:fs> set type=lofs zonecfg:my-zone:fs> end zonecfg:my-zone> set hostid=80f0c086 zonecfg:my-zone> add dataset zonecfg:my-zone> set name=tank/sales zonecfg:my-zone> end zonecfg:my-zone> set ip-type=exclusive zonecfg:my-zone> add anet zonecfg:my-zone:anet> set lower-link=auto zonecfg:my-zone:anet> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/sound/* zonecfg:my-zone:device> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=infiniband/ofs/* zonecfg:my-zone:device> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=infiniband/hca/* zonecfg:my-zone:device> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/*dsk/c2t40d3* zonecfg:my-zone:device> set allow-partition=true zonecfg:my-zone:device> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/*dsk/c2t40d3* zonecfg:my-zone:device> set allow-raw-io=true zonecfg:my-zone:device> end zonecfg:my-zone> set max-sem-ids=10485200 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="This is my work zone." zonecfg:my-zone:attr> end zonecfg:my-zone> verify zonecfg:my-zone> commit zonecfg:my-zone> exit
次のステップ
ゾーン構成を検証するために、次の手順に進みます。
ゾーン構成に問題がなければ、ゾーンをインストールします。ゾーンのインストールとブートに進みます。