Repolode
microsoft

microsoft/AIOpsLab

フォールトインジェクションに対応したシミュレーション用マイクロサービスクラウド環境で、自律型AIOpsエージェントの設計、開発、評価を行うPythonフレームワーク。

スター
1,027
フォーク
180
未解決の Issue
37
最終コミット
21 時間前

これは何?

AIOpsLabは、クラウドサービスの障害検出、特定、分析、緩和といったIT運用タスクを担うエージェントを構築し、ベンチマークするためのフレームワークです。Kubernetesクラスターへのマイクロサービスアプリケーションのデプロイ、障害の注入、ワークロードの生成、テレメトリデータの出力ができるほか、これらのコンポーネントをオーケストレーションし、エージェントがシステムとやり取りするためのインターフェースを提供します。

検出、特定、分析、緩和の各タスクを扱う問題を収録したベンチマークスイートが組み込まれており、問題レジストリには新しいアプリケーション、障害、評価器を追加できます。エージェントはasync get_actionメソッドを持つPythonクラスでラップしてオーケストレーターに登録します。オーケストレーターは各セッションを記録し、結果を保存します。

セットアップ先はKubernetesクラスターで、ローカルのkindクラスター、Ansibleで構成したリモートクラスター、またはTerraformでプロビジョニングしたAzure VMを利用できます。CLIを使えば人間がエージェントとして操作でき、サービスモードではエージェントをリモートで実行できます。

主な機能

  • 01Helmまたはkubectlを使って、Kubernetesクラスターにマイクロサービスアプリケーションをデプロイします。
  • 02組み込みのインジェクターとwrk2ベースの負荷生成を使って、障害を注入しワークロードを生成します。
  • 03検出、特定、分析、緩和の問題を扱うベンチマークスイートを提供します。
  • 04シンプルなasync get_actionインターフェースと共通のオーケストレーターを通じて、エージェントを接続できます。
  • 05エージェントのセッションと評価結果を記録し、後から分析できるようにします。

ユースケース

  • 現実的なマイクロサービス環境で、インシデントの検出と緩和に関するLLMベースのエージェントをベンチマークする。
  • 本番環境に近いクラスターで実行する前に、AIOpsエージェントを開発・テストする。
  • 独自のアプリケーション、障害、評価指標を追加し、再現可能な社内ベンチマークを構築する。

クイックスタート

  1. 1

    Python 3.11をインストールする

    sudo apt install python3.11 python3.11-venv python3.11-dev -y
  2. 2

    READMEに記載されている公式インストーラーを使ってPoetryをインストールする

  3. 3

    サブモジュールを含めてリポジトリをクローンする(プレースホルダーをリポジトリのURLに置き換える)

    git clone --recurse-submodules <CLONE_PATH_TO_THE_REPO>
  4. 4

    リポジトリのルートからpipを使って、プロジェクトを編集可能モードでインストールする

    pip install -e .

使う前に知っておきたいこと

  • ローカルのkindクラスターやリモートクラスターなどのKubernetesクラスターと、Helmが必要です。
  • 一部のフォールトインジェクターはローカルマシン上でDockerを必要とします。また、すべての機能を利用するにはコントローラーVM上で実行する必要があります。

収録されている特集

トピック

よくある質問

AIOpsLab とは?
フォールトインジェクションに対応したシミュレーション用マイクロサービスクラウド環境で、自律型AIOpsエージェントの設計、開発、評価を行うPythonフレームワーク。 AIOpsLabは、クラウドサービスの障害検出、特定、分析、緩和といったIT運用タスクを担うエージェントを構築し、ベンチマークするためのフレームワークです。Kubernetesクラスターへのマイクロサービスアプリケーションのデプロイ、障害の注入、ワークロードの生成、テレメトリデータの出力ができるほか、これらのコンポーネントをオーケストレーションし、エージェントがシステムとやり取りするためのインターフェースを提供します。
AIOpsLab は無料で使えますか?ライセンスは?
AIOpsLab は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
AIOpsLab は今もメンテナンスされていますか?
活発にメンテナンス中。AIOpsLab の最終コミットは 2026年11月6日 です。
AIOpsLab は何に使えますか?
現実的なマイクロサービス環境で、インシデントの検出と緩和に関するLLMベースのエージェントをベンチマークする。 本番環境に近いクラスターで実行する前に、AIOpsエージェントを開発・テストする。 独自のアプリケーション、障害、評価指標を追加し、再現可能な社内ベンチマークを構築する。
AIOpsLab のインストール方法は?
Python 3.11をインストールする: sudo apt install python3.11 python3.11-venv python3.11-dev -y READMEに記載されている公式インストーラーを使ってPoetryをインストールする サブモジュールを含めてリポジトリをクローンする(プレースホルダーをリポジトリのURLに置き換える): git clone --recurse-submodules <CLONE_PATH_TO_THE_REPO> リポジトリのルートからpipを使って、プロジェクトを編集可能モードでインストールする: pip install -e .
AIOpsLab はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/microsoft/AIOpsLab

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト

稼働中のJavaアプリケーションを再起動せず、非侵襲的なランタイムAOPを追加できるJVMサンドボックスコンテナ。

DevOps・クラウド#java#jvm#aop
6953+2 今週1586JavaLGPL-3.0更新 2 か月前