• 検索結果がありません。

アジェンダ はクラウド上でも十分使えます 1. の概要 とは の導入事例 で利用される構成 2. をクラウドで使う クラウドサービスの分類 Amazon Web Services による構成例 2

N/A
N/A
Protected

Academic year: 2021

シェア "アジェンダ はクラウド上でも十分使えます 1. の概要 とは の導入事例 で利用される構成 2. をクラウドで使う クラウドサービスの分類 Amazon Web Services による構成例 2"

Copied!
33
0
0

読み込み中.... (全文を見る)

全文

(1)

PostgreSQLをクラウドで利用しよう

オープンソースミドルウェア最新技術セミナー

2014/03/25 14:10 - 14:40

SRA OSS, Inc. 日本支社

技術開発部 正野 裕大

(2)

アジェンダ

PostgreSQLはクラウド上でも十分使えます

1. PostgreSQLの概要

・PostgreSQLとは

・PostgreSQLの導入事例

・PostgreSQLで利用される構成

2. PostgreSQLをクラウドで使う

・クラウドサービスの分類

(3)

PostgreSQLをクラウドで利用しよう

(4)

PostgreSQL の概要

PostgreSQLとは | 歴史

PostgreSQL 6.0(1996年)以来

(5)

PostgreSQL の概要

PostgreSQLとは | ライセンス

修正BSDライセンスに類似したライセンスで配布

使用・複製・改変・配布の自由

・ 著作権表示

・ ライセンス条文  を含めていればOK

・ 免責条項

The PostgreSQL Licence

[PostgreSQL: License]

http://www.postgresql.org/about/licence/

柔軟なライセンスで商用利用もしやすい

修正BSDライセンスに類似したライセンスで配布

EnterpriseDB 「Postgres Plus Advanced Server」

SRA OSS  「PowerGresファミリー」

(6)

PostgreSQL の概要

PostgreSQLとは | 開発コミュニティ

コミュニティベースの開発体制

(7)

PostgreSQL の概要

PostgreSQLの導入事例 |

JTB旅カード

(8)

PostgreSQL の概要

PostgreSQLの導入事例 |

Zalando (

http://www.zalando.de/

)

 800台のAPサーバ

 (Tomcat)

 50種類のデータベース

 90台のマスターDBサーバ

 5TBのDBサイズ

 200人の開発者

[PGConf EU/DE 2013 recap and slides |

Zalando Tech Blog]

http://tech.zalando.com/posts/pgconf-2013-r

ecap-and-slides.html

ヨーロッパ最大のオンライン服飾販売サイト

(9)

PostgreSQL の概要

PostgreSQLの典型的な構成例 – HA構成

可能な限り限りサービスのダウンタイムを短くしたい

複数のサーバを1つのシステムにまとめて信頼性を高める

サービス

開始

サーバを停止して

バックアップ

障害発生

障害検知

対処開始

障害復旧

完了

稼動系

待機系

サービス監視

データ同期

H

igh

A

vailability(高可用性)

サービス提供

1つのHAクラスタ

(10)

PostgreSQL の概要

PostgreSQLの典型的な構成例 – HA構成

可能な限り限りサービスのダウンタイムを短くしたい

複数のサーバを1つのシステムにまとめて信頼性を高める

サービス

開始

サーバを停止して

バックアップ

障害発生

障害検知

対処開始

障害復旧

完了

稼動系

待機系

稼動系

サービス監視

データ同期

H

igh

A

vailability(高可用性)

サービス提供

障害を検知して

サービスを切り替え

(11)

PostgreSQL の概要

PostgreSQLの典型的な構成例 – HA構成

可能な限り限りサービスのダウンタイムを短くしたい

複数のサーバを1つのシステムにまとめて信頼性を高める

サービス

開始

サーバを停止して

バックアップ

障害発生

障害検知

対処開始

障害復旧

完了

稼動系

待機系

稼動系

サービス監視

データ同期

H

igh

A

vailability(高可用性)

サービス提供

OSS です

代表的なHAクラスタリングソフトウェア

・ Pacemaker

http://linux-ha.sourceforge.jp/wp/

・ pgpool-II

http://www.pgpool.net/mediawiki/jp/index.php/

(12)

PostgreSQL の概要

PostgreSQLのHA構成例 | Pacemaker

