グループ管理者向け情報

グループ管理者とは,グループコース,専用クラスタコースの管理を行う権限を持った人を指します.
初期設定では,グループ管理者はサービスコースの申請者となっています.また,サービスコースの申請者はグループ管理者を追加・変更することも可能です.追加・変更は利用者ポータル から申請してください.

グループ管理者は,グループを管理するためのコマンドを利用することができます.この管理者専用コマンドによって,グループメンバーやグループに割り当てられたキューやディスクを管理できます.

  • コマンドの実行にあたっては, newgrp コマンドを使用してカレントグループを変更してください.

    $ id
    uid=12345(w12345) gid=12345(w12345) 所属グループ=12345(w12345),19999(gr19999)
    $ newgrp - gr19999
    $ id
    uid=12345(w12345) gid=19999(gr19999) 所属グループ=12345(w12345),19999(gr19999)

group_managers コマンドで,現在のグループ管理者を確認できます.

$ group_managers 
Group: gr19999, Managers: a59990,a59992

group_members コマンドで,グループメンバーの表示,追加ができます.メンバーはグループ専用キューへのジョブ投入やLARGEディスクスペースを利用することができます.

グループメンバーの表示

$ group_members -g gr19999 -l
gr19999:a59990,a59991,a59992,a59993,a59994

グループメンバーの削除

$ group_members -g gr19999 -d b59999
deleting user b59999 from group gr19999

グループメンバーの追加

$ group_members -g gr19999  -a b59999
adding user b59999 to group gr19999
  • サービスコースの支払責任者配下の利用者は,自動的にグループのメンバーとして登録されています.
  • このコマンドで追加したメンバーは,グループ用キューへのジョブ投入やLARGEディスクスペースを利用することができます.
  • group_members コマンドでユーザの追加削除を行う場合は,-g オプションでグループ名を指定してください.指定しない場合,操作者のカレントグループが適用されます.そのため,カレントグループが操作者の利用者IDとなっていた場合,ご希望のグループではなく,当該利用者IDのグループにユーザが追加されてしまいます.

グループメンバーを新規追加しても,そのメンバーがグループ用キューを即座に利用できるようになるわけではありません.追加されたメンバーがキューにジョブを投入するためには,ジョブスケジューラシステムに設定変更が反映される必要があります.反映は設定変更の翌朝に行われます.お急ぎの場合は,プログラミング相談室 までご連絡ください.

グループコースの無料の利用者追加枠の対象は、グループコースの支払責任者との予算による紐づきで判定します。無料の対象とするためには、利用申請書の提出が必要です。 group_members コマンドまたは利用者ポータルでグループメンバーを追加しただけでは対象となりませんので、ご注意ください。

group_backup コマンドで,LARGEディスクスペースのバックアップの設定ができます.LARGEディスクスペースは, /LARGE0/グループ名 ディレクトリと /LARGE1/グループ名 ディレクトリで構成されており,以下の2つの状態のどちらかを設定できます.

設定状態 /LARGE0/グループ名 /LARGE1/グループ名
バックアップ使用 Safe(バックアップあり) Backup (バックアップ先)
バックアップ未使用 Unsafe(バックアップなし) Unsafe(バックアップなし)

このうち,設定がSafe または Unsafeとなっているディスクを利用できます.

バックアップ設定の確認

$ group_backup  -l
 Num  Filesystem             Status  Filesystem             Status
  1)  /LARGE0/gr19999  ... Safe    /LARGE1/gr19999    ... Backup <- バックアップ使用状態

バックアップ未使用に設定

$ group_backup  --unsafe 1
/LARGE0/gr19999: Safe   => UnSafe
/LARGE1/gr19999: Backup => UnSafe

バックアップ設定の確認(変更後)

$ group_backup  -l
 Num  Filesystem             Status  Filesystem             Status
  1)  /LARGE0/gr19999    ... UnSafe  /LARGE1/gr19999    ... UnSafe  <- バックアップ未使用状態

バックアップ使用状態に戻す

$ group_backup  --safe 1
/LARGE0/gr19999: Unsafe => Safe
/LARGE1/gr19999: Unsafe => Backup

group_trash コマンドで,LARGEディスクスペースにあるファイルを削除(ゴミ箱へ移動)することができます.卒業などでいなくなった利用者のファイルなど,ファイルオーナーが存在しないファイルなどを削除することができます.もし誤って削除してしまった場合はゴミ箱から復元できますが,ゴミ箱は毎週月曜日に空になりますので注意してください.

group_trashコマンドで削除

$ group_trash  /LARGE0/gr19999/file1 
file1 to Trash (/LARGE0/gr19999/.DpcTrash/b59999/2009-04-10_1010)

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)

$ queue_acl_groups -q gr19999a -l
Request: acl_groups: gr19999
PBS    : acl_groups: gr19999

キュー利用メンバーの追加(acl_groups)

$ queue_acl_groups -q gr19999a -a gr19999

キュー利用メンバーの削除(acl_groups)

$ queue_acl_groups -q gr19999a -d gr19999
  • どの操作についても,-qオプションによるキューの指定が必須となります.
  • メンバーの追加や削除は,設定変更の翌日の朝にジョブスケジューラシステムに反映されます.(将来的に1時間に1回程度に改善する予定です)

オンライン相談室にメールで依頼いただくことで,キューのジョブスケジューリングについてのポリシー設定ができます.キューに投入されたジョブの実行順序を決めるポリシー(SCHEDULING_POLICY)と,実行順序が自分より早いジョブを追い越して実行してもよいかを設定するポリシー(PASSING_POLICY)の2種類について設定が可能です.

  • SCHEDULING_POLICY

    設定値 動作
    fcfs キューに投入された順番でジョブを実行する先着順スケジューリング(First-Come, First-Served).初期設定値.
    fairshare ユーザ間でリソースを公平に使用できるように動的優先順位を内部で計算し,優先順位の高いユーザのジョブから順に実行するフェアシェアスケジューリング.
  • PASSING_POLICY

    設定値 動作
    pass あるジョブを実行するのに十分な計算資源がある場合,そのジョブよりも前に並んでいる実行待ちジョブを追い越して実行する.効率的に計算資源を利用できるが,大規模なジョブがいつまでも実行されない可能性が生じる.初期設定値.
    wait 計算資源に空きがある場合でも,ジョブ間の追越しは発生しない.
    backfill 各ジョブの実行時間制限(-W)をもとに計算を行い,他のジョブの実行開始時刻に影響を及ぼさない場合のみ,追越しが発生する.たとえば,大規模ジョブが開始されるまでの間に実行を完了できる小さなジョブを走らせることで資源を有効活用できる.

group_qdel コマンドで,管理するキュー内のジョブをキャンセルすることができます.グループ管理者は,自身が投入したジョブに限らず,キュー内のすべてのジョブをキャンセルすることができます.

$ group_qdel 123444
qdel: Job <123444> has finished


Copyright © Academic Center for Computing and Media Studies, Kyoto University, All Rights Reserved.