13.1.1 JP1/Baseのセットアップ

この項では,JP1/Baseのセットアップについて説明します。

なお,この項では,設定の流れと大まかな設定内容を説明します。設定方法,設定項目,コマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。

JP1/Baseは,次の流れでセットアップします。

  1. ユーザー情報の設定
    ユーザー情報では,JP1/Baseのユーザー管理機能を使って,ユーザー認証やユーザーマッピングなどを設定します。
    ユーザー認証の設定では,JP1/AJS2のユーザーや,JP1/AJS2を使うために必要な権限などを設定します。
    ユーザーマッピングは,ジョブを実行したり,JP1/AJS2 - Viewからログインしたりするために必要な設定です。JP1ユーザーに,各ホストに登録されているOSユーザーをマッピングします。
    設定方法については,「(1) ユーザー情報を設定する」を参照してください。
  2. イベントサービス環境の設定
    イベントサービス環境の設定は,JP1イベントを送受信するために必要です。
    設定方法については,マニュアル「JP1/Base 運用ガイド」を参照してください。

JP1/Baseのセットアップの手順と定義内容を次に示します。

<この項の構成>
(1) ユーザー情報を設定する
(2) JP1/AJS2に必要なJP1権限レベル一覧

(1) ユーザー情報を設定する

ユーザー情報は,次の流れで設定します。

  1. 使用する認証サーバを指定する。
  2. JP1ユーザーを登録する。
  3. JP1権限レベルを設定する。
  4. ユーザーマッピングを設定する(JP1/AJS2 - Viewからログインする場合にも,この設定は必要です)。

なお,他ホストに認証サーバを設定している場合は,2と3の作業は不要です。他ホストの認証サーバであらかじめ設定しておいてください。

UNIX版JP1/Baseでは,コマンドを使ってユーザー情報を設定します。ユーザー情報の設定手順を設定内容ごとに説明します。

(a) 使用する認証サーバを指定する

次のコマンドを実行します。

jbssetusrsrvプライマリー認証サーバ [セカンダリー認証サーバ]

「プライマリー認証サーバ」に指定したホストが,通常時に使用する認証サーバとなり,「セカンダリー認証サーバ」に指定したホストが,予備の認証サーバとなります。

「セカンダリー認証サーバ」は必要に応じて指定してください。省略した場合は,「プライマリー認証サーバ」に指定したホストだけが,一つのユーザー認証圏内で認証サーバとして稼働します。

注意
認証サーバ(プライマリー認証サーバまたはセカンダリー認証サーバ)として指定するホスト名は,JP1/Baseを起動する前に,hostsファイルまたはDNSサーバに設定しておいてください。認証サーバの指定(jbssetusrsrvコマンドの実行)と,hostsファイルまたはDNSサーバへの設定順序は任意ですが,JP1/Baseの起動時にはホスト名からIPアドレスを解決できる状態になっている必要があります。jbssetusrsrvコマンドを実行して自ホストを認証サーバ(プライマリー認証サーバまたはセカンダリー認証サーバ)に指定した場合は,次の形式でコマンドを実行してください。
cd /etc/opt/jp1base/conf
cp -p jp1bs_spmd.conf.session.model jp1bs_spmd.conf
なお,このコマンドを実行しない場合は,自ホストを認証サーバ(プライマリー認証サーバまたはセカンダリー認証サーバ)に指定しても,認証サーバとして起動しません。

(b) JP1ユーザーを登録する

次のコマンドを実行します。

jbsadduser JP1ユーザー名

登録するJP1ユーザーの数だけ,このコマンドを実行します。

(c) JP1権限レベルを設定する

登録したJP1ユーザーに対して,JP1/AJS2で処理を定義・実行するための権限レベルを設定します。権限レベルを設定するには,JP1ユーザーに対して「JP1資源グループ」と「JP1権限レベル」を定義します。

JP1権限レベルの設定手順を次に示します。

  1. 次のファイルをエディターで開く。

    /etc/opt/jp1base/conf/user_acl/JP1_UserLevel

    ファイルには,初期値として次の定義が記載されています。

    jp1admin:*=JP1_AJS_Admin,JP1_Console_Admin,JP1_JPQ_Admin

  2. 「JP1ユーザー名:JP1資源グループ名=JP1権限レベル名の形式で定義を記述する。
    JP1権限レベルを複数定義する場合は,「,(コンマ)」で区切って入力します。複数の資源グループへの権限を定義する場合は,「:(コロン)」で区切って入力します。また,コメントを挿入したい場合は,行頭に「;(セミコロン)」を入力します。改行されるまでコメントとして扱われます。
    「JP1_Queue」は,大文字・小文字を間違えないように入力してください。
    なお,JP1/AJS2に必要な権限レベルの詳細については「(2) JP1/AJS2に必要なJP1権限レベル一覧」を参照してください。
    記述例を次に示します。

    [図データ]

  3. すべてのJP1ユーザーに権限レベルを設定したら,ファイルを閉じる。
  4. JP1/Baseを再起動するか,またはjbs_spmd_reloadコマンドを実行する。
    定義した内容が有効になります。

