HAクラスタ vs マネージドサービス
クラウドで実現するPostgreSQLの高可用性
2023年6月22日
SRA OSS LLC
佐藤 友章
sato@sraoss.co.jp© 2023 SRA OSS LLC

1

自己紹介
佐藤 友章 (さとう ともあき)• SRA OSSでデータベース事業の責任者を務める• PostgreSQLのサポートやコンサル、トレーニングなど、今なお現役エンジニア• PostgreSQLの経験は20年以上• 趣味はお酒と海外旅行© 2023 SRA OSS LLC

2

会社紹介
事業内容

SRA OSS LLC• オープンソースソフトウェア (OSS) 関連のサポート、製品開発・販売、構築・コンサル• OSSの教育、開発、コミュニティ運営支援• ソフトウェアの研究開発

所 在 地: 東京都豊島区南池袋2-32-8
設 立 日: 2022年6月17日
出資: SRA OSS, Inc.
資 本 金: 7,000万円
社長: 稲葉 香理
PostgreSQL
サポート開始1999SRA OSS, Inc.
設立

2003

PowerGres
販売開始

2005

顧
問: 石井 達夫
技術顧問: 増永 良文 (お茶の水女子大学名誉教授)

Sylpheed Pro
販売開始

2007

libTextConv
販売開始

2009

Hinemos/Zabbix
サポート開始

2011

2012

OSSプロ
サポート開始© 2023 SRA OSS LLC

2014

Premija Viewer
販売開始

SRA OSS LLC
設立

2018

2022

Pgpool-II単体サポート開始

3

PostgreSQLとは• リレーショナルデータベース管理システム (RDBMS)• ポストグレス・キュー・エル、または単にポストグレスと呼ぶ• 無償で使え、商用に劣らぬ機能・性能を備える
開発体制

コア
チーム

39名

メジャー
コントリビュータ
コントリビュータ• Peter Eisentraut (EDB)• Andres Fraud (Microsoft)• Magnus Hagander(Redpill Linpro)• Jonathan Katz (AWS)• Tom Lane (Crunchy Data)• Bruce Momjian (EDB)• Dave Page (EDB)

支援企業 (主要スポンサー)

88名

開発コミュニティ© 2023 SRA OSS LLC

4

高可用性 (High Availability; HA) とは• システムが稼働し続けられるかの度合い = 稼働率が高いこと• 稼働率 = 稼働時間 / (稼働時間 + 停止時間)
稼働開始

保守停止

障害
発生

障害
検知

復旧の占める割合 = 稼働率• 稼働率を上げるには稼働率• 障害発生率を下げる• 保守停止時間を短くする• 障害検知時間を短くする• 障害復旧時間を短くする© 2023 SRA OSS LLC

年間停止時間90%

36日12時間

99%

3日15時間36分

99.9%

8時間46分

99.99%

52分34秒

99.999%

5分15秒
5PostgreSQLのおもな高可用性実現方式• 稼働率99.9%は停電対策が必要• 99.99%は自動フェイルオーバが必要
マネージドサービス
Amazon RDS

レプリ
ケーション

バックアップAzure SQL Database
Google Cloud SQL

ホットスタンバイ

専用HAソリューション
Pgpool-II

バックアップrepmgr99%

Pacemaker

Patroni

CLUSTERPRO

pg_auto_failover

コールドスタンバイ
90%

汎用HAクラスタソフト

PRIMECLUSTER

99.99%～

99.9%© 2023 SRA OSS LLC

6

HAクラスタ• 複数サーバで冗長化し、可用性を高める構成
接続方式

Elastic IP

仮想IP

Elastic IP

ルートテーブル

オンプレ
ミス

○

××

クラウド

×

○

○

ハートビート

HAクラスタソフト※クラウドはほかにも接続方式あり

HAクラスタソフト

データ引き継ぎ方式
PostgreSQL
レプリケーション

AZ

共有
ストレージ

レプリ
ケーション

オンプレ
ミス

○

○

クラウド

×

○

PostgreSQL

AZ© 2023 SRA OSS LLC

7

マネージドサービス• サーバ管理を代わりにしてくれるサービス• 任せる範囲が広いものをとくにフルマネージドと呼ぶ
マネージドデータベースサービス（Amazon RDS）の場合
自動アップデート

リードレプリカ

マルチAZ

同期レプリケーション

M

自動バックアップ

マルチAZ配置

非同期レプリケーション

リードレプリカR

データ暗号化S

アクセス制御R
AZ© 2023 SRA OSS LLC

RRAZ

8

HAクラスタ vs マネージドサービス

管理の手軽さ自由度の高さ

HAクラスタ (非マネージドサービス)