サービスを構成するアプリケーション・ネットワーク・ディスクを

監視・制御する

データ同期

PostgreSQLの

Streaming Replication

Pacemaker

Pacemaker

死活監視

正常稼働時

DBクライアント

アクセス

稼動系

待機系

(13)

PostgreSQL の概要

PostgreSQLのHA構成例 | Pacemaker

データ同期

PostgreSQLの

Streaming Replication

Pacemaker

死活監視

Pacemaker

障害発生時

フェイルオーバ

サービスを構成するアプリケーション・ネットワーク・ディスクを

監視・制御する

DBクライアント

アクセス

稼動系

待機系

稼動系

(14)

PostgreSQL の概要

PostgreSQLのHA構成例 | pgpool-II

コネクションプーリング・参照負荷分散・自動フェイルオーバ etc.

正常稼働時

データ同期

PostgreSQLの

pgpool-II

pgpool-II

死活監視

情報共有

DBクライアント

アクセス

稼動系

待機系

死活監視 / DBアクセス / 負荷分散

(15)

pgpool-II

PostgreSQL の概要

PostgreSQLのHA構成例 | pgpool-II

コネクションプーリング・参照負荷分散・自動フェイルオーバ etc.

障害発生時

データ同期

PostgreSQLの

pgpool-II

死活監視

情報共有

DBクライアント

アクセス

フェイルオーバ

稼動系

待機系

稼動系

死活監視 / DBアクセス / 負荷分散

(16)

PostgreSQL の概要

PostgreSQLのHA構成例 | pgpool-II

コネクションプーリング・参照負荷分散・自動フェイルオーバ etc.

障害発生時

データ同期

PostgreSQLの

pgpool-II

pgpool-II

死活監視

情報共有

DBクライアント

アクセス

フェイルオーバ

待機系

稼働系

死活監視 / DBアクセス / 負荷分散

(17)

PostgreSQLをクラウドで利用しよう

(18)

PostgreSQLをクラウドで使う

クラウドコンピューティングサービスの形態

物理

サーバ

PaaS

P

latform

a

s

a

S

ervice

S

oftware

SaaS

a

s

a

S

ervice

仮想サーバ

仮想サーバ

メールサーバ

DBサーバ

Webサーバ

www

IaaS

I

nfrastructure

a

s

a

S

ervice

ネットワーク越しに仮想化されたリソースを提供

提供するレイヤ別に3つに分類できる

ブログサービス

メールサービス

(19)

PostgreSQLをクラウドで使う

クラウドコンピューティングサービスの形態

ネットワーク越しに仮想化されたリソースを提供

提供するレイヤ別に3つに分類できる

物理

サーバ

PaaS

P

latform

a

s

a

S

ervice

S

oftware

SaaS

a

s

a

S

ervice

仮想サーバ

仮想サーバ

メールサーバ

DBサーバ

Webサーバ

www

IaaS

I

nfrastructure

a

s

a

S

ervice

ブログサービス

メールサービス

(20)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Availability Zone #2

Availability Zone #1

PostgreSQL

PostgreSQL

AP

インスタンス

AP

インスタンス

(21)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Availability Zone #2

Availability Zone #1

AP

インスタンス

AP

インスタンス

PostgreSQL

PostgreSQL

先ほどの

Pacemaker版構成例と同様の形

(22)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Virtual Private Cloud

(23)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Availability Zone #2

Availability Zone #1

Availability Zone

異なるAvailability Zone

≒ 異なるデータセンタ

仮想環境を動かしている物理サーバが異なっている

高い対障害性を実現

(24)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Availability Zone #2

Availability Zone #1

RDSインスタンス

プロビジョンされたDBサーバ

作成したらすぐに使える

AWS側のアーキテクチャで自動フェイルオーバー・データ同期

待機系

Slave

稼働系

Master

データ同期

PostgreSQL

PostgreSQL

(25)

PostgreSQLをクラウドで使う

AWS + PostgreSQL = Amazon RDS

Amazonが提供するDBサーバのマネージドサービス

位置付けとしては DaaS (

D

atabase

a

s

a

S

ervise)

手軽にHA構成が組める

Availability Zone #2

Availability Zone #1

PostgreSQL

PostgreSQL

AP

インスタンス

AP

インスタンス

(26)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II

Availability Zone #2

