バックアップに関する検証は、運用シナリオにもとづいた検証をシングル構成とストリーミングレプリケーション構成の2 つの構成で実施しました。ここではどのような検証を行ったかという内容の紹介を行います。検証内容の詳細や手順につ いては別冊の『バックアップ検証(シングルサーバ編)』、『バックアップ検証(SR編)』をご参照ください。
13.2.1. シングル構成
シングル構成の検証は以下の 3 つのシナリオで行いました。
1 つ目のシナリオではは更新中のサーバに電源断がおこり、再起動したときに WAL からの自動ロールフォワード で復旧することを確認します。
2 つ目のシナリオではpg_dumpでシステムバックアップをとったシステムのデータに異常が発生したとき、
pg_restore を利用してデータの復旧を行います。
122/135 © 2014 PostgreSQL Enterprise Consortium
図 13.28: クラッシュリカバリシナリオ
3 つ目はアーカイブログを運用しているシステムでオペレーションミスによりデータを削除されて、Point in time recovery(PITR)を利用してデータを復旧します。
図 13.29: 論理バックアップからのリストアシナリオ
以上についての手順や注意点を『バックアップ検証(シングルサーバ編)』に記載していますので、ご参照ください。
13.2.2. ストリーミングレプリケーション構成におけるバックアップ/リカバリ
ストリーミングレプリケーション構成のバックアップ/リカバリ検証は、以下のような環境で行いました。検証環境 の構成は、2台構成のストリーミングレプリケーション構成で、スレーブサーバ側でバックアップを取得するという運 用を想定しています。
図 13.31 検証構成イメージ
この環境でマスタサーバで障害が発生した状況からの復旧シナリオについて、2 つのケースの検証を行いました。
1 つ目は、マスタサーバでハードウェア障害が発生し、スレーブサーバをマスタに昇格させて業務を復旧させ、その 後ストリーミングレプリケーション構成を再構成するというシナリオです。ストリーミングレプリケーションを再構成す る際に業務をほぼ止めずに行うようにするため、次の図のような流れで復旧を行いました(図中の SRはストリーミ ングレプリケーションの略)。
124/135 © 2014 PostgreSQL Enterprise Consortium
図 13.30: Point in time recoveryシナリオ
図 13.32 障害復旧シナリオイメージ
2 つ目は、オペレーションミスによりデータを消去してしまったため、スレーブサーバで取得していたバックアップを 使用してマスタサーバをデータ消去直前までリカバリし、その後ストリーミングレプリケーション構成を再構成すると いうシナリオです。
以上についての手順や注意点を『バックアップ検証(SR編)』に記載していますので、ご参照ください。