共用方式為


維護期間 - 已啟用 Azure Arc 的資料服務

在資料控制器上設定維護期間,以定義升級的時段。 在此時段內,該資料控制器上 desiredVersion 屬性設為 auto,已啟用 Arc 的 SQL 受控執行個體將會升級。

在安裝期間,指定持續時間、週期及開始日期和時間。 在維護期間開始之後,它會在持續時間中設定的時間期間內執行。 附加至資料控制器的執行個體會開始 (平行) 升級。 在設定持續時間結束時,任何進行中的升級都會繼續完成。 在期間內未開始升級的任何執行個體都會在下列週期中開始升級。

必要條件

由 Azure Arc 啟用的 SQL 受控執行個體,且 desiredVersion 屬性設定為 auto 屬性。

限制

維護期間的持續時間可以從 2 小時到 8 小時。

每個資料控制器只能設定一個維護期間。

設定維護期間

維護期間具有下列設定:

  • [持續時間]:將執行的時間範圍長度,以小時和分鐘 (HH:mm) 表示。
  • [週期]:時間範圍的發生頻率。 所有字都區分大小寫,而且必須大寫。 您可以設定每週或每月的時間範圍。
    • 每週
      • [週 | 每週][週幾]
      • 例如:
        • --recurrence "Week Thursday"
        • --recurrence "Weekly Saturday"
    • 每月
      • [月份 | 每月] [第一個 | 第二個 | 第三個 | 第四個 | 最後一個] [週幾]
      • 例如:
        • --recurrence "Month Fourth Saturday"
        • --recurrence "Monthly Last Monday"
    • 如未指定週期,則會是一次性維護期間。
  • [開始]:第一個時間範圍發生的日期和時間,格式為 YYYY-MM-DDThh:mm (24 小時格式)。
    • 範例:
      • --start "2022-02-01T23:00"
  • [時區]:與維護期間相關聯的時區

CLI

請使用下列命令建立維護期間:

az arcdata dc update --maintenance-start <date and time> --maintenance-duration <time> --maintenance-recurrence <interval> --maintenance-time-zone <time zone> --k8s-namespace <namespace> --use-k8s

範例:

az arcdata dc update --maintenance-start "2022-01-01T23:00" --maintenance-duration 3:00 --maintenance-recurrence "Monthly First Saturday" --maintenance-time-zone US/Pacific --k8s-namespace arc --use-k8s

監視升級

在維護期間,您可以檢視升級的狀態。

kubectl -n <namespace> get sqlmi -o yaml 

status.runningVersionstatus.lastUpdateTime 欄位會顯示最新版本及狀態變更的時間。

檢視現有的維護期間

您可以使用 datacontroller 格式檢視維護期間。

kubectl describe datacontroller -n <namespace>

輸出:

Spec:  
  Settings:
    Maintenance:
      Duration:    3:00
      Recurrence:  Monthly First Saturday
      Start:       2022-01-01T23:00
      Time Zone:   US/Pacific

失敗的升級

失敗的升級不會自動復原。 如果執行個體無法自動升級,需要手動介入,才能使用 az sql mi-arc update 將執行個體鎖定到目前執行的版本。 問題解決之後,將版本即可設回「自動」。

az sql mi-arc upgrade --name <instance name> --desired-version <version> 

範例:

az sql mi-arc upgrade --name sql01 --desired-version v1.2.0_2021-12-15

停用維護期間

停用維護期間時,不會執行自動升級。

az arcdata dc update --maintenance-enabled false --k8s-namespace <namespace> --use-k8s

範例:

az arcdata dc update --maintenance-enabled false --k8s-namespace arc --use-k8s

啟用維護期間

啟用維護期間時,會繼續自動升級。

az arcdata dc update --maintenance-enabled true --k8s-namespace <namespace> --use-k8s

範例:

az arcdata dc update --maintenance-enabled true --k8s-namespace arc --use-k8s

變更維護期間選項

您可以使用 update 命令變更任何選項。 在此範例中,我會更新開始時間。

az arcdata dc update --maintenance-start <date and time> --k8s-namespace arc --use-k8s

範例:

az arcdata dc update --maintenance-start "2022-04-15T23:00" --k8s-namespace arc --use-k8s

啟用 SQL 受控執行個體的自動升級