本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Deadline Cloud 中向你的开发者群添加服务管理队列
AWS CloudShell 无法提供足够的计算容量来测试更大的工作负载。它也未配置为处理在多个工作主机上分配任务的作业。
您可以将 A CloudShell uto Scaling 服务托管队列 (SMF) 添加到您的开发者群中,而不必使用。SMF 为较大的工作负载提供了足够的计算容量,并且可以处理需要在多个工作主机上分配作业任务的作业。
在添加 SMF 之前,必须设置 Deadline Cloud 场、队列和队列。请参阅创建截止日期云场。
将服务托管队列添加到您的开发者群中
-
选择您的第一个 AWS CloudShell 选项卡,然后创建服务管理的队列并将其队列 ID 添加到。
.bashrc
此操作使其可用于其他终端会话。FLEET_ROLE_ARN="arn:aws:iam::$(aws sts get-caller-identity \ --query "Account" --output text):role/${DEV_FARM_NAME}FleetRole" aws deadline create-fleet \ --farm-id $DEV_FARM_ID \ --display-name "$DEV_FARM_NAME SMF" \ --role-arn $FLEET_ROLE_ARN \ --max-worker-count 5 \ --configuration \ '{ "serviceManagedEc2": { "instanceCapabilities": { "vCpuCount": { "min": 2, "max": 4 }, "memoryMiB": { "min": 512 }, "osFamily": "linux", "cpuArchitectureType": "x86_64" }, "instanceMarketOptions": { "type": "spot" } } }' echo "DEV_SMF_ID=$(aws deadline list-fleets \ --farm-id $DEV_FARM_ID \ --query "fleets[?displayName=='$DEV_FARM_NAME SMF'].fleetId \ | [0]" --output text)" >> ~/.bashrc source ~/.bashrc
-
将 SMF 与您的队列关联。
aws deadline create-queue-fleet-association \ --farm-id $DEV_FARM_ID \ --queue-id $DEV_QUEUE_ID \ --fleet-id $DEV_SMF_ID
-
提交 simple_file_job 进入队列。当系统提示您确认上传时,请输入
y
。deadline bundle submit simple_file_job \ -p InFile=simple_job/template.yaml \ -p OutFile=hash-jobattachments.txt
-
确认 SMF 工作正常。
deadline fleet get
-
工作人员可能需要几分钟才能开始。重复该
deadline fleet get
命令,直到您可以看到舰队正在运行。 -
queueFleetAssociationsStatus
用于服务管理的舰队将是。ACTIVE
-
SMF
autoScalingStatus
将从变GROWING
为。STEADY
您的状态将类似于以下内容:
fleetId: fleet-2cc78e0dd3f04d1db427e7dc1d51ea44 farmId: farm-63ee8d77cdab4a578b685be8c5561c4a displayName: DeveloperFarm SMF description: '' status: ACTIVE autoScalingStatus: STEADY targetWorkerCount: 0 workerCount: 0 minWorkerCount: 0 maxWorkerCount: 5
-
-
查看您提交的作业的日志。此日志存储在 Amazon Logs 的 CloudWatch 日志中,而不是 CloudShell 文件系统中。
JOB_ID=$(deadline config get defaults.job_id) SESSION_ID=$(aws deadline list-sessions \ --farm-id $DEV_FARM_ID \ --queue-id $DEV_QUEUE_ID \ --job-id $JOB_ID \ --query "sessions[0].sessionId" \ --output text) aws logs tail /aws/deadline/$DEV_FARM_ID/$DEV_QUEUE_ID \ --log-stream-names $SESSION_ID
后续步骤
创建并测试服务托管队列后,应删除创建的资源,以避免不必要的费用。
-
在 Deadline Cloud 中清理农场资源关闭您在本教程中使用的资源。