Snowflake Postgresのメンテナンス

概要

メンテナンスとは、Postgresインスタンスを更新したり、構成を変更したりするプロセスのことです。ディスク容量の不足によりサイズ変更操作がトリガーされる場合など、場合によっては、メンテナンスがプラットフォームによって自動的にスケジュールされます。Snowflakeは、安全を保つために必要に応じてインスタンスのメンテナンスをスケジュールすることもあります。メンテナンスが実行されると、Postgresインスタンスは常に最新のPostgresマイナーバージョン、オペレーティングシステムのアップデート、新しい機能を受け取ります。

メンテナンスの仕組み

サービスの簡単な再起動など、一部のメンテナンス操作はPostgresインスタンスで直接実行できます。その他のメンテナンス操作には、新しいインスタンスへのフェイルオーバーが必要です。

再起動

Postgresサービスまたは基盤となるサーバーの再起動は、 Manage メニューからPostgresインスタンス上で直接実行できます。

  1. ナビゲーションメニューで Postgres を選択します。

  2. リストからインスタンスを選択し、詳細ページを表示します。

  3. 右上にある Manage メニューで、 Restart にカーソルを合わせ、必要な再起動のタイプを選択します。

Snowflake PostgresがPostgresサービスまたはサーバーを再起動する

Tip

Postgresサービスの再起動は、インスタンス全体を再起動するよりも一般的に高速です。

フェイルオーバー

Postgresインスタンスの構成を変更すると、変更を適用するためにフェイルオーバーが必要になります。インスタンスタイプ、サイズ、ストレージを変更したり、新しいPostgresメジャーバージョンにアップグレードしたりできます。

注釈

メンテナンス操作がフェイルオーバーを必要とする場合には、Postgresインスタンスは常に最新のPostgres マイナー バージョン、オペレーティングシステムのアップデート、新しい機能を受け取ります。

Postgresインスタンスへの変更を開始すると、新しい構成で新しいインスタンスがバックグラウンドで作成されます。この間、元のインスタンスは元の状態で動作し続けます。新しいインスタンスがオンラインになると、ソースインスタンスと同期されます。新しいインスタンスの準備ができるまで、フェイルオーバーは行われません。

注釈

フェイルオーバーが発生すると、通常、数秒から数分の間、一時的なサービスの中断が発生します。

メンテナンスウィンドウが設定されている場合、新しいインスタンスは、メンテナンスウィンドウに達するまで複製によって同期され、その後フェイルオーバーが発生します。メンテナンスウィンドウが設定されていない場合、プラットフォームは準備が整い次第、新しいインスタンスへのフェイルオーバーを開始します。

Tip

クライアントが接続を保持し、ソースインスタンスで書き込みを実行している場合、フェイルオーバーが遅れる可能性があります。完全な先行書き込みログ( WAL )を、フェイルオーバーの前に書き込み、アーカイブする必要があります。より迅速なフェイルオーバーのために、アプリケーションの待機期間にメンテナンスウィンドウが発生するように設定します。

フェイルオーバーが成功すると、元のインスタンスは不要になるため自動的に削除されます。何らかの理由でフェイルオーバーが成功しなかった場合(たとえば、メジャーバージョンのアップグレード中に発生する可能性があります)、操作は中止され、元のインスタンスがそのまま残ります。

自動メンテナンス

使用可能なディスク容量が極めて少なくなった場合、プラットフォームは自動的にメンテナンスを実行し、インスタンスのストレージを増やします。Postgresのメジャーバージョンが非推奨になり、公開期限までにインスタンスが新しいメジャーバージョンにアップグレードされなかった場合に、メンテナンスの実行がスケジュールされることもあります。

自動のディスクサイズ変更

緊急時にサーバーの復旧に十分なディスク容量がなくなる可能性があるため、Postgresインスタンスでストレージを過剰に使用することは運用上危険です。インスタンスのサイズが自動的に変更されている間、データを保護するためにディスクの使用量が重要になると、インスタンスは読み取り専用モードになります。

次の条件が満たされると、自動のサイズ変更操作が開始されます。

  • 85%のディスク使用量で残り 50GB 未満

  • 90%のディスク使用量

新しいストレージサイズは、元のサイズに基づいて計算されます。

  • 100GB ディスクは50%増加します(たとえば、10 GB は15 GB になります)。

  • 100GB から 999GB のディスクは25%増加します(たとえば、100 GB は125 GB になります)。

  • 1000 GB 以上のディスクは15%増加します(たとえば、1000 GB は1150 GB になります)。

Tip

フェイルオーバーが発生した時に一時的にサービスが中断されるため、アプリケーションがデータベースに自動的に再接続されるよう設定されていることを確認してください。

メンテナンスステータスの確認

Manage メニューの下にある Modify を選択して、インスタンスのメンテナンスをスケジュールできます。保留中のメンテナンス操作がある場合、インスタンスの詳細ページにバナーが表示されます。

Snowflake Postgresメンテナンスの進行中バナー

View details ボタンをクリックすると、過去の設定や新しい設定など、メンテナンスの詳細情報が表示されます。