外部 jobmngrd のセットアップ

外部 jobmngrd 構成をセットアップする手順について説明します。

KE2.0 システム側の事前準備については、KE2.0 側での準備 を参考に実施しておいてください。

ke2-docker パッケージの準備

KE2.0 の構築に必要な docker compose ファイルなどを含む ke2-docker パッケージを用意してください。 ke2-docker リポジトリ から、以下のいずれかの方法でサーバー上に展開してください。

  • 以下のコマンドを実行して git リポジトリをクローンしてください。(git コマンドが必要です)
    • $ git clone https://github.com/fixpoint/ke2-docker.git
  • ZIP ファイルとしてダウンロードし、用意したサーバー上に配置して展開してください。(unzip コマンドが必要です)

ke2-docker パッケージを展開できたら、外部 jobmngrd 構成用の docker-compose.yml ファイルを含むディレクトリに移動します。

$ cd ke2/extra/jobmngrd

コンテナイメージの取得

以下のコマンドを実行してコンテナイメージを取得してください。

$ docker compose pull

※ インターネットに接続できない環境の場合は「オフライン環境での構築」を参考にしてください。

コンテナの作成と開始

以下のコマンドを実行してコンテナを作成および開始を行なってください。

$ AMQP_URL=... docker compose up -d

このとき KE2.0 が動作しているシステムの rabbitmq に接続できるように、rabbitmq に追加したユーザやパスワードに合わせて AMQP_URL を指定してください(ユーザ名・パスワードは KE2.0 側で rabbitmqctl add_user で追加した値を使用します)。

$ AMQP_URL='amqps://<AMQP_USER>:<AMQP_PASSWORD>@<RABBITMQ_HOST>:5671' docker compose up -d

AMQP_URL に埋め込むユーザ名・パスワードに URL 安全でない文字 (@ : / % や空白等、RFC 3986 unreserved 以外の文字) を含む場合: RFC 3986 に従いパーセントエンコード (@%40, :%3A, /%2F 等) が必要です (パスワードに限らず userinfo 全体が対象)。詳細な変換規則と例は 資格情報管理 §5 を参照。なお、AMQP_URL の userinfo (ユーザ名・パスワード) に URL 安全でない文字を含む場合、KE2.0 コンテナイメージは v2.0.5.post2 以降が必要です。コンテナイメージのバージョン指定方法は KOMPIRA_IMAGE_NAME / KOMPIRA_IMAGE_TAG を、変更後の反映には docker compose pull の再実行が必要なことを併せて確認してください。

また、上記コマンド例は AMQP_URL 全体をシングルクオートで囲む形式のため、シェル特殊文字 (# / 空白 / $ / ! 等) を含むパスワードでも安全にコピペできますが、値自体に ' (シングルクオート) を含む場合は閉じてしまうため別途エスケープが必要です。対処方法は同じく 資格情報管理 §5 (シェル例で ' を含む値を扱う場合) を参照。

セットアップ後の動作確認

ブラウザで KE2.0 の「管理領域設定 > デフォルト」 (/config/realms/default) を確認して、「ジョブマネージャ状態」一覧にこのホストがステータス「動作中」として表示されていれば、外部 jobmngrd 構成のセットアップは成功です。