コンテンツにスキップ

Repmgr@PostgreSQL

はじめに

本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。


01. Repmgrの仕組み

アーキテクチャ

Repmgrは、repmgr、repmgrd、といったコンポーネントから構成されている。

OSSのPostgreSQLでは使用できず、Enterprised PostgreSQLを使用している必要がある。


repmgr

repmgrは、PostgreSQLのDBをクラスタリングし、クラスターのインスタンス (プライマリーインスタンス、スタンバイインスタンス) として管理できるようにする。

repmgr_architecture


repmgrd

repmgrdは、DBインスタンス間でフェイルオーバーできるようにする。

プライマリインスタンスで障害が起こった場合、フェイルオーバーを実行し、スタンバイインスタンスをプライマリインスタンスに昇格させる。

repmgrd_fail-over


02. セットアップ

記入中...


03. repmgrコマンド

cluster

▼ show

DBインスタンスの情報 (例:プライマリーインスタンス、スタンバイインスタンス) を確認する。

$ repmgr cluster show

ID | Name  | Role    | Status    | Upstream | Location | Priority | Timeline | Connection string
---+-------+---------+-----------+----------+----------+----------+----------+-----------------------------------------
1  | node1 | primary | * running |          | default  | 100      | 1        | host=db_node1 dbname=repmgr user=repmgr
2  | node2 | standby |   running | node1    | default  | 100      | 1        | host=db_node2 dbname=repmgr user=repmgr
3  | node3 | standby |   running | node1    | default  | 100      | 1        | host=db_node3 dbname=repmgr user=repmgr
4  | node4 | standby |   running | node1    | default  | 100      | 1        | host=db_node4 dbname=repmgr user=repmgr
5  | node5 | witness | * running | node1    | default  | 0        | n/a      | host=db_node5 dbname=repmgr user=repmgr