Passer au contenu principal
AgentEye est une plateforme d’observabilité et d’évaluation auto-hébergée pour les agents IA et LLM. Elle capture les sessions d’agents, les appels d’outils, les requêtes aux modèles et les erreurs, les transforme en analyses et évaluations interrogeables, et présente les résultats dans un tableau de bord avec un assistant IA optionnel en lecture seule. Dans le modèle de déploiement géré, vous fournissez un cluster Kubernetes dédié et Exosphere exécute l’ensemble de la plateforme en son sein : déploiement, configuration, exploitation, sauvegarde et mise à jour de chaque composant en votre nom. Votre équipe bénéficie de toute la valeur de la plateforme (visibilité sur les agents, analyses, évaluation et assistant optionnel) sans avoir à gérer des bases de données, des certificats ou des mises à jour. Toutes les données restent dans votre compte cloud.

Prérequis

  • Un GitHub PAT pour récupérer les images de conteneurs et télécharger les artefacts (voir enterprise-docs/github-token.md)
  • Un cluster Kubernetes dédié (voir les exigences ci-dessous)
  • Un bucket de stockage pour les sauvegardes de bases de données
  • Connectivité réseau : port 443 entrant vers le load balancer du cluster

Étape 1 : Provisionner un cluster Kubernetes dédié

Créez un cluster Kubernetes dédié à AgentEye. Il ne doit pas être partagé avec d’autres charges de travail, afin que l’ensemble de la plateforme (services applicatifs, bases de données, analyses et cache) s’exécute de manière isolée sans impacter votre infrastructure existante.
ExigenceDétails
DistributionTout Kubernetes conforme : EKS, GKE, AKS ou autogéré
Version1.27 ou ultérieure
Pool de nœudsMinimum : 3 nœuds, 4 vCPU / 8 Go de RAM chacun (instances standard à usage général)
StockageUne StorageClass par défaut qui provisionne des volumes bloc (ex. gp3 sur AWS, pd-ssd sur GCP)
Load BalancerLe cluster doit être capable de provisionner des services LoadBalancer cloud (par défaut sur EKS, GKE, AKS)
Exosphere installe et gère tout le reste à l’intérieur du cluster : contrôleurs d’ingress, certificats TLS, bases de données, cache, supervision et tous les déploiements applicatifs.

Étape 2 : Accorder l’accès à l’équipe AgentEye

Exosphere a besoin d’un accès cluster-admin (ou d’un RBAC étendu équivalent) pour gérer les namespaces, les définitions de ressources personnalisées, les contrôleurs d’ingress et les provisionneurs de stockage.
ExigenceDétails
Méthode d’accèsRôle IAM (recommandé pour EKS/GKE), kubeconfig ou accès SSO
VPN / bastionSi le serveur API Kubernetes est privé, fournissez des identifiants VPN ou un accès bastion à l’équipe opérationnelle Exosphere

Étape 3 : Configurer la connectivité réseau

