前提条件
- コンテナイメージのプルおよびアーティファクトのダウンロードに使用するGitHub PAT(詳細はenterprise-docs/github-token.mdを参照)
- 専用Kubernetesクラスター(下記の要件を参照)
- データベースバックアップ用のストレージバケット
- ネットワーク接続: クラスターのロードバランサーへのポート443のインバウンドアクセス
ステップ1: 専用Kubernetesクラスターのプロビジョニング
AgentEye専用のKubernetesクラスターを作成します。他のワークロードと共有しないようにすることで、プラットフォーム全体(アプリケーションサービス、データベース、分析、キャッシュ)が分離された環境で動作し、既存のインフラに影響を与えません。| 要件 | 詳細 |
|---|---|
| ディストリビューション | 準拠した任意のKubernetes: EKS、GKE、AKS、またはセルフマネージド |
| バージョン | 1.27以降 |
| ノードプール | 最小構成: 3ノード、各4 vCPU / 8 GB RAM(標準汎用インスタンス) |
| ストレージ | ブロックボリュームをプロビジョニングするデフォルトのStorageClass(例: AWSのgp3、GCPのpd-ssd) |
| ロードバランサー | クラウドのLoadBalancerサービスをプロビジョニングできること(EKS、GKE、AKSではデフォルトで対応) |
Exosphereは、クラスター内のその他すべてのコンポーネント(イングレスコントローラー、TLS証明書、データベース、キャッシュ、モニタリング、すべてのアプリケーションデプロイ)をインストールおよび管理します。
ステップ2: AgentEyeチームへのアクセス権の付与
Exosphereは、名前空間、カスタムリソース定義、イングレスコントローラー、ストレージプロビジョナーを管理するために、cluster-admin権限(またはそれに相当する広範なRBAC)が必要です。| 要件 | 詳細 |
|---|---|
| アクセス方法 | IAMロール(EKS/GKEでは推奨)、kubeconfig、またはSSOベースのアクセス |
| VPN / 踏み台サーバー | Kubernetes APIサーバーがプライベートの場合、Exosphere運用チーム向けにVPN認証情報または踏み台サーバーへのアクセスを提供してください |
ステップ3: ネットワーク接続の設定
ネットワークチームは、クラスターのロードバランサーへのポート443のインバウンドトラフィックを許可する必要があります。デプロイでは2つの独立したロードバランサーを使用します。1つはイベント取り込み用(mTLS保護)、もう1つはダッシュボード用です。| トラフィック | 送信元 | 宛先 | セキュリティ |
|---|---|---|---|
| イベント取り込み | お客様のクラスター内のCollectorポッド | Ingest LoadBalancer、ポート443 | mTLS(クライアント証明書)+ APIキー |
| ダッシュボード | 開発者のブラウザ | Dashboard LoadBalancer、ポート443 | お客様のドメインでのHTTPS、パスワードレスのメールOTPサインイン |
agenteye.your-company.example)で、Exosphereが提供するロードバランサーのホスト名を指します。その後、Exosphereは両ホスト名に対してパブリックで信頼されたTLS証明書を自動的にプロビジョニングし、更新も自動で行います。
ポート80について: 証明書の自動発行・更新は、各ロードバランサーのポート80へのHTTPアクセスを通じて検証されます。ダッシュボードのロードバランサーを社内IPレンジに制限するセキュリティポリシーがある場合は、事前にExosphereにご連絡ください。証明書の検証をDNSベースの方式(お客様側で1件のDNSレコードを追加)に切り替えることで、制限を設けた後も更新が継続して機能するようにします。
アウトバウンド: クラスターのノードはghcr.ioからコンテナイメージをプルするためにインターネットアクセスが必要です。アウトバウンドトラフィックを制限しているネットワーク環境の場合は、ghcr.ioを許可リストに追加するか、イメージを内部レジストリにミラーリングしてください。
ステップ4: バックアップ用ストレージバケットの準備
データベースバックアップは、お客様が所有するクラウドストレージバケットに保存されます。| 要件 | 詳細 |
|---|---|
| サービス | S3(AWS)、GCS(GCP)、またはAzure Blob Storage |
| アクセス | サービスアカウント向けIAMロール(EKSではIRSA、GKEではWorkload Identity)を通じてクラスターのノードに書き込みアクセス権を付与するか、認証情報を提供してください |
| 保持期間 | バケットのライフサイクルポリシー(保持期間、アーカイブルール)はお客様が管理します。Exosphereはバックアップを書き込み、保持期間はお客様が決定します |
ステップ5: 担当者の指定
クラスターレベルの問題(ノードの健全性、クラウドアカウントの制限、ネットワーク変更)に対応するための担当者またはSlack/Teamsチャンネルを1つ指定してください。日常的な運用ではこの担当者への連絡は発生しません。デプロイされるコンポーネント
Exosphereがクラスターへのアクセス権を取得した後、以下のコンポーネントがデプロイされ、管理されます。| コンポーネント | 役割 |
|---|---|
| AgentEye Server | CollectorからイベントをHTTPで受信し、分析を実行して、ダッシュボードにデータを提供するAPI |
| Dashboard | エージェントセッション、ツール呼び出し、モデルへのリクエスト、エラーを表示するWebインターフェース。オプションの読み取り専用AIアシスタントもホストします |
| ClickHouse | 取り込まれたイベント、分析、評価の正規ストアとして必須 |
| PostgreSQL | 組織、APIキー、ユーザー、ダッシュボード、保存済みクエリのリレーショナルストア |
| Redis | オプションの共有キャッシュおよびレート制限バックエンド。利用不可の場合もプラットフォームはグレースフルデグレードで動作します |
| AIアシスタント(オプション) | 内部の読み取り専用アシスタントコンテナ。LLMエンドポイントが設定されるまで無効状態を維持します |
| イングレスコントローラー | 2つのロードバランサー(mTLS保護の取り込み用と、ダッシュボード用)でTLSを終端し、パブリックで信頼された自動更新証明書を使用。取り込みエンドポイントにmTLSを適用します |
| cert-manager | TLS証明書のプロビジョニングおよびmTLSクライアント証明書の発行を自動化します |
| 証明書モニタリング | スケジュールされたジョブが証明書の有効期限を確認し、更新が近づいた際にアラートを送信します(例: Slack) |
お客様に提供されるもの
デプロイ完了後、以下の情報が提供されます。| 項目 | 詳細 |
|---|---|
| ダッシュボードURL | お客様のドメイン配下のホスト名(例: https://agenteye.your-company.example)。パブリックで信頼された自動更新TLS証明書で提供されます。Exosphereが提供するロードバランサーのホスト名へのCNAMEを1件作成するだけで、サインインはパスワードレスのメールOTPで行います |
| Collectorエンドポイント | 取り込みホスト名の/eventsパス(例: https://ingest.your-company.example/events)、mTLS保護付き |
| クライアント証明書バンドル | クラスターごとに: クライアント証明書、秘密鍵、CA証明書をKubernetes Secretマニフェストとして提供。各クラスターに1回適用します |
| GitHub PAT | CollectorバイナリおよびPython SDKパッケージのダウンロードに使用します |
| Collector APIキー | events:add権限を持つスコープ付きキー。Collectorデプロイごとに1つ発行します |
| インストールガイド | CollectorおよびPython SDKのステップバイステップのドキュメント |
セットアップ後にお客様が行うこと
継続的な作業は、AgentEyeクラスターではなく、お客様自身のエージェントマシン上のみで発生します。- AIエージェントが稼働している各KubernetesクラスターにCollectorをインストールします。クライアント証明書をマウントし、エンドポイントURLとAPIキーを設定します。詳細はenterprise-docs/collector-installation.mdを参照してください。
- エージェントのコードにPython SDKを統合します。詳細はenterprise-docs/python-sdk.mdを参照してください。
- ブラウザでダッシュボードを開き、エージェントのアクティビティを確認します。
セキュリティ
- データはお客様のクラウドアカウント内に保持されます。 クラスター、ストレージ、データベースはすべてお客様の環境で動作します。お客様の境界外にデータが出ることはありません。
- アクセスはお客様が管理します。 クラスターはお客様のアカウント内にあります。Exosphereのアクセスはいつでも監査、モニタリング、または取り消しが可能です。すべての操作はお客様のクラウドの監査ログ(CloudTrail、GCP Audit Logsなど)に記録されます。
- イベント取り込みにmTLSを適用。 すべてのCollectorリクエストには、有効なクライアント証明書とAPIキーの両方が必要です。APIキーが漏洩しても証明書がなければ無効であり、証明書が盗まれても有効なAPIキーがなければ利用できません。
- ダッシュボードのアクセス制御。 ダッシュボードはイベント取り込みとは独立した専用のロードバランサーで動作し、サインインはお客様が許可リストに登録したメールアドレス/ドメインに限定されたパスワードレスのメールOTPです。ロードバランサーへのIPソースレンジ制限はリクエストに応じて対応可能です。証明書の自動更新にはロードバランサーへのアクセスが必要なため、Exosphereは制限とDNSベースの証明書検証を組み合わせて、制限下でも更新が継続して機能するようにします。
- クラスターごとの証明書。 お客様の各クラスターには固有のクライアント証明書が発行されます。あるクラスターが侵害された場合、その証明書のみを個別に失効させることができ、他のクラスターには影響しません。
デプロイのスケジュール
| フェーズ | 期間 | お客様の関与 |
|---|---|---|
| クラスターのプロビジョニング | 1〜2日 | クラスターのプロビジョニングとExosphereへのアクセス権の付与 |
| プラットフォームのセットアップ | 1日 | なし。Exosphereがすべてのインフラコンポーネントをインストール |
| アプリケーションのデプロイ | 1日 | なし。Exosphereがサーバー、ダッシュボードをデプロイし、APIキーを作成 |
| Collectorの展開 | 1〜3日 | お客様のクラスターにCollectorをインストール(Exosphereがガイド) |
| 本番環境バーンイン | 1週間 | なし。Exosphereがモニタリングとチューニングを実施 |
サポート
ご質問や問題がある場合は、support@exosphere.host までExosphereにお問い合わせください。
次のステップ
- はじめに: エンドツーエンドのウォークスルー
- Collectorのインストール: Collectorのインストールと設定
- Python SDK: エージェントコードへの計装
- APIキー: アクセスと権限の管理
- トラブルシューティング: よくある問題と解決策