Availability Zone #1

AP

インスタンス

仮想サーバに自前のPostgreSQLとpgpool-IIをインストールして

HA構成を構築

AWSではややトリッキーな構成になる

M

PostgreSQL

S

PostgreSQL

pgpool-II

NAT

インスタンス

NAT

インスタンス

AP

インスタンス

pgpool-II

M

PostgreSQL

(27)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II

Availability Zone #2

Availability Zone #1

AP

インスタンス

仮想サーバに自前のPostgreSQLとpgpool-IIをインストールして

HA構成を構築

AWSではややトリッキーな構成になる

M

PostgreSQL

S

PostgreSQL

pgpool-II

NAT

インスタンス

NAT

インスタンス

AP

インスタンス

pgpool-II

M

PostgreSQL

先ほどの

pgpool-II版構成例と同様の形

(28)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II

Availability Zone #2

Availability Zone #1

AP

インスタンス

仮想サーバに自前のPostgreSQLとpgpool-IIをインストールして

HA構成を構築

AWSではややトリッキーな構成になる

M

PostgreSQL

S

PostgreSQL

pgpool-II

NAT

インスタンス

NAT

インスタンス

AP

インスタンス

pgpool-II

M

PostgreSQL

?

(29)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II |

NAT インスタンスの必要性

Availability Zone #2

Availability Zone #1

AP

インスタンス

M

PostgreSQL

S

PostgreSQL

pgpool-II

NAT

インスタンス

NAT

インスタンス

AP

インスタンス

pgpool-II

M

PostgreSQL

HA構成ではサービスで使う共通のIPアドレス(仮想IP)をフェイル

オーバ時に稼動系となるサーバに割り当てる

(30)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II |

NAT インスタンスの必要性

HA構成ではサービスで使う共通のIPアドレス(仮想IP)をフェイル

オーバ時に稼動系となるサーバに割り当てる

Availability Zone #2

Availability Zone #1

AP

インスタンス

M

PostgreSQL

S

PostgreSQL

AP

インスタンス

pgpool-II

M

PostgreSQL

しかしAWSでは仮想IPの割り当てができない

pgpool-II

(31)

PostgreSQLをクラウドで使う

AWS + PostgreSQL + pgpool-II |

NAT インスタンスの必要性

そこでAWSの機能を使ってフェイルオーバ時にネットワーク

経路を変更してしまう

Availability Zone #2

Availability Zone #1

AP

インスタンス

PostgreSQL

AP

インスタンス

pgpool-II

NATインスタンスはHAクラスタソフトウェアAWSの機能を使う際

に安全に外部ネットワークにアクセするために使われる

pgpool-II

NAT

インスタンス

M

PostgreSQL

M

PostgreSQL

経路変更

NAT

インスタンス

(32)

まとめ

PostgreSQLはクラウド上でも十分使えます

1. PostgreSQLの概要

15年以上の長い歴史

大規模運用の実例あり

PostgreSQLで利用される構成

2. PostgreSQLをクラウドで使う

Amazon Web Service でHA構成が組める

・ AWSのマネージドサービス

(33)

オープンソースとともに

URL:

http://www.sraoss.co.jp/

E-mail:

[email protected]

参照

関連したドキュメント

節の構造を取ると主張している。 ( 14b )は T-ing 構文、 ( 14e )は TP 構文である が、 T-en 構文の例はあがっていない。 ( 14a

既存の尺度の構成概念をほぼ網羅する多面的な評価が可能と考えられた。SFS‑Yと既存の

 この論文の構成は次のようになっている。第2章では銅酸化物超伝導体に対する今までの研

バックスイングの小さい ことはミートの不安がある からで初心者の時には小さ い。その構えもスマッシュ

前章 / 節からの流れで、計算可能な関数のもつ性質を抽象的に捉えることから始めよう。話を 単純にするために、以下では次のような型のプログラム を考える。 は部分関数 (

※ 硬化時 間につ いては 使用材 料によ って異 なるの で使用 材料の 特性を 十分熟 知する こと

サーバー費用は、Amazon Web Services, Inc.が提供しているAmazon Web Servicesのサーバー利用料とな

これはつまり十進法ではなく、一進法を用いて自然数を表記するということである。とは いえ数が大きくなると見にくくなるので、.. 0, 1,