本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在截止日期雲端中將服務受管機群新增至您的開發人員陣列
AWS CloudShell 無法提供足夠的運算容量來測試更大的工作負載。它也不會設定為使用在多個工作者主機上分配任務的任務。
您可以新增 Auto Scaling 服務受管機群 (SMF) 到您的開發人員陣列,而不是使用 CloudShell。SMF 可為較大的工作負載提供足夠的運算容量,並可處理需要將任務分配到多個工作者主機的任務。
在新增 SMF 之前,您必須設定截止日期雲端陣列、佇列和機群。請參閱 建立截止日期雲端陣列。
將服務受管機群新增至您的開發人員陣列
-
選擇您的第一個 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 CloudWatch Logs 的日誌中,而不是 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
後續步驟
在建立和測試服務受管機群之後,您應該移除您建立的資源,以避免不必要的費用。
-
在截止日期雲端中清除您的陣列資源 關閉您用於本教學課程的資源。