Solaris 10 の概要

システム資源の機能拡張

Solaris 10 8/07 リリースでは、次のシステム資源機能と拡張機能が追加されました。

lx ブランドゾーン: Linux アプリケーション用の Solaris コンテナ

Sun の BrandZ 技術は、ネイティブでないオペレーティング環境を含む非大域ブランドゾーンを作成するためのフレームワークを提供します。非大域ゾーンの簡単な拡張機能として、ブランドゾーンは同一の孤立した安全な環境を提供しており、ブランド管理はすべて現在のゾーン構造の拡張機能を使って行われます。

現在使用可能なブランドは lx ブランドで、これは Linux アプリケーション用の Solaris コンテナです。これらの非大域ゾーンは、Solaris OS が稼働している x86 または x64 マシン上に Linux アプリケーション環境を作成できます。

lx ブランドには、非大域ゾーン内に CentOS 3.5 - 3.8 または Red Hat Enterprise Linux 3.5 - 3.8 をインストールするために必要なツールが含まれています。32 ビットまたは 64 ビットモードの Solaris OS が稼働しているマシンでは、32 ビットの Linux アプリケーションを実行できます。

詳細は、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の Part III 「Branded Zones」を参照してください。

また、次のマニュアルページも参照してください。

コンテナ作成用の zonecfg プロシージャーの向上

資源管理機能とゾーン機能の統合がさらに進んだことで、zonecfg コマンドを使ってシステムの資源管理能力をより簡単に強化できるようになりました。ゾーンがブートされると、ユーザーが指定した資源構成が自動的に作成されます。資源管理の設定にまつわる手順を手動で行う必要はなくなりました。

詳細については、次を参照してください。

IP インスタンス: 非大域ゾーンのための LAN と VLAN の分離

ゾーンに排他的 IP インスタンスを割り当てるか、それとも IP 層の構成および状態を大域ゾーンと共有するかに応じて、IP ネットワーク接続を 2 通りの方法で設定できるようになりました。IP の種類を設定するには、zonecfg コマンドを使用します。

IP 共有タイプがデフォルトになります。これらのゾーンは、大域ゾーンと同じ VLAN または LAN に接続され、IP 層を共有します。lx ブランドゾーンは、共有 IP ゾーンとして設定されます。詳細は、lx ブランドゾーン: Linux アプリケーション用の Solaris コンテナ」を参照してください。

IP レベルの完全な機能は、排他的 IP ゾーンで使用できます。ゾーンをネットワーク上の IP 層で孤立させる必要がある場合は、そのゾーンに排他的 IP を割り当てることができます。排他的 IP ゾーンを使用すると、異なる VLAN や LAN の異なるサブネット上で通信しなければならないアプリケーションを統合することができます。

詳細については、次を参照してください。

Solaris ゾーンのブートの拡張機能

Solaris ゾーンのブートの拡張機能では、ブート引数を boot および reboot の一部としてサポートするようになりました。次のブート引数は、今回からサポートされます。

ブート引数は、次の方法で渡すことができます。

また、zonecfg コマンドの新しいプロパティー bootargs を使用すれば、ブート引数を永続的に指定できます。

zonecfg:myzone> set bootargs="-m verbose"

rebootzoneadm boot、または zoneadm reboot コマンドで無効にされないかぎり、この設定が適用されます。

ブート引数と bootargs プロパティーの詳細は、次の項目を参照してください。

ゾーン用の System V 資源制御

非大域ゾーン内のプロセスが使用する System V 資源の合計量を制限するために、次に示すゾーン全体の資源制御が追加されました。

資源制御は、非大域ゾーン用の zonecfg コマンドの add rctl 資源プロパティーによって設定します。

大域ゾーンの消費量を制限する場合は、prctl コマンドによって資源制御を設定できます。

詳細については、次を参照してください。

ゾーンの一意識別子

Solaris システムでは、それぞれの非大域ゾーン (インストールされている場合) にグローバル一意識別子を自動的に割り当てます。zoneadm list -p コマンドを使えば、この識別子を大域ゾーンと非大域ゾーンのどちらからでも取り出すことができます。ユーザーは、ゾーン自体を 1 つのアセットとみなすことにより、アセットの追跡にゾーンの一意識別子を利用できます。この識別子は、次の処理にまたがってゾーンを識別する場合にも使用できます。

詳細は、zoneadm(1M) のマニュアルページを参照してください。

ゾーンに「incomplete (不完全)」のマークを付ける機能

このリリース以降、新しい zoneadm 機能を使って、ゾーンに「incomplete (不完全)」のマークを付けられるようになりました。この新しい zoneadm 機能により、ゾーンの内容を更新する管理ソフトウェアで致命的または永続的なゾーン障害の状態を記録することができます。

詳細は、zoneadm(1M) のマニュアルページを参照してください。

非大域ゾーン内での DTrace の使用

dtrace_proc および dtrace_user 特権が非大域ゾーンに割り当てられている場合は、DTrace をその非大域ゾーンで使用できるようになりました。DTrace のプロバイダおよびアクションの有効範囲は、ゾーンに制限されます。dtrace_proc 特権があれば、fasttrap および pid プロバイダを使用できます。dtrace_user 特権があれば、profile および syscall プロバイダを使用できます。

zonecfg コマンドの limitpriv プロパティーを使用すると、これらの権限を非大域ゾーンで使用できる権限セットに追加することができます。

非大域ゾーンの特権の概要については、「非大域ゾーンに関する設定可能な特権」を参照してください。

ゾーン構成、ゾーンの特権の指定方法、および DTrace ユーティリティーの使用方法については、次の項目を参照してください。