Oracle Solaris のシステム管理 (Oracle Solaris コンテナ : 資源管理と Oracle Solaris ゾーン)

Procedurelx ブランドゾーンを構成、検証、および確定する方法

ラベルが有効になっている Trusted Solaris システムでは、lx ブランドゾーンを使用できないことに注意してください。zoneadm コマンドで構成を検証できません。

この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。

  1. スーパーユーザーまたは Primary Administrator 役割になります。

    役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。

  2. 選択したゾーン名を使用して、ゾーン構成を設定します。

    この手順例では、lx-zone という名前を使用します。


    global# zonecfg -z lx-zone
    

    このゾーンの初回構成時には、次のシステムメッセージが表示されます。


    lx-zone: No such zone configured
    Use 'create' to begin configuring a new zone.
  3. SUNWlx テンプレートを使用して、新しい lx ゾーン構成を作成します。


    zonecfg:lx-zone> create -t SUNWlx
    

    または、空のゾーンを作成し、そのブランドを明示的に設定することもできます。


    zonecfg:lx-zone> create -b
    zonecfg:lx-zone> set brand=lx
    
  4. ゾーンのパス (この手順では /export/home/lx-zone) を設定します。


    zonecfg:lx-zone> set zonepath=/export/home/lx-zone
    
  5. autoboot 値を設定します。

    true に設定すると、大域ゾーンの起動時にこのゾーンが自動的に起動します。ゾーンを自動的に起動するには、ゾーンサービス svc:/system/zones:default も有効になっている必要があります。デフォルト値は false です。


    zonecfg:lx-zone> set autoboot=true
    
  6. .ゾーンの持続的なブート引数を設定します。


    zonecfg:lx-zone> set bootargs="-i=altinit"
    
  7. システムで資源プールが有効な場合、プールをゾーンに関連付けます。

    この例では、pool_default という名前のデフォルトプールを使用します。


    zonecfg:lx-zone> set pool=pool_default
    

    資源プールはオプションのスケジューリングクラス割り当てを保持できるため、プール機能を使用して、システムのデフォルトでないデフォルトスケジューラを非大域ゾーン用に設定できます。詳細は、「プールをスケジューリングクラスに対応付ける方法」および 「構成の作成」を参照してください。

  8. 権限のデフォルトセットを修正します。


    zonecfg:lx-zone> set limitpriv="default,proc_priocntl"
    

    proc_priocntl 特権は、リアルタイムクラスのプロセスを実行するために使用されます。

  9. CPU の配分を 5 に設定します。


    zonecfg:lx-zone> set cpu-shares=5
    
  10. メモリー上限を追加します。


    zonecfg:lx-zone> add capped-memory
    
    1. メモリー上限を設定します。


      zonecfg:lx-zone:capped-memory> set physical=50m
      
    2. スワップメモリーの上限を設定します。


      zonecfg:lx-zone:capped-memory> set swap=100m
      
    3. ロックされたメモリーの上限を設定します。


      zonecfg:lx-zone:capped-memory> set locked=30m
      
    4. 指定を終了します。


      zonecfg:lx-zone:capped-memory> end
      
  11. ファイルシステムを追加します。


    zonecfg:lx-zone> add fs
    
    1. ファイルシステムのマウントポイント (この手順では /export/linux/local) を設定します。


      zonecfg:lx-zone:fs> set dir=/export/linux/local
      
    2. 大域ゾーン内の /opt/local を、構成中のゾーン内で /export/linux/local としてマウントすることを指定します。


      zonecfg:lx-zone:fs> set special=/opt/local
      

      非大域ゾーン内では、/export/linux/local ファイルシステムは読み取りおよび書き込みが可能です。

    3. ファイルシステムのタイプ (この手順では lofs) を指定します。


      zonecfg:lx-zone:fs> set type=lofs
      

      このタイプは、カーネルとそのファイルシステムとの相互動作の方法を示します。

    4. ファイルシステムの指定を終了します。


      zonecfg:lx-zone:fs> end
      

    この手順を複数回実行することで、複数のファイルシステムを追加できます。

  12. ネットワーク仮想インタフェースを追加します。


    zonecfg:lx-zone> add net
    
    1. IP アドレスを ip address of zone/netmask の形式で設定します。この手順では 10.6.10.233/24 を使用します。


      zonecfg:lx-zone:net> set address=10.6.10.233/24
      
    2. ネットワークインタフェースの物理デバイスタイプ (この手順では bge デバイス) を指定します。


      zonecfg:lx-zone:net> set physical=bge0
      
    3. 指定を終了します。


      zonecfg:lx-zone:net> end
      

    この手順を複数回実行することで、複数のネットワークインタフェースを追加できます。

  13. attr 資源タイプを使用して、大域ゾーンにあるオーディオデバイスをこのゾーンで使用可能にします。


    zonecfg:lx-zone> add attr
    
    1. 名前を audio に設定します。


      zonecfg:lx-zone:attr> set name=audio
      
    2. タイプを boolean に設定します。


      zonecfg:lx-zone:attr> set type=boolean
      
    3. 値を true に設定します。


      zonecfg:lx-zone:attr> set value=true
      
    4. 資源タイプ attr の指定を終了します。


      zonecfg:lx-zone:attr> end
      
  14. ゾーンの構成を検証します。


    zonecfg:lx-zone> verify
    
  15. ゾーンの構成を確定します。


    zonecfg:lx-zone> commit
    
  16. zonecfg コマンドを終了します。


    zonecfg:lx-zone> exit
    

    プロンプトで commit コマンドを明示的に入力しなくても、exit を入力するか EOF が発生すると、commit の実行が自動的に試みられます。

コマンド行での複数のサブコマンドの使用

ヒント –

zonecfg コマンドは、複数のサブコマンドもサポートします。次に示すように、同じシェル呼び出しで引用符で囲み、セミコロンで区切ります。


global# zonecfg -z lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone"