Automation Services Catalog と IT Service Management (ITSM) システムの統合
オーダープロセスおよび置換可能な変数で定義したワークフローを使用して、IT Service Management システムツールチェーンに Automation Services Catalog を組み込む
概要
はじめに リンクのコピーリンクがクリップボードにコピーされました!
Automation Services Catalog のオーダープロセス機能を使用して、ServiceNow などの Information Technology Service Management (ITSM) システムと統合できます。
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 ITSM と Automation Services Catalog との統合の計画 リンクのコピーリンクがクリップボードにコピーされました!
Ansible Automation Platform および Playbook インベントリーに必要な更新と変更について計画し、ITSM システムと統合します。変更によっては、Ansible Tower と Automation Services Catalog の両方で、特定レベルの管理パーミッションが必要になる場合があります。
本セクションでは、更新の実行に必要な実際のロールと、変更する必要のあるアーティファクトについて詳しく説明します。
必須のパーミッション
インテグレーションワークフローを完了するには、以下のロールが必要です。
- ITSM 統合に使用する Playbook を作成または更新できます。
- Ansible Tower の管理者で、ジョブテンプレートを作成してサーベイを追加できます。
- カタログ管理者は、ポートフォリオの作成、サーベイの編集、およびオーダープロセスの設定が可能です。
Playbook
ITSM と Automation Services Catalog との統合に使用する予定のジョブテンプレートおよびワークフローで使用される Playbook を作成または更新します。
Ansible Tower のジョブおよびワークフローのテンプレートサーベイ
Playbook の前後に実行するジョブテンプレートにアタッチされたサーベイを更新して、置換可能な値をサポートします。
Automation Services Catalog
ITSM 統合ワークフローの製品に設定されたサーベイを更新し、置換を有効にします。
第2章 Automation Services Catalog との統合をサポートする Playbook set_stats フィールドの更新 リンクのコピーリンクがクリップボードにコピーされました!
Playbook を更新して、Automation Services Catalog に情報を渡して、オーダープロセスワークフローの製品全体にわたる置換可能な変数をサポートすることができます。
2.1. 値を Automation Services Catalog に戻す Playbook の作成 リンクのコピーリンクがクリップボードにコピーされました!
値を Automation Services Catalog に戻すように設計された Playbook を作成できます。set_stats パラメーターの前に expose_to_cloud_redhat_com_ を加えると、その値が Automation Services Catalog に戻されます。次に、置換可能な変数を使用して、追加の Playbook でこれらの値を渡すことができます。
以下の Playbook の例を使用して set_stats の値について確認し、値を Automation Services Catalog に戻し、これをオーダープロセスの後続の Playbook の置換可能な値として使用します。
before order Playbook の例
この before order Playbook は、favorite color で Automation Services Catalog set_stats の値に戻ります。
product order Playbook の例
この Playbook は、アーティファクトの値として Automation Services Catalog に置換可能な値を渡します。
after order Playbook の例
以下の after order Playbook の例には、製品 Playbook によって渡されたアーティファクトの after_data 値が含まれます。
第3章 オーダープロセスを使用した ITSM 統合での順次アクションの定義 リンクのコピーリンクがクリップボードにコピーされました!
オーダープロセスは、ユーザーがオーダーした製品を ITSM システムと統合するための主要な Automation Services Catalog 機能です。オーダープロセスは、ITSM システムでアクションを実行するジョブテンプレートを実行することを目的とする Automation Services Catalog の製品で設定されています。これらのプロセスは、Before order および After order アクションで設定されています。オーダープロセスは、ユーザーがオーダーする製品の前後に実行されるように設計された製品として定義し、これにより、情報がオーダーシーケンス全体に渡されるようにします。
シーケンスの例
- before order: ITSM システムでチケットを作成する製品。
- product order: Web サーバー
- after order: ITSM システムでチケットを閉じる製品。
製品またはポートフォリオレベルのいずれかに適用するオーダープロセスを作成することにより、シーケンスと実行される製品を定義します。
このワークフロー例では、オーダープロセスを作成し、before order、product order、および after order に割り当てる必要があります。
3.1. オーダープロセスの作成 リンクのコピーリンクがクリップボードにコピーされました!
カタログ管理者は、製品が順序付けされる前後に Ansible Tower Playbook を実行できるオーダープロセスを作成します。
前提条件
- Ansible Tower Playbook でオーダープロセスを作成するには、Ansible Tower クラスターをソースとして追加する必要があります。
手順
- メインナビゲーションから Order Processes を選択します。
- [Create] ボタンをクリックします。
- オーダープロセス名と説明を指定します。
ドロップダウンメニューから、オーダープロビジョニング前後に発生するアクションを選択します。
注記ドロップダウンメニューには、Ansible Tower ソースからプルした Playbook が表示されます。各オーダープロセスでサポートされるのは、1 つの Before および After アクションのみです。
- 新しい順序プロセスの詳細を確認してから [Create] ボタンをクリックします。
3.2. 製品の順序プロセスの設定 リンクのコピーリンクがクリップボードにコピーされました!
単一製品に適用される順序プロセスを設定します。
手順
- メインナビゲーションで Products を選択してから製品を選択します。
- [More actions] ボタンをクリックし、Set order processes を選択します。
ドロップダウンメニューを展開し、オーダープロセスを選択します。
注記現在、Ansible Automation Platform は製品プロビジョニングごとに 1 つのオーダープロセスのみをサポートします。
- [Save] ボタンをクリックします。
第4章 オーダープロセスワークフロー全体で置換可能な変数の有効化 リンクのコピーリンクがクリップボードにコピーされました!
オーダープロセスワークフローで使用する製品全体で変数を置き換えることができます。置換可能な変数を実装するには、Ansible Tower でジョブテンプレートのサーベイを作成または編集し、Automation Services Catalog の製品にアタッチされたサーベイで置換を有効にする必要があります。
置換形式および要件
置換可能な値は、{{substitution_express}} 形式で表され、波括弧と式の間にスペースは使用できません。置換に使用できる各変数の詳細は、Substitute variables を参照してください。
4.1. オーダープロセスワークフローへの置換可能な変数の実装 リンクのコピーリンクがクリップボードにコピーされました!
本セクションでは、本書に記載の Playbook の例を使用して、Playbook の Automation Services Catalog に公開するデータを置換可能な変数に合わせる方法を説明します。
4.1.1. before order プロセスを作成して製品オーダーに値を渡す リンクのコピーリンクがクリップボードにコピーされました!
before order プロセスの Playbook before_order.yml の例
この Playbook は、値が orange の Playbook アーティファクト favorite_color を Automation Services Catalog に戻します。ユーザー入力が必要ないため、Ansible Tower でジョブテンプレートサーベイを作成する必要はありません。代わりに、before order プロセス製品に設定された Automation Services Catalog のサーベイを編集することで、favorite_color を製品 Playbook に渡すことができます。
4.1.2. product order を設定し、置換可能な変数を使用する リンクのコピーリンクがクリップボードにコピーされました!
この製品 Playbook の例では、{{favorite_color}} の置換された変数を受け入れ、アーティファクト after_data を Automation Services Catalog に戻します。
Playbook product_order.yml の例
favorite_color を *Answer Variable Name として設定する product_order.ymlPlaybook のジョブテンプレートを Ansible Tower に作成します。
以下を含む product_order.yml ジョブテンプレートのサーベイを作成します。
- Prompt フィールドに、What is your favorite color? を入力します。
- Answer Variable Name フィールドに favorite_color と入力します。
- [UPDATE] ボタンをクリックします。
Automation Services Catalog 上の product order サーベイを有効にし、before_order.yml から渡される favorite_color の値を使用します。
product order に割り当てられたサーベイで、以下を行います。
以下の値でフィールドを更新します。
- Name: favorite_color
- Initial Value: {{before.before_order.artifacts.favorite_color}}
- Label: What is your favorite color?
- Placeholder: {{before.before_order.artifacts.favorite_color}}
- Disabled スイッチをアクティポジションに切り替えます。
- Substitution スイッチをアクティポジションに切り替えます。
これで、置換可能な変数として before_order.yml Playbook から favorite_color アーティファクトを使用するように product order を設定できました。
4.1.3. after order 製品を設定し、製品オーダーから after_data アーティファクトの値を受け入れる リンクのコピーリンクがクリップボードにコピーされました!
サーベイを使用して、product_order.yml アーティファクト after_data を、置換可能な変数を使用する after_order.yml に渡します。
after order 製品の Playbook after_order.yml の例
after_data を *Answer Variable Name として設定する after_order.ymlPlaybook のジョブテンプレートを Ansible Tower に作成します。
after_order.yml ジョブテンプレートに割り当てられたサーベイで、以下を行います。
- Prompt フィールドに Enter your after data を入力します。
- Answer Variable Name フィールドに after_data を入力ます。
- [UPDATE] ボタンをクリックします。
Automation Services Catalog で after order サーベイを有効にして、after_order.yml から渡された after_data の値を使用します。
after order に割り当てられたサーベイで、以下を行います。
以下の値でフィールドを更新します。
- Name: after_data
- Initial Value: {{product.artifacts.after_data}}
- Label: "Enter your after data"
- Placeholder: {{product.artifacts.after_data}}
- Disabled スイッチをアクティポジションに切り替えます。
- Substitution スイッチをアクティポジションに切り替えます。
Playbook は、ジョブテンプレートの実行時に after data に渡される値を表示します。
4.2. 置換変数の参照 リンクのコピーリンクがクリップボードにコピーされました!
置換の形式は {{substitution_express}} になります。波括弧と式の間にスペースを使用しないでください。
置換される値は、Ansible Tower のジョブテンプレートのサーベイに設定されます。置換した変数は、設定に応じて、オーダープロセス内のあるプロダクトから別のプロダクトに渡されます。
ジョブテンプレートのサーベイの更新に関する詳細は、Ansible Towerユーザーガイドの Surveys を参照してください。
サーベイに置換可能な変数を含める場合は、以下の表に従ってください。
| オブジェクト | 式 | 備考 |
|---|---|---|
| Order |
| order.created_at` は、オーダーを開始した日時です。
日付形式: 例: {{order.approval.reason}} |
| Before order |
| order_process_name にスペースが含まれる場合、引用符は必要ありません。 例: {{before.Sample Order.artifacts.ticket_number}} |
| Product |
| 例: {{product.artifacts.after_data}} |
| After order |
| order_process_name にスペースが含まれる場合、引用符は必要ありません。 例: {{after.SampleOrder.status}} |