狠狠撸

狠狠撸Share a Scribd company logo
徹底検証!

DRBD 8.4
with

高速半導体ストレージ
株式会社サードウェア
久保 元治

(LINBIT 認定 DRBD コンサルタント )

2013/10/19

Your Way to High Availability

1
Copyright 2013, ThirdWare Inc.
目次
●
●
●

イントロ : DRBD とは
DRBD 8.3 vs 8.4
パフォーマンス検証

2013/10/19

Your Way to High Availability

2
Copyright 2013, ThirdWare Inc.
イントロダクション

DRBD とは何か

2013/10/19

Your Way to High Availability

3
Copyright 2013, ThirdWare Inc.
リアルタイムレプリケーション
●
●

ネットワーク越しの RAID 1
故障や災害に備えたデータの冗長化

2013/10/19

Your Way to High Availability

4
Copyright 2013, ThirdWare Inc.
リアルタイムレプリケーション
アプリケーション

ホスト

A

1

3

2

1

3

2

プライマリ

ホスト

B

セカンダリ

2013/10/19

Your Way to High Availability

5
Copyright 2013, ThirdWare Inc.
リアルタイムレプリケーション
●
●
●

ネットワーク越しの RAID 1
故障や災害に備えたデータの冗長化
障害後の再同期

2013/10/19

Your Way to High Availability

6
Copyright 2013, ThirdWare Inc.
リアルタイムレプリケーション
アプリケーション

ホスト

A

1

3

2

プライマリ

ホスト

B

1

3
レプリケーション再開 2
現在停止中

セカンダリ

2013/10/19

Your Way to High Availability

7
Copyright 2013, ThirdWare Inc.
一時的な障害にも安心!
レプリケーション
再開

レプリケーションは停止
サービスは継続できる

障害発生 !

復旧
ダウン中の書き込みを
高速再同期

2013/10/19

Your Way to High Availability

8
Copyright 2013, ThirdWare Inc.
ディスククラッシュも安心!
レプリケーション
再開

レプリケーションは停止
サービスは継続できる

障害発生 !

復旧
全領域のデータを
高速にフル同期

2013/10/19

Your Way to High Availability

9
Copyright 2013, ThirdWare Inc.
DRBD 8.3
v.s.

DRBD 8.4

2013/10/19

Your Way to High Availability

10
Copyright 2013, ThirdWare Inc.
リソースおよびボリューム
DRBD 8.3

DRBD 8.4

リソース 1

リソース 1
volume 0
(/dev/sdb1)

/dev/sdb1

volume 1
(/dev/sdb2)

リソース 2
/dev/sdb2

2013/10/19

Your Way to High Availability

11
Copyright 2013, ThirdWare Inc.
リソースおよびボリューム
DRBD 8.3

DRBD 8.4

resource r1 {
device /dev/drbd0;
disk /dev/sdb1;
meta-disk internal;
on node1 {
address 192.168.0.1:7788;
}
on node2 {
address 192.168.0.2:7788;
}
}
resource r2 {
device /dev/drbd1;
disk /dev/sdb2;
meta-disk internal;
on node1 {
address 192.168.0.1:7789;
}
on node2 {
address 192.168.0.2:7789;
}
}

2013/10/19

Your Way to High Availability

resource r1 {
volume 0 {
device /dev/drbd0;
disk /dev/sdb1;
meta-disk internal;
}
volume 1 {
device /dev/drbd1;
disk /dev/sdb2;
meta-disk internal;
}
on node1 {
address 192.168.0.1:7788;
}
on node2 {
address 192.168.0.2:7788;
}
}

12
Copyright 2013, ThirdWare Inc.
リソースおよびボリューム
●
●

データ整合性 = 書き込み順序
複数コネクション (8.3)
●
●

●

デバイスごとの書き込み順序は維持される
デバイスをまたぐ書き込み順序は保証されない

単一コネクション (8.4)
●

デバイスをまたぐ書き込み順序も保証される

2013/10/19

Your Way to High Availability

13
Copyright 2013, ThirdWare Inc.
リソースおよびボリューム
DRBD 8.3
クラッシュ時にデータ整合性は
保証されない
論理ボリューム