(d) ユーザーマッピングを設定する

登録したJP1ユーザーに対して,OSユーザーをマッピングします。ジョブを実行させたり,JP1/AJS2 - Viewからログインしたりするためにこの設定が必要です。

ユーザーマッピングの設定手順を次に示します。

  1. エディターなどで,ユーザーマッピング定義ファイルを開く。
    任意のファイルで設定することもできますが,実際の定義内容と一致させるため,/etc/opt/jp1base/conf/user_acl/jp1BsUmap.confを使用することをお勧めします。
  2. 「JP1ユーザー名:ホスト名:OSユーザー名」の形式で定義を記述する。
    記述例を次に示します。

    [図データ]

  3. 定義の記述が終了したらファイルを閉じ,次のコマンドを実行する。

    jbsmkumap [-f ユーザーマッピング定義ファイル]

    定義した内容が有効になります。なお,ユーザーマッピング定義ファイルに/etc/opt/jp1base/conf/user_acl/jp1BsUmap.confを使用した場合は,-fオプションの指定は不要です。
補足事項
ユーザーマッピング定義ファイルに設定する項目を次の表に示します。

表13-1 ユーザーマッピング定義ファイルに設定する項目(JP1/AJS2 - Manager)

操作内容JP1ユーザー名ホスト名OSユーザー名
JP1/AJS2 - Viewを使ってジョブを実行するJP1/AJS2 - ManagerにログインするユーザーJP1/AJS2 - Viewが接続するJP1/AJS2 - Managerホストジョブを実行するホストのOSに登録されているユーザー
JP1/AJS2 - Managerホスト以外のホストでジョブを実行するJP1/AJS2 - ManagerホストのOSにログインするユーザーJP1/AJS2 - Managerホストサブミットジョブを実行するホストのOSに登録されているユーザー
JP1/AJS2 - Client Toolkitからサブミットジョブを登録するサブミット先JP1/AJS2 - ManagerホストのOSにログインするユーザーJP1/AJS2 - Managerホストサブミットジョブを実行するホストのOSに登録されているユーザー
注意事項
マッピングするOSユーザーには,ユーザーID,グループIDを正しく設定したOSユーザーを指定してください。
JP1/AJS2 - Viewからログインする場合,マッピングするOSユーザーにホームディレクトリを正しく設定する必要があります。
また,JP1ユーザーにマッピングするOSユーザーは正常にOSにログインできるOSユーザーをJP1ユーザーにマッピングしてください。
OSユーザーが次に示す状態だとジョブが起動失敗となるおそれがあります。
  • /etc/passwdに指定したホームディレクトリが存在しない。
  • /etc/passwdに指定したログインシェルが存在しない。

(2) JP1/AJS2に必要なJP1権限レベル一覧

JP1/AJS2のJP1権限レベルには次の2種類があります。

それぞれの権限レベル名と操作できる内容について説明します。

(a) ジョブネット定義・実行時のJP1権限レベル

ジョブネット定義・実行時のJP1権限レベルには,次の5種類があります。

ジョブネット定義・実行時のJP1権限レベル名と詳細な操作内容を次の表に示します。

表13-2 ジョブネット定義・実行時のJP1権限レベル名と操作できる内容

操作内容JP1_AJS_
Admin
JP1_AJS_
Manager
JP1_AJS_
Editor
JP1_AJS_
Operator
JP1_AJS_
Guest
他ユーザーが所有権を持つユニットに対して,所有者,JP1資源グループ名,またはジョブの実行ユーザー種別を変更する※1
ジョブネットワーク要素を定義する※2※2
ジョブネットに定義したジョブネットワーク要素の定義内容を変更する※3※3
ジョブネットの定義内容を変更する
ジョブネットワーク要素を複写・移動したり,名称を変更したりする※2※2
ジョブネットワーク要素を削除する
ジョブネットワーク要素名を標準出力ファイルに出力する
ジョブネットワーク要素の定義内容を標準出力ファイルに出力する
ジョブネットワーク要素を退避する
ジョブネットワーク要素を回復する※2※2
ジョブグループにカレンダー情報を定義する
特定期間について,ジョブネットの実行スケジュールを定義する
定義済みのジョブネットを実行登録する
ジョブネットの実行登録を解除する
ジョブネットやジョブの実行履歴,現在の状態,次回実行予定などを標準出力ファイルに出力する
ジョブネットに定義されたスケジュールを一時的に変更する
ジョブの状態を一時的に変更する
ジョブの状態を変更する
ジョブネットの実行を中断する
ジョブネットを再実行する
ジョブやジョブネットの実行を強制終了させる
ジョブネットワーク要素をエクスポートする
ジョブネットワーク要素をインポートする
(凡例)
○:操作できる。
-:操作できない。
OSのスーパーユーザーは,JP1権限レベルに関係なく,すべての操作を実行できます。
また,ユニットにJP1資源グループが設定されていない場合,そのユニットに対して,JP1権限レベルに関係なく,あらゆるユーザーはすべての操作ができます。
注※1
ユニットの所有者であれば,JP1_AJS_Admin権限が与えられていなくても操作ができます。
ただし,ユニット所有者であっても,そのユニットに設定されているJP1資源グループに対して参照する権限が与えられていない場合,JP1/AJS2 - ViewからJP1資源グループ名,所有者,ジョブの実行ユーザーの種別を変更できません。JP1/AJS2 - ViewからJP1資源グループ名,所有者,ジョブの実行ユーザーの種別を変更したい場合は,「ajschange -g JP1資源グループ名 ユニット名」で,JP1資源グループ名を参照する権限が与えられているJP1資源グループに変更してください。
また,ユニットに所有者が設定されていない場合,すべてのユーザーが,JP1資源グループ名,所有者,またはジョブの実行ユーザーの種別を変更できます。
なお,ユニットの実行ユーザーの種別が所有ユーザーに設定されている場合,次に示すユーザー以外のユーザーが,ユニットの所有者を別のJP1ユーザーに変更すると,ユニットの実行ユーザーの種別が登録ユーザーになります。ユニットの実行ユーザーの種別が登録ユーザーになると,ジョブはジョブネットを実行登録したユーザーでの実行として扱われます。これは,次に示すユーザー以外のユーザーが,任意のユーザー権限でジョブを実行することを防ぐためです。
  • スーパーユーザー権限が与えられているユーザー
  • ユニットに設定されているJP1資源グループに対してJP1_AJS_Admin権限が与えられているJP1ユーザー
