|
Microsoft、カリフォルニア大学バークレー校、イリノイ大学などの研究機関の研究者が共同で、クラウドの運用と保守の自動化のために特別に設計された AI エージェントである AIOpsLab をオープンソース化しました。 AIOpsLabは、実際のクラウドサービス環境における複雑な運用タスクをシミュレートし、障害の自動検出、特定、解決を可能にします。また、高い可観測性を備え、重要なテレメトリデータを収集・分析することで、システムの状態とアプリケーション環境に関する深い洞察を提供します。 人間、デジタル、AI エージェントのさまざまな種類のコラボレーション モードをサポートし、モジュール設計により、新しいアプリケーション、ワークロード、障害シナリオに簡単に拡張できます。 オープンソース アドレス: https://github.com/microsoft/AIOpsLab/?tab=readme-ov-file AIOpsLab のアーキテクチャは、コーディネーター、サービス、ワークロード ジェネレーター、障害ジェネレーター、および可観測性の 5 つの主要な部分で構成されます。 コーディネーターの主なタスクは、エージェントとのセッションを確立し、ベンチマーク問題に関する情報(問題の説明、応答形式のガイドライン、エージェントが呼び出すことができるAPIなど)を共有することです。これらのAPIは、ログの取得、メトリックの取得、シェルコマンドの実行など、エージェントがタスクを解決するのに役立つように設計された、文書化されたツールのセットです。 コーディネーターはエージェントの実装に制限を設けず、エージェントに質問を投げかけ、ポーリングを行い、前回の結果に基づいて次に実行するアクションを決定します。各アクションは有効なAPI呼び出しである必要があり、コーディネーターが検証して実行します。 さらに、コーディネーターはデプロイメントへの特権アクセスを持ち、エージェントが直面する問題を解決するために、スケーリングや再デプロイメントなどの任意のアクションをエージェントに代わって実行できます。さらに、コーディネーターはワークロードと障害ジェネレーターを起動してサービス中断を発生させる役割も担います。これらの中断はリアルタイムベンチマーク問題として機能し、エージェントに実用的な動作環境を提供します。 サービスモジュールは、AIOpsLabがマイクロサービス、サーバーレスサービス、モノリシックサービスなど、様々なクラウドサービス環境に適応できるよう支援します。AIOpsLabはオープンソースアプリケーションスイート「DeathStarBench」を活用し、ソースコード、コミット履歴、ランタイムテレメトリを提供することで、研究者が制御された環境で本番環境のイベントを再現・研究することを可能にします。ブループリントなどのツールを追加することで、AIOpsLabは他の学術サービスや本番環境サービスにも拡張でき、これらのサービスの新たなバリエーションをシームレスに展開できます。 ワークロードジェネレーターはAIOpsLabにおいて重要な役割を果たし、主に正常シナリオと障害シナリオのシミュレーションを作成し、様々な条件下でのエージェントのパフォーマンスをテストします。ワークロードジェネレーターは、コーディネーターの仕様(タスク、期待される効果、サイズ、期間など)に従ってタスクを受け取り、実際の本番環境のトレースでトレーニングされたモデルを使用して、これらの仕様に準拠したワークロードを生成します。 障害シナリオでは、ワークロードジェネレーターは、リソース枯渇、エッジケース、連鎖障害のトリガーといった状況を、現実世界のイベントに着想を得た上でシミュレートできます。通常シナリオでは、日常的なアクティビティサイクルや複数ユーザーのインタラクションといった、典型的な本番環境のパターンを模倣します。 サービス呼び出し、ユーザーの分散、到着時間などのさまざまな特性が望ましい効果につながる可能性がある場合は、コーディネータが使用できるように複数のワークロードを問題キャッシュに保存できます。 フォールトジェネレーターはAIOpsLabの革新的な機能であり、主に様々な一般的なクラウドシナリオで使用されます。きめ細かなフォールトインジェクション機能を備えており、本番環境のイベントに由来する複雑な障害のプロセス全体をシミュレートできます。また、フォールトインジェクターは様々なシステムレベルで障害を注入できるため、セマンティック整合性を維持しながら根本原因を明らかにし、クラウドマイクロサービス間の相互依存性を考慮することで、ユーザーはAIOpsの機能を包括的にテストおよび評価できます。 可観測性は、Jaeger トレース、Filebeat および Logstash でフォーマットされたアプリケーションログ、Prometheus で監視されるシステムメトリクスなど、AIOpsLab の包括的な監視機能を強化します。AIOpsLab は、システムコールログやクラスター情報といった低レベルのシステム情報も取得します。潜在的なデータ過負荷に対処するため、AIOpsLab ではユーザーが API を介して必要な情報を選択できるようにすることで、カスタマイズ可能かつ包括的な可観測性を実現します。 |