View a markdown version of this page

控制成本和並行 - AWS 截止日期雲端

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

控制成本和並行

在傳統轉譯陣列上,固定基礎設施會建立並行和成本的間接限制。共用檔案系統的輸送量限制了工作者存取資料的速度。固定數量的轉譯節點會限制同時執行的任務數量。這些瓶頸會減緩轉譯速度,但也會防止意外支出。

使用 AWS 截止日期雲端,您可以精確直接控制成本和並行。您可以快速擴展以快速完成任務,並使用強制執行硬貨幣上限的預算和限制尖峰並行的機群設定。與傳統陣列不同,您不需要為了成本控制而交易轉譯速度,您可以同時擁有兩者。

使用截止日期雲端,您也可以基於其他原因限制資源用量,例如比對固定數量的軟體授權。下列機制各自在不同的層級運作。您可以合併它們以符合組織的需求。

成本和並行控制的比較

下表摘要說明截止日期雲端中可用的控制項。根據您想要限制的內容,選擇一或多個 。

控制項 Level 它的功能 最適合
機群最大工作者計數 機群 限制可在機群中同時執行的工作者總數,無論佇列任務數量為何。 機群中所有任務的尖峰運算硬性上限。取代固定數量轉譯節點的自然限制。
任務工作者計數上限 任務 限制指派給單一任務的工作者數量。機群中的其他工作者仍然可用於其他任務。 防止單一大型任務耗用整個機群,而較小的任務則等待。
資源限制 陣列或佇列 限制可同時使用共用資源 (例如軟體授權或檔案伺服器) 的任務數量。 將並行與跨任務或佇列共用的限制資源相符。取代檔案系統輸送量或授權計數的自然限制。
具有限制動作的預算 佇列 追蹤佇列的累積花費。當花費達到閾值時,動作會停止排程新工作或取消執行中的工作。 對專案或時段的總花費強制執行美元上限。
任務優先順序 任務 決定當多個任務爭奪相同的工作者時,會先處理哪些任務。 在關鍵程度較低的任務之前確保緊急工作流程,而不會變更機群容量。

機群最大工作者計數

機群上的工作者計數上限設定會限制可以同時執行的工作者數量。當機群達到此上限時,即使有更多任務正在等待,也會停止啟動新工作者。此設定最直接取代固定大小轉譯陣列的自然並行限制。

當您想要在機群層級限制尖峰運算成本時,請使用此設定。例如,將上限設定為 50 名工作者,表示無論佇列深度為何,您永遠不會為超過 50 個並行執行個體付費。

如需詳細資訊,請參閱自動擴展組態

任務工作者計數上限

任務上的max-worker-count選項會限制有多少工作者可以處理該特定任務。當達到上限時,即使機群中有可用的工作者,也不會再將工作者指派給任務。佇列中的其他任務仍然可以使用剩餘的工作者。

當您想要防止單一大型任務控制機群時,請使用此設定。例如,如果您的機群有 100 名工作者,而您向 提交了 10,000 個影格任務--max-worker-count 50,則剩餘的 50 名工作者仍然可用於其他任務。您也可以在提交後變更此值。

deadline bundle submit my_job --max-worker-count 50

資源限制

資源限制會限制可同時使用受限資源的任務數量,例如浮動軟體授權或輸送量有限的檔案伺服器。限制是在陣列層級定義,並與一或多個佇列相關聯。任務中宣告限制要求的步驟只會執行高達可用計數的任務。

當您有具有固定容量的共用資源時,請使用限制。例如,如果您有 25 個渲染器的浮動授權,請建立 25 個的限制。在此限制下,不超過 25 個任務會在共用該授權的所有佇列中同時使用該授權。

如需詳細資訊,請參閱《截止日期雲端開發人員指南》中的建立任務的資源限制

具有限制動作的預算

截止日期雲端預算會追蹤一段時間內佇列的累積預估花費。您可以設定當花費達到閾值時觸發的限制動作。可用的動作包括:

  • 停止排程新工作 – 執行中的任務完成,但機群停止接受新任務。

  • 立即停止所有工作 – 所有執行中的任務都會取消,而且不會指派新的任務。

當您想要強制執行專案或帳單期間的美元上限時,請使用預算。您可以使用不同的動作建立多個閾值。例如,停止排程剩餘 5,000 USD,以允許目前的工作正常完成,並在剩餘花費達到 0 USD 時取消所有工作。

如需詳細資訊,請參閱使用預算控制成本

任務優先順序

當多個任務爭奪相同佇列中的工作者時,任務優先順序會影響任務的處理順序。優先順序範圍從 0 到 100,通常會先處理較高的數字。具有相同優先順序的任務會依收到的順序處理。

優先順序不會直接限制並行或成本。相反地,它有助於確保最重要的工作在機群容量為 時,會先取得工作者。結合優先順序與機群最大工作者計數,以控制哪些任務會先執行,以及運算總計執行多少。

限制您的支出費率

機群的成本來自其執行中的工作者,因此您可以透過設定工作者數量上限來限制機群的花費率。兩個控制項可一起運作:

  • 機群最大工作者計數透過限制一次可執行的工作者數量來設定尖峰支出率。如需工作者每小時成本組成項目的詳細資訊,請參閱 了解服務受管機群的成本模型

  • 預算限制累積支出。預算會追蹤一段時間內的總預估花費,而不是速率,因此會隨著機群的容量上限增加硬性的金額限制。

混合 Spot 和隨需容量

每個服務受管機群都使用單一執行個體市場選項:Spot、隨需或等待並儲存。若要結合市場選項,請為每個選項建立個別機群,並將機群與相同佇列建立關聯。如需詳細資訊,請參閱服務受管機群建立佇列和機群的關聯

當佇列有多個機群時,它會將任務平均分配到這些機群。若要改為將一個機群視為主要容量,將另一個機群視為溢位,請調整機群的工作者計數上限。截止日期雲端開發人員指南中的容量管理器範例會自動調整混合等待和儲存加 Spot 設定。

在忙碌期間暫時提高限制

所有這些控制項都可以隨時調整。在任務活動增加期間,您可以暫時提高限制。例如,在交付截止日期之前,您可能會提高機群的工作者數量上限、增加預算閾值,以及新增待命工作者以減少任務啟動延遲。在截止日期之後,再次降低設定。

您可以從截止日期雲端主控台更新機群自動擴展設定和預算。若要依排程變更容量,例如在工作時間內提高待命工作者計數,請在 GitHub 上使用 fleet_standby_scheduling 的範例 CloudFormation 範本。如果您需要的容量超過您帳戶的服務配額,請參閱 的配額 Deadline Cloud

合併控制項

每個控制項都有一個需求。下列案例示範如何結合控制項:

「我不希望一個大型任務佔用較小的任務」

在大型任務--max-worker-count上設定 ,以為其他任務保留機群容量。或者,在較小的任務上設定更高的優先順序。

「我想要成本控制和公平共享的組合」

設定機群最大工作者計數、針對大型任務使用每個工作的最大工作者計數,並將預算新增為安全網路。此組合可為您提供尖峰容量限制、每個工作公平性,以及美元退避。