調整工作逾時值

如果 Google Distributed Cloud 中的工作逾時,且您認為這並非安裝作業的根本問題所致,可以增加逾時間隔。本文說明如何使用設定規格中的註解,調整機器工作和批次工作的逾時間隔。

工作類型和錯誤

Google Distributed Cloud 指令和常式分為兩種:機器工作和批次工作。影響作業完成時間的因素有很多,例如硬體設定、網路設定和叢集設定。Google Distributed Cloud 設有預設逾時,可因應一般安裝作業。

以下是工作逾時錯誤訊息範例:

  • 前置檢查記錄中的機器工作逾時錯誤訊息 (為清楚起見,已換行):bmctl-workspace/cluster1/logs/preflight-20210501-000426/172.18.0.4

    Pod:172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st
    Result:Failed Reason:DeadlineExceeded Time:Wed Feb  3 16:59:56 2021
    
  • 如果 Pod 失敗,kubectl logs 的輸出內容可能會顯示類似的 DeadlineExceeded 訊息 (已換行):

    cluster-cluster1
    172.18.0.4-machine-preflf3a32c8a2f7a2449545c7e8ff954c961-652st    0/1
    0 DeadlineExceeded  192.168.122.180  bmctl-control-plane  7m12
    

調整機器工作逾時間隔

機器工作是指僅在一台機器上執行的例行程序,例如僅限於單一機器的飛行前檢查。Google Distributed Cloud 機器的預設逾時時間為 900 秒,也就是 15 分鐘。您可以在叢集設定檔中使用 baremetal.cluster.gke.io/machine-job-deadline-seconds 註解,調整機器工作逾時間隔。

以下範例將機器工作逾時間隔設為 1,800 秒,也就是 30 分鐘:

   apiVersion: baremetal.cluster.gke.io/v1
   kind: Cluster
   metadata:
     name: cluster1
     namespace: cluster-cluster1
     annotations:
       baremetal.cluster.gke.io/machine-job-deadline-seconds: "1800"
   spec:
   ...

使用 bmctl create cluster 建立新叢集時,或使用 bmctl upgrade cluster 升級現有叢集時,系統會套用逾時間隔值。所有單一機器工作都會使用新的間隔,包括 bmctl check preflightbmctl check -c CLUSTER_NAME 等。

調整批次工作逾時間隔

批次作業是在多部機器上執行的常式,例如網路預檢。Google Distributed Cloud 批次作業的預設逾時間隔取決於網路中的機器數量。預設逾時間隔為 900 秒,每部機器另加 20 秒。

舉例來說,如果批次工作在 60 部機器上執行,預設逾時間隔為 2,100 秒 (900 + (20 * 60) = 2100),也就是 35 分鐘。

您可以在叢集設定檔中使用 baremetal.cluster.gke.io/batch-job-deadline-seconds 註解,調整批次工作逾時間隔。

以下範例將批次工作逾時間隔設為 10,800 秒 (3 小時):

   apiVersion: baremetal.cluster.gke.io/v1
   kind: Cluster
   metadata:
     name: cluster1
     namespace: cluster-cluster1
     annotations:
       baremetal.cluster.gke.io/batch-job-deadline-seconds: "10800"
   spec:
   ...

使用 bmctl create cluster 建立新叢集時,或使用 bmctl upgrade cluster 升級現有叢集時,系統會套用逾時間隔值。

後續步驟

如需其他協助,請與 Cloud Customer Care 團隊聯絡。如要進一步瞭解支援資源,包括下列項目,請參閱「取得支援」: