インテリジェントな修復:AIを活用したアクション生成

Instana Intelligent Remediationは、生成AIを活用して、インシデントや問題の解決を迅速化します。 Instana のイベント詳細を、大規模言語モデル(LLM)へのプロンプトとして入力できます。 LLMは、イベントの診断や修復を行う一連の手順である「手動アクション」や、手動手順に基づいた「スクリプトアクション」を生成することができます。

これらのアクションをさらに設定し、 アクションカタログに追加することができます。 これらのアクションは、参照しやすくするために、イベントとアクションを関連付ける自動化ポリシー にも適用できます。

頻繁に発生するビルトイン・イベントについては、事前に定義されたキュレーション・アクションを選択することができる。

人工知能(AI)によって生成されたアクションは、対象システムに対して自動的に実行されることはありません。 さらに、AIも時には間違いを犯すことがあります。 したがって、これらのアクションを自動化ポリシーや本番システムで使用する前に、必ず確認、検証、およびテストを行う必要があります。

注:
Instana AIを活用したインテリジェントな修復機能は、 SaaS およびセルフホスト環境の両方で提供されています。

AI 統合

手動操作やスクリプト生成のための生成AIは、 ibm/granite-3-3-8b-instruct という大規模言語モデル(LLM)を利用して、手動操作やスクリプトを生成します。 このモデルはイベントデータを入力として使用し、問題の診断や解決に向けた手順を提案します。 また、このLLMは、手動のステップを入力として受け取り、その指示を実行するために必要なスクリプトを生成することで、 bash や Ansible のスクリプトに変換します。

前提条件

Instana のAIを活用したインテリジェント修復機能を使用するには、以下の前提条件を満たしている必要があります:

権限

以下の Automation RBAC権限を有効にする必要があります:

    • アクセスタイプ:所有者(新しいオートメーションアクションの設定が可能)
    • 自動化ポリシーの設定(ポリシー作成が必要な場合)

SaaS 環境

SaaS 環境では、 watsonx.ai のデフォルトのAI接続は、 Instana によって提供されます。 この機能を使用するために、追加の設定は必要ありません。 必要に応じて、独自の watsonx.ai ランタイム用に個別のゲートウェイを設定することができます。 詳細については、「 AI 接続の設定」 を参照してください。

自社管理環境

Standard Edition および Custom Edition では、この機能を利用するには、必要な機能フラグを有効にし、AI接続を設定する必要があります。 詳細については、「 AI 接続の設定」 を参照してください。

Standard Edition での AI アクション生成の機能フラグを設定するには、「 Standard エディションでのオプション機能の有効化」 を参照してください。

Custom Edition で AI アクション生成の機能フラグを設定するには、「 Custom Edition でのオプション機能の有効化」 を参照してください。

セルフホスト型クラシックエディション( Docker ) では、AI を使用したアクション生成はサポートされていません。

AIを活用した手動操作の生成

組み込みイベント、カスタムイベント、またはスマートアラートが発生した場合は、「自動化」セクションの 「推奨アクション」 を参照してください。 リンクをクリックして、 AIで生成してください。

組み込みイベント、カスタムイベント、またはスマートアラートの発生に対して手動アクションを生成するには、以下の手順を実行します:

  1. Instana のUIで、 「イベント 」>「 インシデント 」または 「イベント 」>「 課題」 に移動します。
  2. インシデントまたは問題を開く
  3. 推奨アクション 」テーブルで、 「アクションを生成」 をクリックします。

アクションの生成

手動アクションを生成するプロセスは、主に2つのステップからなり、自動化のためのオプションの3つ目のステップがあります:
  1. アクションを作成するか、選択してください。
  2. AIによって生成された是正措置の手順を編集し、アクションカタログに手動アクションとして保存します。
  3. オプション:自動化用のBashスクリプトまたは Ansible プレイブックを生成し、 GitHub または GitLab にエクスポートするか、アクションカタログに保存します。

ステップ 1: アクションの生成または選択

