エージェントのインストール
エージェントはファイルサーバーの近く、お客様側で動作します。HTTPS でワークスペースに接続し、SFTP、FTP、FTPS、SMB、NFS の処理を行います。
エージェントの作成
- エージェントを開き、エージェントを作成します。デプロイガイドがエージェント ID とシークレットとともに開きます。
- 今すぐシークレットをコピーしてください。表示されるのは一度だけです。後で開き直したガイドには
<agent-secret>と表示されます。 - xEvolve がエージェントに到達できる公開 HTTPS アドレスを決めます。これを
XEVOLVE_AGENT_URLとして入力します。
設定
| 変数 | 値 |
|---|---|
AGENT_SECRET | ガイドに表示されるエージェントのシークレット。 |
XEVOLVE_API_URL | ワークスペースのアドレス。例: https://<workspace>.xevolve.io。api.xevolve.io は使わないでください。ワークスペースがなく、workspace_not_ready を返します。 |
XEVOLVE_API_TOKEN | エージェントのシークレット (再度)。 |
XEVOLVE_AGENT_ID | ガイドに表示されるエージェント ID。 |
XEVOLVE_AGENT_URL | xEvolve がエージェントに到達する公開 URL。 |
PORT | 3100 |
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:latestAzure 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=3100AWS ECS (Fargate)
VPC、サブネット、xevolve という名前の ECS クラスターがすでにあることを前提とします。
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}"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"]
}動作の確認
- エージェントを開き、エージェントのカードでエージェントをテストを選びます。xEvolve がエージェントのアドレスに到達できるかを確認します。
- 1 分待ちます。エージェントは 60 秒ごとにハートビートを送り、カードに最後に確認された時刻が表示されます。
- SFTP、FTP、FTPS、SMB、NFS の接続を追加または編集し、このエージェントを選んで接続をテストします。
エージェントのテストはエージェントのシークレットを検証しません。シークレットが誤っている場合は、ハートビートが届かないことでわかります。