DB データ

ボリュームグループ

物理ボリューム

2013/10/19

NFS データ

DRBD 8.4

VolGroup0

クラッシュ時もデータ整合性が
保証される

/dev/drbd0

/dev/drbd1

(/dev/sdb1)

(/dev/sdb2)

Your Way to High Availability

14
Copyright 2013, ThirdWare Inc.
アクティビティログの改良 (8.4.3 ? )
●

アクティビティログ
●

ホットエリア
●

●

コールドエリア
●

●

現在活発に書き込まれているエクステント
完全同期済みで最近書き込まれていないエクステント

アクティブエクステント ( ホットエリア ) 最大数の制限あり

2013/10/19

Your Way to High Availability

15
Copyright 2013, ThirdWare Inc.
アクティビティログの改良 (8.4.3 ? )
コールド

両ノードに
書き込み完了
( 完全同期 )

2013/10/19

Your Way to High Availability

書き込み
開始

ホット!

16
Copyright 2013, ThirdWare Inc.
アクティビティログの改良 (8.4.3 ? )
プライマリ

2013/10/19

Your Way to High Availability

セカンダリ

17
Copyright 2013, ThirdWare Inc.
アクティビティログの改良 (8.4.3 ? )
●

オーバヘッドを最大 64 倍改善
●

●

多数のコネクションを持つ DB 処理などに顕著に効果が
みられる

アクティブエクステント最大数を 65534 に拡大

フラッシュストレージなどに対する
ランダム書き込み時の
レプリケーション性能が
飛躍的に向上
2013/10/19

Your Way to High Availability

18
Copyright 2013, ThirdWare Inc.
変更点 (8.3→8.4)
●

設定ファイルの構文が変更された
●
●
●
●

●

boolean タイプのパラメータには yes/no を指定
syncer セクションが解体された
protocol は net セクションのパラメータになった
options セクションが新設された

8.3 の構文は引き続きサポートされる

2013/10/19

Your Way to High Availability

19
Copyright 2013, ThirdWare Inc.
変更点 (8.3→8.4)
●

オンラインのまま
●
●

●

drbdadm の構文が変わった
●
●
●

●

プロトコルを変更できる
シングル?デュアルプライマリを切り替えられる
8.3: drbdadm [ オプション ] コマンド リソース
8.4: drbdadm コマンド [ オプション ] リソース
いくつかの新しいコマンド

いくつかのデフォルト値の変更

2013/10/19

Your Way to High Availability

20
Copyright 2013, ThirdWare Inc.
徹底検証!

DRBD 8.4.3
on
フラッシュストレージ
2013/10/19

Your Way to High Availability

21
Copyright 2013, ThirdWare Inc.
検証環境
本体

PowerEdge R820

CPU

Xeon E5-4620 x4

メモリ

64GB(8GB x8)

RAIDコントローラ

H710P

ネットワーク

Intel X540 10GbE(Dual) x1
SAS 2.5inch 900GB10K x8

HDD

(6本でRAID1+0を構成)

フラッシュストレージ

ioDrive2 (785GB)
Express Flash (350GB)

この構成のサーバを 2 台使用

2013/10/19

Your Way to High Availability

22
Copyright 2013, ThirdWare Inc.

RAID 5/6 よりかなり
高速なはず
DRBD
●
●
●
●

8.4.3 を使用
al-extents 6433;
sndbuf-size 0; rcvbuf-size 0; ( 自動調節 )
max-buffers 128k; ( 最大値 )

2013/10/19

Your Way to High Availability

23
Copyright 2013, ThirdWare Inc.
sysctl.conf
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.core.rmem_default=16777216
net.core.wmem_default=16777216
net.ipv4.tcp_rmem="4096 87380 16777216"
net.ipv4.tcp_wmem="4096 65536 16777216"
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps=0
net.ipv4.tcp_sack=0
net.ipv4.tcp_no_metrics_save = 1
net.core.netdev_max_backlog=250000
net.core.optmem_max=16777216

2013/10/19