インシデントに、トリガーとなったイベントと考えられる根本原因が記載されたトポロジー図が含まれている場合、トポロジーセクションに 「推奨される対応策 」が表示されます。 「 ステップ 1/2」 に表示されるフィールドは、トポロジーチャートでクリックしたノードと、AIアクション生成が有効になっているかどうかによって異なります。

  • トリガーイベント 」ノードをクリックすると、「 イベントの概要 」や「 イベントエンティティタイプ 」などの設定詳細が、現在のイベント情報から自動的に入力されます。
  • 「推定根本原因」 ノードをクリックすると、 「根本原因の概要 」や「 エンティティタイプ 」などの設定詳細が、現在の根本原因情報から自動的に入力されます。

特定の原因について「 調査を実行 」ボタンをクリックすると、調査結果のコンテキストに基づいて「 推奨されるアクション 」テーブルが表示されます。

推奨アクション 」テーブルから 「アクションを生成」 をクリックすると、調査結果から 「調査概要 」や「 エンティティタイプ」 などの設定詳細が自動的に入力されます。

リアルタイム生成(AIによるアクション生成機能が有効な場合)

  1. イベントの概要を確認してください。 AIのプロンプトの詳細を充実させることも、そのままにして修正手順を生成することも可能です。
  2. 修復手順を生成するには、 「生成」 をクリックしてください。
  3. 2つのステップのうちの2番目のステップ 」で生成された結果を確認してください。
注:
必要に応じて、プロンプトの入力欄を変更し、「 生成」 をもう一度クリックすることで、結果を改善することができます。 AIからより良い結果を得るために、適切な詳細情報を提供してください。
[手動操作が生成されました]

組み込みアクション(あらかじめ作成されたアクション)

よく使用される組み込みイベントのいくつかについては、ステップ 1 に「 ライブ生成 」と「 組み込みアクション 」の両方のタブが表示されます。

  • ビルトインアクションタブには、イベントに関連する事前に生成されたアクションとキュレーションされたアクションのリストが含まれています。
  • これらの事前定義されたアクションはすぐに使用でき、アクションカタログに保存することができます。
  • リストからアクションを選択すると、 2つのステップのうちの2番目のステップでそのアクションを表示・編集できます。
内蔵アクション

オプション:自動化スクリプトを生成する

AIによるアクション生成が有効になっている場合、 「オプションのアクション 」セクションが「 ステップ 2/2 」に表示され、手動の修正手順を自動化に変換できるようになります。 scripts.To は、手動の手順から自動化スクリプトを生成します:
  1. オプションのアクション 」セクションで、以下のインタープリタのいずれかを選択してください:

    • Bashスクリプトを生成 :Bashシェルスクリプトを作成します
    • Ansible プレイブックの生成 : Ansible プレイブックを作成します
  2. 「生成されたコード 」セクションで、生成されたコードを確認してください。

  3. (任意): 編集アイコンをクリックしてスクリプトを変更し、 [保存] をクリックして変更を適用します。

  4. (任意): 手順 2 で修正手順を編集し、 「再生成」 をクリックしてスクリプトの新しいバージョンを生成することができます。

  5. スクリプトを保存またはエクスポートするには、以下のオプションから1つを選択してください:

    • 保存 」アイコンをクリックして、スクリプトをアクションカタログにスクリプトアクションとして保存します。
    • GitHub 」アイコンをクリックして、スクリプトを GitHub リポジトリにエクスポートします。 GitHubセンサーの有効化に関する詳細については、「 Automation Actionの GitHub センサーの有効化と設定」 を参照してください。

      GitLab 」アイコンをクリックして、スクリプトを GitLab リポジトリにエクスポートします。 GitHubセンサーの有効化に関する詳細については、「 Automation Actionの GitLab センサーの有効化と設定」 を参照してください。

オプションの自動化スクリプト

試合を観戦する

  • 新しいアクションは、 Instana のUIにある 「オートメーション 」セクションの 「アクションカタログ 」タブから利用できます。
  • 手動によるアクションは、インシデントまたは課題の 「推奨アクション 」タブから確認できます。
  • スクリプトアクションは、自動化ポリシー を通じて自動的に実行されるように設定できます。