Votre équipe réseau doit autoriser le trafic entrant sur le port 443 vers les load balancers du cluster. Le déploiement utilise deux load balancers distincts : un pour l’ingestion d’événements (protégé par mTLS) et un pour le tableau de bord :
TraficSourceDestinationSécurité
Ingestion d’événementsPods collecteurs dans vos clustersLoad Balancer d’ingestion, port 443mTLS (certificat client) + clé API
Tableau de bordNavigateurs des développeursLoad Balancer du tableau de bord, port 443HTTPS sur votre domaine, connexion OTP par email sans mot de passe
Le point de terminaison d’ingestion est protégé par TLS mutuel ; les collecteurs doivent présenter un certificat client valide et une clé API valide à chaque requête. Le tableau de bord fonctionne sur son propre load balancer et son propre nom d’hôte, avec la connexion restreinte aux adresses e-mail/domaines que vous avez autorisés. Enregistrements DNS (opération unique) : vous créez deux enregistrements CNAME sous un domaine que vous contrôlez — un pour le point de terminaison d’ingestion et un pour le tableau de bord (ex. agenteye.votre-entreprise.example) — pointant vers les noms d’hôtes des load balancers fournis par Exosphere. Exosphere provisionne ensuite automatiquement des certificats TLS publiquement fiables pour les deux noms d’hôtes, y compris les renouvellements.
Note sur le port 80 : l’émission et le renouvellement automatiques des certificats s’effectuent via HTTP sur le port 80 de chaque load balancer. Si votre politique de sécurité exige de restreindre le load balancer du tableau de bord à des plages d’IP d’entreprise, informez-en Exosphere au préalable — nous basculons la validation des certificats vers une méthode basée sur DNS (un enregistrement DNS supplémentaire de votre côté) afin que les renouvellements continuent de fonctionner derrière la restriction.
Sortant : les nœuds du cluster ont besoin d’un accès internet pour récupérer les images de conteneurs depuis ghcr.io. Si votre réseau restreint le trafic sortant, autorisez ghcr.io ou mirrorez les images vers votre registre interne.

Étape 4 : Fournir un bucket de stockage pour les sauvegardes

Les sauvegardes des bases de données sont stockées dans un bucket de stockage cloud qui vous appartient.
ExigenceDétails
ServiceS3 (AWS), GCS (GCP) ou Azure Blob Storage
AccèsAccordez un accès en écriture aux nœuds du cluster via un rôle IAM pour les comptes de service (IRSA sur EKS, Workload Identity sur GKE) ou fournissez des identifiants
RétentionVous contrôlez la politique de cycle de vie du bucket (durée de rétention, règles d’archivage). Exosphere écrit les sauvegardes ; vous décidez de leur durée de conservation
Une sauvegarde quotidienne unique exporte à la fois PostgreSQL (état relationnel) et ClickHouse (événements et évaluations) dans une archive compressée qui est chargée dans votre bucket. Des sauvegardes sont également effectuées avant chaque mise à jour.

Étape 5 : Désigner un point de contact

Désignez une personne ou un canal Slack/Teams de votre côté pour les problèmes au niveau du cluster : santé des nœuds, limites du compte cloud, changements réseau. Les opérations quotidiennes n’impliquent pas ce contact.

Ce que nous déployons

Une fois qu’Exosphere a accès au cluster, les composants suivants sont déployés et gérés pour vous :
ComposantRôle
AgentEye ServerAPI HTTP qui reçoit les événements des collecteurs, exécute les analyses et sert les données au tableau de bord
Tableau de bordInterface web pour visualiser les sessions d’agents, les appels d’outils, les requêtes aux modèles et les erreurs ; héberge l’assistant IA optionnel en lecture seule
ClickHouseMagasin canonique requis pour les événements ingérés, les analyses et les évaluations
PostgreSQLMagasin relationnel pour les organisations, les clés API, les utilisateurs, les tableaux de bord et les requêtes sauvegardées
RedisCache partagé optionnel et backend de limitation de débit ; la plateforme se dégrade de manière gracieuse en cas d’indisponibilité
Assistant IA (optionnel)Conteneur d’assistant interne en lecture seule ; reste désactivé jusqu’à la configuration d’un point de terminaison LLM
Contrôleurs d’ingressDeux load balancers (un pour l’ingestion protégée par mTLS, un pour le tableau de bord) terminant TLS avec des certificats publiquement fiables et renouvelés automatiquement, et appliquant le mTLS sur le point de terminaison d’ingestion
cert-managerAutomatise le provisionnement des certificats TLS et l’émission des certificats client mTLS
Supervision des certificatsUne tâche planifiée vérifie l’expiration des certificats et envoie des alertes (ex. vers Slack) à l’approche du renouvellement
L’offre gérée exploite également le pipeline d’évaluation de la plateforme, qui note l’activité des agents par rapport à vos critères d’évaluation. Consultez enterprise-docs/assistant.md et enterprise-docs/evaluation-suite.md pour découvrir ce que ces fonctionnalités apportent.

