xEvolve-Dokumentation

Agent installieren

Der Agent läuft auf Ihrer Seite, neben dem Dateiserver. Er verbindet sich per HTTPS zurück zu Ihrem Workspace und erledigt die SFTP-, FTP-, FTPS-, SMB- und NFS-Arbeit.

Den Agent anlegen

  1. Öffnen Sie „Agents“ und legen Sie einen Agent an. Die Bereitstellungsanleitung öffnet sich mit Agent-ID und Agent-Geheimnis.
  2. Kopieren Sie das Geheimnis jetzt. Es wird nur einmal angezeigt; eine später erneut geöffnete Anleitung zeigt <agent-secret>.
  3. Legen Sie die öffentliche HTTPS-Adresse fest, unter der xEvolve den Agent erreicht. Sie tragen sie als XEVOLVE_AGENT_URL ein.

Einstellungen

VariableWert
AGENT_SECRETDas Agent-Geheimnis aus der Anleitung.
XEVOLVE_API_URLDie Adresse Ihres Workspace, zum Beispiel https://<workspace>.xevolve.io. Verwenden Sie nicht api.xevolve.io: Dort gibt es keinen Workspace und die Antwort lautet workspace_not_ready.
XEVOLVE_API_TOKENNoch einmal das Agent-Geheimnis.
XEVOLVE_AGENT_IDDie Agent-ID aus der Anleitung.
XEVOLVE_AGENT_URLDie öffentliche URL, unter der xEvolve den Agent erreicht.
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)

Vorausgesetzt werden eine VPC, ein Subnetz und ein ECS-Cluster namens 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}"

Die Datei 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"]
}

Prüfen, ob es funktioniert

  1. Öffnen Sie „Agents“ und wählen Sie auf der Agent-Karte „Agent testen“. Das prüft, ob xEvolve die Agent-Adresse erreicht.
  2. Warten Sie eine Minute. Der Agent sendet alle 60 Sekunden einen Heartbeat, und die Karte zeigt, wann er zuletzt gesehen wurde.
  3. Legen Sie eine SFTP-, FTP-, FTPS-, SMB- oder NFS-Verbindung an oder bearbeiten Sie sie, wählen Sie diesen Agent und testen Sie die Verbindung.

„Agent testen“ prüft das Agent-Geheimnis nicht. Ein falsches Geheimnis zeigt sich an einem fehlenden Heartbeat.