新しい IBM Developer JP サイトへようこそ!サイトのデザインが一新され、旧 developerWorks のコンテンツも統合されました。 詳細はこちら

IBM Developer Blog

IBM Developer サイトで最新の出来事をフォローし、情報を入手しましょう。

IBM z/OS コア・コレクションの最新リリースに付属のサンプル・プレイブックの詳細を探る


このブログ記事では、IBM z/OS コア・コレクションの最新リリースに付属しているサンプル・プレイブックを紹介します。

IBM Z 用 Red Hat Ansible 認定コンテンツ

IBM z/OS コア・コレクションは、IBM Z 用 Red Hat Ansible 認定コンテンツとして知られるオファリングの一部となっています。この自動コンテンツを利用すると、使いやすい 1 つのプラットフォームに以下のワークフローのオーケストレーションを統合するために、IBM z/OS で Red Hat Ansible Automation Platform を追加の設定なしで使い始めることができます。

  • 構成管理
  • プロビジョニング
  • アプリケーション・デプロイメント

今のところ、この話のどこが画期的ニュースなのか 疑問に思っていることでしょう。その疑問にお答えします!Ansible は 2019 年の貢献先オープンソース・プロジェクト・トップ 10 の 1 つに挙げられたことをご存じですか?GitHub の Octoverse によると、2016 年以来、常にトップ 10 内の地位を維持しています。開発者として、皆さんはソフトウェアやアプリケーションのプロビジョニングと管理に伴う複雑さをよく理解していることでしょう。IBM の最近最新の (そして継続的な) Ansible エコシステムへの貢献により、Ansible を使用して、単一の自動化言語で z/OS プラットフォームを自動化できるようになりました。

Ansible のシンプルな自動化言語をご存じない場合に備えて説明すると、この言語は IT アプリケーション・インフラストラクチャー全体を記述できるよう、IT ランドスケープを成文化しています。自動化のニーズに簡単に対処する上で Ansible がいかに強力な言語であるかを確認してください。

IBM z/OS コア・コレクション

この初期リリースでは、サンプル・プレイブック、モジュール、プラグインを Ansible コンテンツ・コレクションという形で提供しています。このコレクションを利用することで、z/OS インベントリーに対してすぐに Ansible を使用できます。

IBM z/OS コア・コレクションにはまず、ジョブとデータ・セットの管理に使用する以下の 4 つの z/OS コア・モジュールを含めることになっています。今後、さらにモジュールを追加する予定です。

  • zos_job_submit、zos_job_query、zos_job_output: この 3 つのモジュールを使用して、z/OS 上のほぼすべての JCL のニーズに対応することができます。これらのモジュールを追加する目的は、システムを自動化するために使用している既存の JCL を利用できるようにすると同時に、動的で柔軟な JCL テンプレートを使って、Ansible でより高度な JCL 自動化を実現できるようにすることです。
  • zos_data_set: このモジュールを使用すると、JCL を一切記述せずにデータ・セットの属性を作成、削除、管理できます。

認定されているサポート対象のバージョンについては、Ansible Automation Hub をご覧ください (「zos」を検索)。

  • 注: このサポート対象コンテンツにアクセスするには、Red Hat Ansible Automation Platform にサブスクライブする必要があります。

IBM のオープンソース・コミュニティーのバージョンについては、Ansible Galaxy をご覧ください。

IBM z/OS コア・コレクションに関する技術ドキュメントについては、この Docs ページにアクセスしてください。

プレイブックを実行する方法

オファリングの内容を調べられるよう、IBM z/OS コア・コレクション v1.0.0 (Galaxy と Automation Hub の両方に用意されています) を使用して、プレイブック ibm_zos_core/playbooks/zos-collection-sample.yaml 内のモジュールを使用する方法を説明します。

  1. ansible.cfg ファイルを編集して pipelining = True を含めます。
  2. サンプル・インベントリーに z/OS ホスト、ユーザー、Python の場所を追加します。
  3. all.yml ファイル内の group_vars を、ターゲット z/OS ホスト上の ZOAU と Python を指すように更新します。
  4. プレイブックが置かれているのと同じディレクトリーから以下のコマンドを実行して Ansible プレイブックを実行します。
    ansible-playbook -i inventory zos-collection-sample.yaml
    

ジョブの管理

サンプル・プレイブックと、zos_job_submit、zos_job_query、zos_job_output によって実行されるタスクについての概要です。

  1. ホストに対して ping を実行し、z/OS ターゲット・ノードが到達可能であることを確認します。
  2. 正しい JCL フォルダーが存在することを確認します。
  3. zos_job_submit により、HELLO JCL ジョブが書き込まれてシステムにサブミットされます。
  4. zos_job_query により、サブミットされた HELLO ジョブのクエリーが実行されます。
  5. zos_job_output により、ジョブの出力が取得されます。
  6. HELLO ジョブとそのフォルダーがシステムから削除されます。

注: ステップ 3 からステップ 5 は、zos_job_submit だけを使って 1 回の呼び出しで実行できます。ただし、これらのアクションを個別に実行できるよう、他のモジュールを提供しています。

データ・セットの操作

サンプル・プレイブック内では zos_data_set が以下のように使用されます。

  1. zos_data_set により、USER.PRIVATE.TEST という名前の PDS データ・セットが作成されます。データ・セット名に定義されている上位修飾子を作成する権限があることを確認します。
  2. データ・セットが正常に作成されたことを確認します。
  3. zos_data_set により、新しく作成された PDS データ・セット USER.PRIVATE.TEST が削除されます。

以上です!IBM z/OS コア・コレクションの最初のリリースを活用していただけることを願います。

新しく追加されるコンテンツもお見逃しなく!

リソース

IBM Z 用 Red Hat Ansible 認定コンテンツの詳細については、以下のリンク先ページをご覧ください。