2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IBM Workload Scheduler - AI Data Advisor をインストールしてみた

Posted at

そもそもAI Data Advisorとは

IBM Workload Scheduler (以下IWS)バージョン 10.1では AI Data Advisor(以下AIDA)と呼ばれるAIによるジョブ管理機能が追加されています。
バージョン 10.1で追加された主要な新機能の一つで、AIにより毎日のジョブスケジュール実行状況を分析し、「いつもと様子が異なる」場合にそれを運用者に示してくれる機能です。

例えば個々のジョブのステータスを監視しているだけでは気づきにくい、次のような状況を検知します。

  • スケジュールされているジョブ数が通常よりも多い
  • ジョブスケジュールの進みが遅い(時系列で見た時に実行完了ジョブ数の推移がいつもよりも緩やか)

AI Data Advisor については、製品マニュアル
YouTubeの Workload Automation チャンネルの動画 でも紹介されていますが、実際にどんな感じなのか見てみたい!ということでインストールしてみました。

とにかく検証用に早く動かしてみたいということでインストールした際の手順です。導入要件やインストール手順の概要を掴みたい、簡易検証で手っ取り早く導入してみたい、といった時に参考にしていただければ幸いです。

IWS 10.1 & AIDA 構成

AIDAはIWS 10.1サーバーで公開されるメトリックをAPIで収集し、分析します。
AIDAはDockerでのデプロイとKubernetesでのデプロイが可能ですが、今回は簡易に検証環境を作成したいのでDockerでデプロイすることにします。
IWSサーバーとは別立てとし、次のような構成とします。

AIDA_overview.png

AIDA導入前提要件

製品マニュアルからリンクされているGitHubページにてAIDAのインストール手順が公開されており、こちらに前提要件の記載があります。
Dockerへのデプロイの場合の導入前提要件は以下です。

  • Linux(x86)またはLinux on Z
  • Docker 19.x以降
  • Docker Compose 12.8以降
  • AIDAを構成するコンテナによって使用されるリソースの最大量
    • CPU:6コア
    • メモリ:32GB

その他要件:

  • インターネット接続(インストール過程で外部レジストリよりDockerイメージをダウンロードしているように見えるため)

IBM Software Product Compatiblilty Report には Ubuntu 20.04 および 22.04で検証済みと解釈できる記載があったので、Ubuntu 22.04 にインストールすることにしました。

なお、Githubの Prerequisites(前提要件)にはOpenSearch 2.3.0 や Keycloakのコンテナイメージもリストされていましたが、Fix Central からインストールイメージをダウンロードして導入する場合はこれらのコンテナイメージを別途入手する必要はなく、インストール過程で適宜ダウンロードが行われました。

IWS側の事前準備

AIDAでIWSの稼働状況を分析しアノマリーを検知するためには、IWSのメトリックを収集する必要があります。AIDA導入前に、こちらの手順 に従ってIWSのメトリックをAIDA用に公開する必要があります。

  • IWSサーバーにログインします。以降の作業は全て rootユーザで実行します。

  • IWS用 WAS Liberty の設定ファイルが保管されているディレクトリーへ移動します。(下記は /opt/wa にIWSサーバーを導入している場合)

# cd /opt/wa/TWSDATA/usr/servers/engineServer/configDropins/overrides
  • prometheus.xmlを編集します。オリジナルのファイルは別ディレクトリーへバックアップを取得します。(同じディレクトリーでバックアップファイルを作成すると誤動作の原因となります。)
    編集例:
# cat prometheus.xml 
<server>
  <featureManager>       
     <feature>mpMetrics-2.3</feature>
     <feature>cdi-2.0</feature>
  </featureManager> 
  <administrator-role> 
    <user>${user.twsuser.id}</user> 
  </administrator-role>
</server>
#
  • IWSのWASを再起動します。
# su - wauser
$ conman "stopappserver ;wait"
$ conman "startappserver ;wait"

AIDAインストール手順

AIDAをDockerへデプロイする手順は2通りあります。

  • Fix Centralでインストールイメージをダウンロードしてインストールする
  • IBM Cloud Container Registryからコンテナイメージをダウンロードして起動する
    今回はFix Centralでインストールイメージをダウンロードする方法をとりました。

以降の手順ではDocker, Docker Composeが導入済みであり、Linuxカーネル・パラメーター vm.max_map_count が 262144 に設定されていることを前提とします。

インストールイメージの入手・展開・ロード

Fix Centralよりインストールイメージをダウンロードします。本手順を実施時点の最新のインストールイメージは IWS 10.1 Fix Pack 3 (10.1.0.3-2023.05-IWS-DOCKER-AIDA-LNX_X86_64)でした。
ダウンロードしたインストールイメージをAIDA導入サーバーへアップロードし、作業用ディレクトリーで展開します。

操作は全てrootユーザで行います。

  • umask を 0022へ設定する。
# umask 0022
# umask
  • 作業用ディレクトリ(ここでは /work/docker ) でインストールイメージを展開します。
tar -zxvf 10.1.0.3-2023.05-IWS-DOCKER-AIDA-LNX_X86_64.tar.gz
  • /work/docker/docker-deploymentディレクトリーへ移動し、Docker イメージをロードします。
# cd docker-deployment/
# ./AIDA.sh load

設定ファイル(common.env)の編集

  • AIDAの設定は common.envで行います。次のパラメーターを編集します。
パラメーター名 設定値 説明
OPENSSL_PASSWORD default Open SSL証明書のパスワード
LICENSE accept ライセンスへの合意
WA_OMETRICS https://IWS_SERVER_IP:31116/metrics IWS公開メトリックへの接続URL。IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名。
WA_METADATA https://IWS_SERVER_IP:31116/twsd/engine/historical_metric/metadata IWSメタデータへの接続URL。IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名。
WA_RECORDS https://IWS_SERVER_IP:31116/twsd/engine/historical_metric/record IWS履歴データへの接続URL。IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名。
ALERT_CONFIG_URL https://IWS_SERVER_IP:31116/twsd/engine/definition/alert アラート構成ファイルへの接続URL。IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名。
KPI_CONFIG_URL https://IWS_SERVER_IP:31116/twsd/engine/definition/kpi KPI定義ファイルへの接続URL。IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名
WA_CATALOGS https://IWS_SERVER_IP:31116/twsd/engine/definition/aida_catalog IWS_SERVER_IPはIWSサーバーのIPアドレスまたはホスト名
HTTP_AUTH_USER wauser IWS管理ユーザー名
HTTP_AUTH_PASSWORD password wauser(IWS管理ユーザー)のパスワード

AIDAコンテナのビルドと開始

  • AIDAコンテナをビルドし、起動します。
# ./AIDA.sh build-start

IWSサーバーの登録

  • AIDAの分析対象となるIWSサーバーを登録します。
    下記コマンドを実行後、プロンプトに従って、IWSサーバーのメトリック公開URL、IWS管理ユーザー名、パスワードを入力します。"Is the engine distributed?"の質問には y で回答します。
# ./AIDA.sh add-credentials

AIDAへのアクセス

次のような画面が表示されれば、インストールは成功です。
スクリーンショット 2023-06-06 10.04.11.png

AIDAでどのような事象を検知できるのかは、検証して別途記事にまとめたいと思います。

本記事は以上です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?