xEvolve-documentatie

Een agent installeren

De agent draait aan uw kant, naast de bestandsserver. Hij verbindt via HTTPS terug met uw werkruimte en doet het SFTP-, FTP-, FTPS-, SMB- en NFS-werk.

De agent maken

  1. Open Agents en maak een agent. De implementatiegids opent met de agent-ID en het geheim.
  2. Kopieer het geheim nu. Het wordt maar één keer getoond; een later heropende gids toont <agent-secret>.
  3. Bepaal het openbare HTTPS-adres waarop xEvolve de agent kan bereiken. U voert dit in als XEVOLVE_AGENT_URL.

Instellingen

VariabeleWaarde
AGENT_SECRETHet agentgeheim uit de gids.
XEVOLVE_API_URLHet adres van uw werkruimte, bijvoorbeeld https://<workspace>.xevolve.io. Gebruik niet api.xevolve.io: dat heeft geen werkruimte en antwoordt workspace_not_ready.
XEVOLVE_API_TOKENHet agentgeheim, nogmaals.
XEVOLVE_AGENT_IDDe agent-ID uit de gids.
XEVOLVE_AGENT_URLDe openbare URL waarop xEvolve de agent bereikt.
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)

Hierbij wordt uitgegaan van een bestaande VPC, subnet en ECS-cluster met de naam xevolve.

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}"

Het bestand 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"]
}

Controleren of het werkt

  1. Open Agents en kies Agent testen op de agentkaart. Dit controleert of xEvolve het adres van de agent bereikt.
  2. Wacht een minuut. De agent stuurt elke 60 seconden een hartslag en de kaart toont wanneer hij voor het laatst is gezien.
  3. Voeg een SFTP-, FTP-, FTPS-, SMB- of NFS-verbinding toe of bewerk die, selecteer deze agent en test de verbinding.

Agent testen controleert het agentgeheim niet. Een verkeerd geheim blijkt uit het uitblijven van een hartslag.