Documentation xEvolve

Installer un agent

L'agent s'exécute de votre côté, à côté du serveur de fichiers. Il se reconnecte à votre espace en HTTPS et effectue le travail SFTP, FTP, FTPS, SMB et NFS.

Créer l'agent

  1. Ouvrez Agents et créez un agent. Le guide de déploiement s'ouvre avec l'ID de l'agent et son secret.
  2. Copiez le secret maintenant. Il n'est affiché qu'une fois ; un guide rouvert plus tard affiche <agent-secret>.
  3. Décidez de l'adresse HTTPS publique à laquelle xEvolve peut joindre l'agent. Vous la saisissez comme XEVOLVE_AGENT_URL.

Paramètres

VariableValeur
AGENT_SECRETLe secret de l'agent indiqué dans le guide.
XEVOLVE_API_URLL'adresse de votre espace, par exemple https://<workspace>.xevolve.io. N'utilisez pas api.xevolve.io : il n'a pas d'espace et répond workspace_not_ready.
XEVOLVE_API_TOKENLe secret de l'agent, à nouveau.
XEVOLVE_AGENT_IDL'ID de l'agent indiqué dans le guide.
XEVOLVE_AGENT_URLL'URL publique à laquelle xEvolve joint l'agent.
PORT3100

Docker

docker run -d --name xevolve-agent \
  -p 3100:3100 \
  -e AGENT_SECRET=<agent-secret> \
  -e XEVOLVE_API_URL=https://<workspace>.xevolve.io \
  -e XEVOLVE_API_TOKEN=<agent-secret> \
  -e XEVOLVE_AGENT_ID=<agent-id> \
  -e XEVOLVE_AGENT_URL=https://your-agent-url.example.com \
  --restart unless-stopped \
  ghcr.io/spot-techno/xevolve-agent:latest

Azure Web App for Containers

az group create -n xevolve-agent-rg -l westeurope
az appservice plan create -n xevolve-agent-plan -g xevolve-agent-rg \
  --is-linux --sku B1

az webapp create -n xevolve-agent -g xevolve-agent-rg \
  -p xevolve-agent-plan \
  -i ghcr.io/spot-techno/xevolve-agent:latest

az webapp config appsettings set -n xevolve-agent -g xevolve-agent-rg \
  --settings \
  AGENT_SECRET=<agent-secret> \
  XEVOLVE_API_URL=https://<workspace>.xevolve.io \
  XEVOLVE_API_TOKEN=<agent-secret> \
  XEVOLVE_AGENT_ID=<agent-id> \
  XEVOLVE_AGENT_URL=https://xevolve-agent.azurewebsites.net \
  WEBSITES_PORT=3100

AWS ECS (Fargate)

Cela suppose qu'un VPC, un sous-réseau et un cluster ECS nommé xevolve existent déjà.

aws ecs register-task-definition --cli-input-json file://task-def.json
aws ecs create-service \
  --cluster xevolve \
  --service-name xevolve-agent \
  --task-definition xevolve-agent \
  --desired-count 1 \
  --launch-type FARGATE \
  --network-configuration "awsvpcConfiguration={subnets=[<subnet-id>],securityGroups=[<security-group-id>],assignPublicIp=ENABLED}"

Le fichier task-def.json :

{
  "family": "xevolve-agent",
  "containerDefinitions": [{
    "name": "agent",
    "image": "ghcr.io/spot-techno/xevolve-agent:latest",
    "portMappings": [{"containerPort": 3100}],
    "environment": [
      {"name": "AGENT_SECRET", "value": "<agent-secret>"},
      {"name": "XEVOLVE_API_URL", "value": "https://<workspace>.xevolve.io"},
      {"name": "XEVOLVE_API_TOKEN", "value": "<agent-secret>"},
      {"name": "XEVOLVE_AGENT_ID", "value": "<agent-id>"},
      {"name": "XEVOLVE_AGENT_URL", "value": "https://your-agent-url.example.com"}
    ]
  }],
  "cpu": "256", "memory": "512",
  "networkMode": "awsvpc",
  "requiresCompatibilities": ["FARGATE"]
}

Vérifier que cela fonctionne

  1. Ouvrez Agents et choisissez Tester l'agent sur la carte de l'agent. Cela vérifie que xEvolve joint l'adresse de l'agent.
  2. Attendez une minute. L'agent envoie un signal de présence toutes les 60 secondes et la carte indique quand il a été vu pour la dernière fois.
  3. Ajoutez ou modifiez une connexion SFTP, FTP, FTPS, SMB ou NFS, sélectionnez cet agent et testez la connexion.

Tester l'agent ne vérifie pas le secret de l'agent. Un mauvais secret se manifeste par l'absence de signal de présence.