Your Way to High Availability

24
Copyright 2013, ThirdWare Inc.
ベンチマーク方法
●
●
●

PostgreSQL 9.2.3 + pgbench
トランザクション / 秒 (tps) を指標とする
データベース作成
/usr/pgsql-9.2/bin/pgbench -i -s 1000 dba

●

パフォーマンス測定
/usr/pgsql-9.2/bin/pgbench -c 100 -j 50 -T 600 dba

2013/10/19

Your Way to High Availability

25
Copyright 2013, ThirdWare Inc.
検証 1: DRBD 自体のオーバヘッド
R820
Express Flash

R820

R820

Express Flash DRBD Express Flash

ioDrive2

ioDrive2

DRBD

ioDrive2

HDD
(RAID1+0)

HDD
(RAID1+0)

DRBD

HDD
(RAID1+0)

2013/10/19

Your Way to High Availability

26
Copyright 2013, ThirdWare Inc.
検証 1: DRBD 自体のオーバヘッド

2013/10/19

Your Way to High Availability

27
Copyright 2013, ThirdWare Inc.
検証 1: DRBD 自体のオーバヘッド
●

●
●

ioDrive2 、 Express Flash ともに HDD より約 20 倍
高速
Express Flash は ioDrive2 より高速
DRBD によるオーバヘッドは 20 %以下

2013/10/19

Your Way to High Availability

28
Copyright 2013, ThirdWare Inc.
検証 2: 仮想環境でのパフォーマンス
●
●

CentOS 6.4 の KVM 環境を構築
ホスト OS
●
●

●

DRBD で同期したストレージプールを作成
iSCSI (LIO) で仮想ディスクイメージを提供

ゲスト OS
●

pgbench を 1 ? 5 台のゲスト OS で同時に並行実行

2013/10/19

Your Way to High Availability

29
Copyright 2013, ThirdWare Inc.
検証 2: 仮想環境でのパフォーマンス
VM VM VM VM VM

KVM (virtio)
iSCSI イニシエータ
LIO (iSCSI)

R820

R820

Express Flash DRBD Express Flash
ioDrive2

Your Way to High Availability

ioDrive2

HDD
(RAID1+0)
2013/10/19

DRBD

DRBD

HDD
(RAID1+0)

30
Copyright 2013, ThirdWare Inc.
検証 2: 仮想環境でのパフォーマンス

2013/10/19

Your Way to High Availability

31
Copyright 2013, ThirdWare Inc.
検証 2: 仮想環境でのパフォーマンス
●
●
●

●

HDD –- 各 VM が約 300tps を分け合う
IoDrive2 –- ゲストあたり約 750 ? 1000tps ずつ
Express Flash –- ゲストあたり約 600 ? 1000 tps
ずつ
フラッシュドライブのパフォーマンスは、仮想化しない
場合と比べて低下 – - KVM 、 iSCSI その他のレイヤ
のどこかにボトルネックが存在するのではないか

2013/10/19

Your Way to High Availability

32
Copyright 2013, ThirdWare Inc.
検証 2: 仮想環境でのパフォーマンス
●

とはいえ ....
●
●

フラッシュドライブは HDD よりはるかに高性能
(HDD ベースの ) 物理 DB サーバの仮想化には有望

2013/10/19

Your Way to High Availability

33
Copyright 2013, ThirdWare Inc.
考察
●

ioDrive2 、 Express Flash ともに HDD よりはるかに
高速

●

DRBD 8.4.3 のレプリケーションのオーバヘッドは
20 %以下にとどまった

●

仮想環境でもフラッシュドライブは HDD よりもはるか
に高速に動作する

2013/10/19

Your Way to High Availability

34
Copyright 2013, ThirdWare Inc.
情報
●
●
●
●

http://www.drbd.org/
http://www.drbd.jp/
http://linux-ha.3ware.co.jp/
http://www.facebook.com/ThirdwareLinuxHA

2013/10/19

Your Way to High Availability

35
Copyright 2013, ThirdWare Inc.

More Related Content

徹底検証!Drbd 8.4 with 高速半導体ストレージ