Ce que nous vous fournissons

Une fois le déploiement terminé, vous recevez :
ÉlémentDétails
URL du tableau de bordUn nom d’hôte sous votre domaine (ex. https://agenteye.votre-entreprise.example), servi avec un certificat TLS publiquement fiable et renouvelé automatiquement. Vous créez un CNAME vers le nom d’hôte du load balancer que nous fournissons ; la connexion est sans mot de passe via OTP par email
Point de terminaison du collecteurLe chemin /events du nom d’hôte d’ingestion (ex. https://ingest.votre-entreprise.example/events), protégé par mTLS
Bundle de certificat clientPar cluster : certificat client, clé privée et certificat CA livrés sous forme de manifest Kubernetes Secret. À appliquer une fois par cluster
GitHub PATPour télécharger les binaires du collecteur et les packages du SDK Python
Clés API du collecteurClés à portée limitée avec la permission events:add, une par déploiement de collecteur
Guides d’installationDocumentation pas à pas pour le collecteur et le SDK Python

Ce que vous faites après la mise en place

Votre seul travail continu concerne vos propres machines d’agents, et non le cluster AgentEye :
  1. Installez le collecteur dans chaque cluster Kubernetes exécutant des agents IA : montez le certificat client et configurez l’URL du point de terminaison et la clé API. Voir enterprise-docs/collector-installation.md.
  2. Intégrez le SDK Python dans votre code d’agent. Voir enterprise-docs/python-sdk.md.
  3. Ouvrez le tableau de bord dans votre navigateur pour visualiser l’activité des agents.
Aucune opération de cluster, aucune gestion de base de données, aucun renouvellement de certificat, aucune mise à jour.

Sécurité

  • Les données restent dans votre compte cloud. Le cluster, le stockage et les bases de données s’exécutent tous dans votre environnement. Aucune donnée ne quitte votre périmètre.
  • Vous contrôlez l’accès. Le cluster est dans votre compte. Vous pouvez auditer, surveiller ou révoquer l’accès d’Exosphere à tout moment. Toutes les opérations passent par le journal d’audit de votre cloud (CloudTrail, GCP Audit Logs, etc.).
  • mTLS sur l’ingestion d’événements. Chaque requête de collecteur nécessite à la fois un certificat client valide et une clé API. Une clé divulguée est inutilisable sans le certificat ; un certificat volé est inutilisable sans une clé valide.
  • Contrôle d’accès au tableau de bord. Le tableau de bord fonctionne sur son propre load balancer, distinct de l’ingestion d’événements, et la connexion est sans mot de passe via OTP par email, restreinte aux adresses e-mail/domaines que vous autorisez. Une liste d’autorisation de plages d’IP sources sur le load balancer est disponible sur demande ; comme le renouvellement automatique des certificats doit atteindre le load balancer, Exosphere associe la restriction à une validation de certificat basée sur DNS afin que les renouvellements continuent de fonctionner.
  • Certificats par cluster. Chacun de vos clusters reçoit son propre certificat client. Si un cluster est compromis, ce certificat est révoqué indépendamment sans affecter les autres.

Calendrier de déploiement

PhaseDuréeVotre implication
Provisionnement du cluster1-2 joursProvisionner le cluster et accorder l’accès à Exosphere
Mise en place de la plateforme1 jourAucune ; Exosphere installe tous les composants d’infrastructure
Déploiement de l’application1 jourAucune ; Exosphere déploie le serveur, le tableau de bord et crée les clés API
Déploiement des collecteurs1-3 joursInstaller les collecteurs dans vos clusters (avec l’accompagnement d’Exosphere)
Rodage en production1 semaineAucune ; Exosphere surveille et ajuste
Durée totale typique : ~2 semaines du lancement au passage en production.

Support

Pour toute question ou problème, contactez Exosphere à l’adresse support@exosphere.host.

Prochaines étapes