メンテナンス期間 - Azure Arc 対応データ サービス

データ コントローラーのメンテナンス期間を構成して、アップグレードの期間を定義します。 この期間、desiredVersion プロパティが auto に設定されている、そのデータ コントローラー上の Arc 対応 SQL Managed Instance がアップグレードされます。

セットアップ時に、期間、繰り返し、および開始日時を指定します。 メンテナンス期間の開始後、その期間に設定された期間に実行されます。 データ コントローラーに接続されているインスタンスは、並列でアップグレードを開始します。 設定された期間が終了すると、進行中のアップグレードは続行されます。 この期間でアップグレードが開始されなかったインスタンスは、次の繰り返しでアップグレードを開始します。

前提条件

desiredVersion プロパティが auto に設定されている Azure Arc 対応 SQL Managed Instance。

制限事項

メンテナンス期間は 2 時間から 8 時間に及ぶ可能性があります。

データ コントローラーごとに設定できるメンテナンス期間は 1 つだけです。

メンテナンス期間を構成する

メンテナンス期間には、次の設定があります。

  • 期間 - 時間と分 (HH:mm) で表される、実行される期間の長さ。
  • 繰り返し - その期間が発生する頻度。 すべての単語は大文字と小文字が区別され、大文字にする必要があります。 週単位または月単位で期間を設定できます。
    • 週単位
      • [Week | Weekly][曜日]
      • 例:
        • --recurrence "Week Thursday"
        • --recurrence "Weekly Saturday"
    • 月単位
      • [Month | Monthly] [First | Second | Third | Fourth | Last] [曜日]
      • 例:
        • --recurrence "Month Fourth Saturday"
        • --recurrence "Monthly Last Monday"
    • 繰り返しを指定しない場合は、1 回限りのメンテナンス期間になります。
  • 開始 - 最初の期間が発生する日時、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 を使用して、インスタンスを現在実行中のバージョンにピン留めするために、手動で介入する必要があります。 問題が解決したら、バージョンを "auto" に戻すことができます。

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 Managed Instance の自動アップグレードを有効にする