ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris の管理: Oracle Solaris コンテナ - リソース管理と Oracle Solaris ゾーン Oracle Solaris 10 1/13 Information Library (日本語) |
10. リソース上限デーモンによる物理メモリーの制御 (概要)
Solaris 10 11/06 以降: svcadm を使ってリソースプールサービスを有効にする方法
Solaris 10 11/06 以降: svcadm を使ってリソースプールサービスを無効にする方法
Solaris 10 11/06 以降: svcadm を使って動的リソースプールサービスを有効にする方法
Solaris 10 11/06 以降: svcadm を使って動的リソースプールサービスを無効にする方法
プロジェクトの project.pool 属性を設定する方法
project 属性を使ってプロセスを別のプールに結合する方法
poolstat を使ってプールに関連付けられているリソースについて統計情報を報告する
19. 非大域ゾーンのインストール、停止、複製、およびアンインストールについて (概要)
20. 非大域ゾーンのインストール、ブート、停止、アンインストール、および複製 (タスク)
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 ゾーンで発生するさまざまな問題のトラブルシューティング
31. ブランドゾーンと Linux ブランドゾーンについて
34. lx ブランドゾーンのインストール、ブート、停止、複製、およびアンインストールについて (概要)
35. lx ブランドゾーンのインストール、ブート、停止、アンインストール、および複製 (タスク)
-s オプションを付けて /usr/sbin/pooladm を実行して、現在の動的構成と一致する静的構成ファイルを作成します。別のファイル名を指定した場合を除き、デフォルトの場所 /etc/pooladm.conf が使用されます。
pooladm コマンドに -c オプションを付けて実行して、構成を確定します。次に、pooladm コマンドに -s オプションを付けて実行して、動的構成の状態と一致するように静的構成ファイルを更新します。
注 - 動的構成と一致する新しい構成を作成するには、以前の機能 poolcfg -c discover を使用するよりも、新機能 pooladm -s を使用することをお勧めします。
始める前に
使用しているシステムでプールを有効にします。
System Administrator 役割には Process Management プロファイルが含まれています。役割の詳細については、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
# pooladm -s
構成には、システムによって作成されたデフォルトの要素が含まれています。
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
構成を拡張するために、pset_batch というプロセッサセットと pool_batch というプールを作成します。次に、このプールとプロセッサセットを結合によって対応付けます。
サブコマンドの引数に空白が含まれている場合は、引用符で囲むことを忘れないでください。
System Administrator 役割には Process Management プロファイルが含まれています。役割の詳細については、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
# poolcfg -c 'create pset pset_batch (uint pset.min = 2; uint pset.max = 10)'
# poolcfg -c 'create pool pool_batch'
# poolcfg -c 'associate pool pool_batch (pset pset_batch)'
# poolcfg -c info system tester string system.comment kernel state int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment pset pset_batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
プールをスケジューリングクラスに対応付けることで、プールに結合されているすべてのプロセスがこのスケジューラを使用できるようになります。このためには、pool.scheduler プロパティーにスケジューラの名前を設定します。次の例では、プール pool_batch を公平配分スケジューラ (FSS) に対応付けます。
System Administrator 役割には Process Management プロファイルが含まれています。役割を作成してユーザーに割り当てる方法については、『Solaris のシステム管理ガイド (セキュリティーサービス)』の「RBAC の管理 (タスクマップ)」を参照してください。
# poolcfg -c 'modify pool pool_batch (string pool.scheduler="FSS")'
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment string pool.scheduler FSS pset batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
制約は、構成に加えることのできる変更を一部除外することで、作成可能な構成の範囲に影響を与えます。ここでは、cpu.pinned プロパティーを設定する手続きを示します。
次の例では、cpuid は整数です。
System Administrator 役割には Process Management プロファイルが含まれています。役割の詳細については、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
# poolcfg -c 'modify cpu <cpuid> (boolean cpu.pinned = true)'
# poolcfg -dc 'modify cpu <cpuid> (boolean cpu.pinned = true)'
poold に対して、修正操作を実行するときに考慮する目標を指定できます。
次の手順では、wt-load 目標を設定して、poold がリソースの使用効率に合わせてリソースを割り当てるようにします。この構成目標を達成しやすくするために、locality 目標は無効にします。
System Administrator 役割には Process Management プロファイルが含まれています。役割の詳細については、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
# poolcfg -c 'modify system tester (string system.poold.objectives="wt-load")'
# poolcfg -c 'modify pset pset_default (string pset.poold.objectives="locality none")'
# poolcfg -c 'modify pset pset_batch (string pset.poold.objectives="locality none")'
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 string system.poold.objectives wt-load pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true string pset.poold.objectives locality none cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment string pool.scheduler FSS pset batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 string pset.poold.objectives locality none cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
poold が生成するログ情報のレベルを指定するには、poold 構成の system.poold.log-level プロパティーを設定します。poold の構成は libpool の構成に保存されています。詳細は、「poold のログ情報」および poolcfg(1m) と libpool(3LIB) のマニュアルページを参照してください。
コマンド行で poold コマンドを使用する方法でも、poold で生成するログ情報のレベルを指定できます。
System Administrator 役割には Process Management プロファイルが含まれています。役割の詳細については、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
# /usr/lib/pool/poold -l INFO
使用可能なパラメータについては、「poold のログ情報」を参照してください。デフォルトのログレベルは NOTICE です。
poolcfg コマンドに -f オプションを付けて使用すると、poolcfg コマンドの -c オプションに指定する引数をテキストファイルから入力できます。この方法は、一連の操作を実行する場合に使用します。複数のコマンドを処理した場合でも、それらのコマンドがすべて正常に終了するまで、構成は更新されません。特に大規模な構成や複雑な構成の場合は、この手法を使用した方が、個々のサブコマンドを起動するよりも便利です。
コマンドファイルでは、# という文字はコメント記号として機能し、その行の残り部分がコメントと見なされます。
$ cat > poolcmds.txt create system tester create pset pset_batch (uint pset.min = 2; uint pset.max = 10) create pool pool_batch associate pool pool_batch (pset pset_batch)
System Administrator 役割には Process Management プロファイルが含まれています。役割を作成してユーザーに割り当てる方法については、『Solaris のシステム管理ガイド (セキュリティーサービス)』の「RBAC の管理 (作業マップ)」を参照してください。
# /usr/sbin/poolcfg -f poolcmds.txt