本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
背景工作主機設定和組態
工作者主機是指執行期限雲端背景工作者的主機。本節說明如何設定 Worker 主機,並針對您的特定需求進行設定。每個工作者主機都會執行稱為 Worker Agent 的程式。工人代理負責:
-
管理工作者生命週期。
-
同步分配的工作,其進度和結果。
-
監控執行中的工作。
-
將記錄轉送至設定的目的地。
我們建議您使用提供的期限雲端背景工作者代理程式。Worker 代理程式是開放原始碼的,我們鼓勵您提出功能要求,但您也可以開發和自訂以符合您的需求。
若要完成下列各節中的工作,您需要下列項目:
建立並設定 Python 虛擬環境
你可以創建一個 Python 虛擬環境,Linux如果你已經安裝了 Python 3.9 或更高版本,並把它放在你的PATH
.
注意
在上Windows,代理程式檔案必須安裝到 Python 的全域網站套件目錄中。目前不支援 Python 虛擬環境。
若要建立並啟動 Python 虛擬環境
-
開啟 AWS CLI.
-
建立並啟動 Python 虛擬環境。
python3 -m venv /opt/deadline/worker
source /opt/deadline/worker/bin/activate
pip install --upgrade pip
安裝期限雲端工作者代理
在設定 Python 並建立虛擬環境之後Linux,請安裝截止日期雲端背景工作者代理程式 Python 套件。
若要安裝工作者代理程式 Python 套件
-
開啟終端機。
-
開啟Linux,以使用
root
者身分開啟終端機 (或使用sudo
/su
) -
開啟Windows,開啟系統管理員命令提示字元或 PowerShell終端機。
-
-
從 PyPI 下載並安裝期限雲端工作者代理程式套件:
python -m pip install deadline-cloud-worker-agent
設定期限雲端工作者代理程式
您可以透過三種方式設定期限雲端背景工作者代理程式設定。我們建議您使用通過設置的操作系統install-deadline-worker
。
命令列引數 — 您可以在從命令列執行「截止日期雲端工作者代理程式」時指定引數。某些組態設定無法透過命令列引數使用。要查看所有可用的命令行參數,請輸入deadline-worker-agent --help
以查看所有可用的命令行參數。
環境變數 — 您可以透過設定開頭為的環境變數來設定截止日期 Cloud Worker 代理程式DEADLINE_WORKER_
。例如,您可以使用export
DEADLINE_WORKER_VERBOSE=true
將 Worker 代理程式的輸出設定為詳細資訊。有關實例和詳細資訊,請參閱中/etc/amazon/deadline/worker.toml.example
的Linux或中C:\ProgramData\Amazon\Deadline\Config\worker.toml.example
的Windows。
配置檔案 — 當您安裝 Worker 代理程式時,它會建立位於/etc/amazon/deadline/worker.toml
上Linux或C:\ProgramData\Amazon\Deadline\Config\worker.toml
上的配置檔案Windows。Worker 代理程式會在啟動時載入此組態檔案。您可以使用範例組態檔案 (開/etc/amazon/deadline/worker.toml.example
啟Linux或開啟Windows),針C:\ProgramData\Amazon\Deadline\Config\worker.toml.example
對您的特定需求量身打造預設 Worker 代理程式組態檔案。
最後,我們建議您啟用 Worker 代理程式的 auto 關機。這可讓 Worker 叢集在需要時向上擴充,並在轉譯工作完成時關閉。自動調整功能有助於確保您只在需要時使用資源。
啟用 auto 關機
作為使root
用者:
-
使用參數安裝 Worker 代理程式
--allow-shutdown
。
建立工作使用者和群組
本節說明代理程式使用者與佇列中jobRunAsUser
定義的使用者之間所需的使用者和群組關係。
截止日期 Cloud Worker 代理程式應以主機上的專用代理程式特定使用者身分執行。您應該jobRunAsUser
設定「截止日期雲端佇列」的內容,以便 Worker 以特定作業系統使用者和群組的身分執行佇列工作。這表示您可以控制工作擁有的共用檔案系統權限。它還提供了作業與 Worker Agent 使用者之間的重要安全性界限。
Linux工作使用者和群組
若要設定您的代理程式使用者jobRunAsUser
,並確定您符合下列需求:
-
每個群組都有一個群組
jobRunAsUser
,它是其對應的主要群組jobRunAsUser
。 -
代理程式-使用者屬於 Worker 取得工
jobRunAsUser
作之佇列的主要群組。基於安全性最佳做法,我們建議您將其作為代理程式使用者的次要群組。此共用群組可讓 Worker 代理程式在工作執行時提供檔案供工作使用。 -
A
jobRunAsUser
不屬於代理程式-使用者的主要群組。針對安全性最佳做法:-
Worker 代理程式所寫入的敏感檔案是由代理程式的主要群組所擁有。
-
如果
jobRunAsUser
屬於此群組,且 Worker 代理程式寫入的檔案可由提交至 Worker 上執行之佇列的工作存取。
-
-
預設的 [ AWS 區域] 應符合 Worker 所屬的伺服器陣列的 [區域]。如需詳細資訊,請參閱組態和認證檔案設定。
這應該適用於:
-
代理程式-使用者
-
Worker 上的所有佇列
jobRunAsUser
帳戶
-
-
代理程式-使用者可以執行
sudo
命令為.jobRunAsUser
下圖說明代理程式使用者與叢集關聯之佇列的使jobRunAsUser
用者與群組之間的關係。
![代理程式與使用者與佇列之間的關係圖解。jobRunAsUser](images/worker_users_and_groups.png)
Windows 使用者
若要使用使用Windows者作為jobRunAsUser
,它必須符合下列需求:
-
所有佇列
jobRunAsUser
使用者都必須存在。 -
他們的密碼必須與佇列
JobRunAsUser
欄位中指定的密碼值相符。如需指示,請參閱中的步驟 7 建立佇列。 -
代理程式使用者必須能夠以這些使用者身分登入。