アクションの表示

AIを活用したスクリプトアクションの生成

手動操作を選択してスクリプトを生成するには、以下の手順を実行してください:

  1. Instana のUIにあるナビゲーションメニューから、 「Automation」 をクリックします。
  2. [ アクションカタログ] タブで、タイプが「 手動」 のアクションを任意に選択します。
  3. 手動操作からスクリプトを生成するには、次のいずれかの操作を行ってください:
    • [アクション] をクリックし、[設定] タブで [ スクリプトを生成 ] をクリックします。
    • オプションのオーバーフローメニューをクリックし、[ スクリプトを生成] をクリックします。

スクリプトを生成」 機能は、イベントの発生に基づいて、手動アクションの 「オプション」 にある「 推奨アクション 」テーブルからも利用できます。

AI を使用してスクリプトアクションを生成するには、次の 2 つの手順が必要です:

  • スクリプトの生成
  • スクリプトアクションを作成するか、外部ソースにエクスポートする

手動操作からスクリプトを生成するには、以下の手順を実行してください:

スクリプトの生成

ステップ 1: スクリプトを生成する 」ページで、必要に応じて手動操作の内容を変更してください。 ステップの詳細は、新しいスクリプトアクションを生成するためのAIプロンプトを作成するために使用されます。

スクリプトアクションを作成するには、以下の手順を実行してください:

  1. スクリプト生成に使用するインタプリタとして、 Bash または Ansible のいずれかを選択してください。

  2. (任意): [プロンプト ] フィールドで、選択したプロンプトのテキストを変更します。

    注:
    プロンプトの詳細を変更して、結果を改善してください。
  3. 「生成」 をクリックします。

  4. 生成されたコードを確認し、 「次へ」 をクリックします。

以下の画像は、生成された bash および Ansible スクリプトを示しています:

図 1. 生成された bash スクリプト
生成された bash スクリプト
図 2. 生成された Ansible スクリプト
生成された Ansible スクリプト

スクリプトアクションの作成

スクリプトアクションを作成するには、以下の手順を実行してください:

  1. 「ステップ 3: アクションを作成するか、外部ソースにエクスポートする」ページで、「アクションを作成する」オプションを選択します。
  2. 名前説明タグを入力してください。
  3. (任意):スクリプトの内容を変更してから、カタログに保存してください。
  4. 「アクションを作成」 をクリックします。 そのアクションはアクションカタログに保存されます。
注:
注:スクリプトの保存方法には、以下のオプションがあります。Bashスクリプトの場合:スクリプトをカタログに保存する。外部ソース( GitHub または GitLab )にエクスポートする。 Ansible スクリプトの場合:外部ソース( GitHub または GitLab )にエクスポートする

次の画像は、スクリプトアクションの作成方法を示しています:

アクション作成

スクリプトを外部ソースにエクスポートする

生成されたスクリプトを、 GitHub リポジトリまたは GitLab プロジェクトにエクスポートできます。

  1. 「ステップ 3: アクションを作成するか、外部へエクスポートする」ページで、「 GitHub にエクスポート」 または 「 GitLab にエクスポート」 を選択します。
  2. action github 」または「 action gitlab 」センサーが有効になっているターゲットエージェントを選択してください。
  3. リポジトリブランチコミットメッセージターゲットブランチ、およびファイルパスを入力してください。
  4. (任意):スクリプトをエクスポートする前に内容を変更してください。
  5. 「エクスポート」 をクリックします。 スクリプトがエクスポートされ、新しいプルリクエストが作成されます。
  6. (任意):プルリクエストが承認され、マージされたら、エクスポートされたファイル「 URL 」を使用して、アクションカタログにアクションスクリプトを作成できます。

次の画像は、スクリプトを GitHub リポジトリにエクスポートする方法を示しています: スクリプトを GitHub リポジトリにエクスポートする