注※2
マネージャージョブグループ,マネージャージョブネットでは,参照先のJP1/AJS2 - Managerのアクセス権限の定義が適用されます。
注※3
ユニットの実行ユーザーの種別が所有ユーザーになっている場合,JP1_AJS_Admin権限以外のJP1ユーザーは,自分が所有するユニットでなければ変更操作ができません。これは,JP1_AJS_Admin権限が与えられていない一般ユーザーが,任意のジョブを実行することを防ぐためです。
なお,ユニットの実行ユーザーの種別が登録ユーザーになっている場合は,操作ができるJP1権限レベルを与えられているだけで変更操作ができます。

(b) ジョブの実行・操作時のJP1権限レベル

ジョブの実行・操作時のJP1権限レベルには,次の3種類があります。

ジョブの実行・操作時のアクセス権限の設定では,資源グループ「JP1_Queue」に対して,これらの権限レベルを持たせるように設定します。「JP1_Queue」は,大文字・小文字を間違えないように入力してください。

ジョブの実行・操作時のJP1権限レベル名と詳細な操作内容を次の表に示します。

表13-3 ジョブの実行・操作時のJP1権限レベル名と詳細な操作内容

操作内容JP1_JPQ_
Admin
JP1_JPQ_
Operator
JP1_JPQ_
User
サブミットジョブを登録する
ジョブの実行をキャンセルまたは強制終了する
ジョブの実行を保留,または保留解除する
ジョブを移動する
ジョブ情報を出力する
終了ジョブ情報を出力する
データベースから終了ジョブ情報を削除する
キューを開く
キューを閉じる
キューを追加する
キューを削除する
キュー情報を出力する
キューの定義を変更する
キューをエージェントに接続する
キューとエージェントの接続を解除する
ジョブ実行多重度を変更する
エージェントを追加する
エージェントを削除する
エージェントホスト情報を出力する
排他実行リソースを追加する
排他実行リソースを削除する
排他実行リソース情報を出力する
(凡例)
○:操作できる。
△:操作できるが,ほかのユーザーが実行したジョブは操作できない。
-:操作できない。

注意
ジョブの実行・操作時は,処理要求先マネージャーが使用する認証サーバのアクセス権限の定義が適用されます。
ジョブ実行制御のコマンドを使用してジョブの実行・操作を行う場合,コマンドを実行するOSユーザーと同名のJP1ユーザーを登録しておく必要があります。また,コマンドを実行するOSユーザーと同名のJP1ユーザーに対してジョブの実行・操作を行うのに必要なJP1権限レベルを設定してください。
例えば,OSユーザー「root」でログインしてコマンドを実行する場合は,定義ファイルに次のように記述して設定してください。
root:JP1_Queue=JP1_JPQ_Admin
上記の例では,JP1権限レベル名はJP1_JPQ_Adminですが,実行するコマンドに必要なJP1権限レベルを記述します。
jpqjobsubコマンドを実行する場合は,ジョブ実行先ホスト側でジョブを実行するJP1ユーザー(コマンドを実行したOSユーザーと同名のJP1ユーザー)と実行先ホストのOSユーザーをマッピングしておく必要があります。
jpqjobsubコマンドで-euを指定する場合は,-euに指定したOSユーザーとJP1ユーザー(コマンドを実行したOSユーザーと同名のJP1ユーザー)をジョブ実行先ホスト側でマッピングしておく必要があります。