維護期間 - 已啟用 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.runningVersion
和 status.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