--- title: グループ管理者向け情報 taxonomy: category: - docs external_links: process: true no_follow: true target: _blank mode: active --- [toc] ## グループ管理者とは{#introduction} グループ管理者とは、グループコース、専用クラスタコースの管理を行う権限を持った人を指します。 初期設定では、グループ管理者はサービスコースの申請者となっています。また、サービスコースの申請者はグループ管理者を追加/変更することも可能です。追加/変更は[利用者ポータル](https://web.kudpc.kyoto-u.ac.jp/portal/) から申請してください。 グループ管理者は、グループを管理するためのコマンドを利用することができます。この管理者専用コマンドによって、グループメンバーやグループに割り当てられたキューやディスクを管理できます。 <!-- ## グループ管理者の確認(group_managers){#group_managers} **group_managers** コマンドで、現在のグループ管理者を確認できます。 ```nohighlight $ group_managers Group: gr19999, Managers: a59990,a59992 ``` --> ## グループメンバーの管理 {#group_members} グループのメンバーは、[利用者ポータル](https://web.kudpc.kyoto-u.ac.jp/portal) にログインすることで、メンバーの確認および追加/削除が可能です。 <!-- **group_members** コマンドで、グループメンバーの表示、追加ができます。メンバーはグループ専用キューへのジョブ投入やLARGEディスクスペースを利用することができます。 **グループメンバーの表示** ```nohighlight $ group_members -g gr19999 -l gr19999:a59990,a59991,a59992,a59993,a59994 ``` **グループメンバーの削除** ```nohighlight $ group_members -g gr19999 -d b59999 deleting user b59999 from group gr19999 ``` **グループメンバーの追加** ```nohighlight $ group_members -g gr19999 -a b59999 adding user b59999 to group gr19999 ``` * サービスコースの支払責任者配下の利用者は、自動的にグループのメンバーとして登録されています。 * このコマンドで追加したメンバーは、グループ用キューへのジョブ投入やLARGEディスクスペースを利用することができます。 * group_members コマンドでユーザの追加削除を行う場合は、-g オプションでグループ名を指定してください。指定しない場合、操作者のカレントグループが適用されます。そのため、カレントグループが操作者の利用者IDとなっていた場合、ご希望のグループではなく、当該利用者IDのグループにユーザが追加されてしまいます。 #### グループに追加したメンバーのキュー利用に関する注意 グループメンバーを新規追加しても、そのメンバーがグループ用キューを即座に利用できるようになるわけではありません。追加されたメンバーがキューにジョブを投入するためには、ジョブスケジューラシステムに設定変更が反映される必要があります。反映は設定変更の翌朝に行われます。お急ぎの場合は、プログラミング相談室 までご連絡ください。 #### グループメンバーと負担金請求先について グループコースの無料の利用者追加枠の対象は、グループコースの支払責任者との予算による紐づきで判定します。無料の対象とするためには、利用申請書の提出が必要です。 group_members コマンドまたは利用者ポータルでグループメンバーを追加しただけでは対象となりませんので、ご注意ください。 --> ## LARGEディスクスペースのバックアップ設定(group_backup){#group_backup} **group_backup** コマンドで、LARGEディスクスペースのバックアップの設定ができます。LARGEディスクスペースは、 _/LARGE0/グループ名_ ディレクトリと _/LARGE1/グループ名_ ディレクトリで構成されており、以下の2つの状態のどちらかを設定できます。 設定状態 | /LARGE0/グループ名 | /LARGE1/グループ名 :----------:|:------------------:|:-------------------: バックアップ使用 | Safe(バックアップあり) | Backup (バックアップ先) バックアップ未使用 | Unsafe(バックアップなし) | Unsafe(バックアップなし) このうち、設定がSafe または Unsafeとなっているディスクを利用できます。 **バックアップ設定の確認** 対象とするグループは -g オプションで指定可能です。省略した場合は、コマンド実行時のカレントグループが対象となります。 ```nohighlight $ group_backup -g gr19999 -l Num Filesystem Status Filesystem Status 1) /LARGE0/gr19999 ... Safe /LARGE1/gr19999 ... Backup <- バックアップ使用状態 ``` **バックアップ未使用に設定** ```nohighlight $ group_backup -g gr19999 --unsafe 1 /LARGE0/gr19999: Safe => UnSafe /LARGE1/gr19999: Backup => UnSafe ``` **バックアップ設定の確認(変更後)** ```nohighlight $ group_backup -g gr19999 -l Num Filesystem Status Filesystem Status 1) /LARGE0/gr19999 ... UnSafe /LARGE1/gr19999 ... UnSafe <- バックアップ未使用状態 ``` **バックアップ使用状態に戻す** ```nohighlight $ group_backup -g gr19999 --safe 1 /LARGE0/gr19999: Unsafe => Safe /LARGE1/gr19999: Unsafe => Backup ``` ## LARGEディスクスペースのファイル整理(group_trash){#group_trash} **group_trash** コマンドで、LARGEディスクスペースにあるファイルを削除(ゴミ箱へ移動)することができます。卒業などでいなくなった利用者のファイルなど、ファイルオーナーが存在しないファイルなどを削除することができます。もし誤って削除してしまった場合はゴミ箱から復元できますが、ゴミ箱は毎週月曜日に空になりますので注意してください。 **group_trashコマンドで削除** 対象とするグループを -g オプションで指定してください。省略した場合は、コマンド実行時のカレントグループでグループ管理者の権限を判定します。 ```nohighlight $ group_trash -g gr19999 /LARGE0/gr19999/file1 file1 to Trash (/LARGE0/gr19999/.DpcTrash/b59999/2009-04-10_1010) ``` ## キュー利用メンバーの管理{#queue_members} Slurmのキューの権限の管理の単位として、ユーザとグループの2種類があります。ユーザは初期設定では空にしており、 グループには初期設定としてキュー名に対応するグループが最初から登録されています。 複数のグループでキューを利用する場合や、グループに所属していない単一の利用者に対してキューの利用権限を付与したいと いったご要望がありましたら、[問い合わせフォーム](https://www.iimc.kyoto-u.ac.jp/ja/inquiry/?q=consult) より お問い合わせ下さい。 ## キューのジョブスケジューリングポリシー{#queue_policy} 本センターのジョブスケジューリングポリシーは、以下の3種類から選択することができます。 個別キュー(grXXXXXx)をご契約いただいている場合は、 申請者の方から、[問い合わせフォーム](https://www.iimc.kyoto-u.ac.jp/ja/inquiry/?q=consult) へ ご希望のスケジューリングポリシーをご連絡いただくことで、変更することが可能です。 (エントリコースやパーソナルコースなどの共有キューについては、ご希望をお受けすることはできません) 設定値 | 動作 :-------:|------ pass | あるジョブを実行するのに十分な計算資源がある場合、そのジョブよりも前に並んでいる実行待ちジョブを追い越して実行する。<br>効率的に計算資源を利用できるが、大規模なジョブがいつまでも実行されない可能性が生じる。**【初期設定値】** wait | 計算資源に空きがある場合でも、ジョブ間の追越しは発生しない。 backfill | 各ジョブの実行時間制限(-t)をもとに計算を行い、他のジョブの実行開始時刻に影響を及ぼさない場合のみ、追越しが発生する。たとえば、大規模ジョブが開始されるまでの間に実行を完了できる小さなジョブを走らせることで資源を有効活用できる。 <!-- ## キュー利用メンバーの管理(queue_acl_users, queue_acl_groups){#queue_members} **queue_acl_users** コマンドおよび**queue_acl_groups**コマンドで、キュー利用メンバーの表示、追加、削除ができます。登録されているメンバーはキューへジョブを投入することができます。 PBSの権限の管理の単位として、acl_usersとacl_groupsの2種類があります。acl_usersは初期設定では空にしており、acl_groupsには初期設定としてキュー名に対応するグループが最初から登録されています。 複数のグループでキューを利用する場合は queue_acl_groups コマンドでグループを追加してください。ユーザ個別に追加する場合も、ユーザ名と同名のグループを追加することで対応可能です。 複雑な制御として、特定のグループの特定のユーザのみに利用権限を付与したい場合は、acl_groupsだけでなく、acl_users にユーザを追加することで、両方の条件を満たす方のみがジョブ投入できるように制御可能です。 **キュー利用メンバーの表示(acl_groups)** ```nohighlight $ queue_acl_groups -q gr19999a -l Request: acl_groups: gr19999 PBS : acl_groups: gr19999 ``` **キュー利用メンバーの追加(acl_groups)** ```nohighlight $ queue_acl_groups -q gr19999a -a gr19999 ``` **キュー利用メンバーの削除(acl_groups)** ```nohighlight $ queue_acl_groups -q gr19999a -d gr19999 ``` * どの操作についても、-qオプションによるキューの指定が必須となります。 * メンバーの追加や削除は、設定変更の翌日の朝にジョブスケジューラシステムに反映されます。(将来的に1時間に1回程度に改善する予定です) ## キュー利用メンバーの管理(queue_members){#queue_members} **queue_members** コマンドで、キュー利用メンバーの表示、追加、削除ができます。登録されているメンバーはキューへジョブを投入することができます。なお、グループコースキューには、初期設定として当該グループが最初から登録されています。 **キュー利用メンバーの表示** ```nohighlight $ queue_members -q gr19999a -l gr19999 w12345 ``` **キュー利用メンバーの追加** ```nohighlight $ queue_members -q gr19999a -a b67890 ``` **キュー利用メンバーの削除** ```nohighlight $ queue_members -q gr19999a -d w12345 ``` * どの操作についても、-qオプションによるキューの指定が必須となります。 * メンバーの追加や削除は、設定変更の翌日の朝にジョブスケジューラシステムに反映されます。 ## キューのジョブスケジューリングポリシー設定(queue_policy){#queue_policy} [オンライン相談室](http://www.iimc.kyoto-u.ac.jp/ja/services/comp/contact.html#consult)にメールで依頼いただくことで、キューのジョブスケジューリングについてのポリシー設定ができます。キューに投入されたジョブの実行順序を決めるポリシー(SCHEDULING_POLICY)と、実行順序が自分より早いジョブを追い越して実行してもよいかを設定するポリシー(PASSING_POLICY)の2種類について設定が可能です。 * SCHEDULING_POLICY 設定値 | 動作 :-----------:|:-------------------------------------------------------------------------: fcfs | キューに投入された順番でジョブを実行する先着順スケジューリング(First-Come, First-Served)。初期設定値。 fairshare | ユーザ間でリソースを公平に使用できるように動的優先順位を内部で計算し、優先順位の高いユーザのジョブから順に実行するフェアシェアスケジューリング。 * PASSING_POLICY 設定値 | 動作 :----------:|:------: pass | あるジョブを実行するのに十分な計算資源がある場合、そのジョブよりも前に並んでいる実行待ちジョブを追い越して実行する。効率的に計算資源を利用できるが、大規模なジョブがいつまでも実行されない可能性が生じる。初期設定値。 wait | 計算資源に空きがある場合でも、ジョブ間の追越しは発生しない。 backfill | 各ジョブの実行時間制限(-W)をもとに計算を行い、他のジョブの実行開始時刻に影響を及ぼさない場合のみ、追越しが発生する。たとえば、大規模ジョブが開始されるまでの間に実行を完了できる小さなジョブを走らせることで資源を有効活用できる。 --> ## キューのジョブ実行状況の確認とキャンセル(spadmin){#spadmin} **spadmin** コマンドを用いることで、グループ管理者として登録されているキューのジョブ実行状況の確認、ジョブのキャンセルを行うことができます。 * ジョブの実行状況の確認 ```nohighlight $ spadmin list -p gr19999b ## gr19999bの部分は確認したいキュー名に変更してください. JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 4781 gr19999b run_cpu2 b59999 R 1:26:09 1 nb0001 ``` * ジョブのキャンセル ```nohighlight $ spadmin cancel 123 scancel: Terminating job 123 ``` なお、グループ管理者以外が **spadmin** コマンドを実行した場合は、以下のようなエラーが出力されます。 ```nohighlight $ spadmin list -p gr19999g Authorization Failure ```