マネージドサービス• 構築・運用が基本的に手動 (フェイルオーバは自動)• 構築が簡単• 運用がほぼ自動• Webブラウザで管理できる• 使える機能に制限がない• サポートが終了したバージョンでも使い続けられる• 自動バックアップは最新状態まで復元できない• リードレプリカは非同期レプリケー
ションのみ対応• 一部の拡張しか使えない

既存システムの移行ならHAクラスタ
新規システム、または人的リソースを削減したいならマネージドサービス© 2023 SRA OSS LLC

9

PostgreSQL関連製品・サービス

詳細PowerGresファミリー• パワーグレスと読む• SRA OSSが開発・販売するPostgreSQLベースのデータベース製品• ライセンス出荷は累積15,000本以上

信頼性とセキュリティ

高可用性

WAL
二重化
使いやすさと安心

透過的
データ暗号化

PostgreSQL

GUI管理
ツール

サポート

RHELやCentOS、Rocky Linux、AlmaLinuxに加え、Amazon Linuxにも対応
AWSでLifeKeeperを使ったHAクラスタ構築手順も公開中 (詳細)© 2023 SRA OSS LLC

10

PostgreSQL関連製品・サービス

PostgreSQL/PowerGresサポート&保守

詳細PostgreSQL/PowerGresを使う上での技術支援を提供
ヘルプデスク情報配信

以下に関する問い合わせに対応

リリース・関連ソフト情報をEメールで配信

データベースサーバ本体 (インストール、設定、使い方、ソースコード解析、データベース設計、性能チューニング)、contribモジュール、サードパーティソフト、データベース接続API、クラスタソフト

ナレッジベース
よくある質問と回答を検索・参照できる

障害対応

アップデート提供

障害原因を調査し、復旧・回避方法を提示

PowerGresの場合にアップデートを提供

24時間365日、リリースから10年のサポートも提供
マネージドサービスも条件つきで対応可 (Amazon RDS/Auroraの実績あり)© 2023 SRA OSS LLC

11

www.sraoss.co.jp

sales@sraoss.co.jp© 2023 SRA OSS LLC

03-5979-2701
12参考: Amazon RDS for PostgreSQLサポート期間
PostgreSQL
バージョン

PostgreSQL
リリース日

Amazon RDS
for PostgreSQL
リリース日

PostgreSQL
サポート終了日Amazon RDS
for PostgreSQL
サポート終了日

15

2022年10月13日

2023年2月27日

2027年11月11日

2027年11月

14

2021年9月30日

2022年1月27日

2026年11月12日

2026年11月

13

2020年9月24日

2021年2月24日

2025年11月13日

2025年11月

12

2019年10月3日

2020年3月31日

2024年11月14日

2024年11月

112018年10月18日

2019年3月13日

2023年11月9日

2023年11月

10

2017年10月5日

2018年2月27日

2022年11月10日

2023年4月17日

9.6

2016年9月29日

2016年11月11日

2021年11月11日

2022年4月30日© 2023 SRA OSS LLC

13

参考: Amazon RDS for PostgreSQL 15対応拡張• address_standardizer• address_standardizer_data_us• amcheck• auto_explain• autoinc (contrib-spi)• aws_commons• aws_lambda• aws_s3• bloom• bool_plperl• btree_gin• btree_gist• citext• cube• dblink• dict_int• dict_xsyn• earthdistance• flow_control• fuzzystrmatch• hll• hstore• hstore_plperl• hypopg• ICU module• insert_username (contribspi)• intagg• intarray• ip4r• isn• jsonb_plperl• lo• log_fdw• ltree• moddatetime (contrib-spi)• mysql_fdw• old_snapshot• oracle_fdw• orafce• pageinspect• pg_bigm• pg_buffercache• pg_cron• pg_freespacemap• pg_hint_plan• pg_partman• pg_prewarm• pg_proctab• pg_repack• pg_similarity• pg_stat_statements• pg_tle• pg_transport• pg_trgm• pg_visibility• pg_walinspect• pgAudit• pgcrypto• pglogical• pgrouting• pgrowlocks• pgstattuple• pgTAP• pgvector• plcoffee• plls• plperl• plpgsql• plprofiler© 2023 SRA OSS LLC• plrust• pltcl• plv8• PostGIS• postgis_raster• postgis_tiger_geocoder• postgis_topology• postgres_fdw• prefix• rdkit• rds_tools• refint (contrib-spi)• seg• sslinfo• tablefunc• tcn• tds_fdw• test_parser• tsm_system_rows• tsm_system_time• unaccent• uuid-ossp• wal2json※太字はPostgreSQL本体に付属の拡張14