Help us understand the problem. What is going on with this article?

RAID

More than 3 years have passed since last update.

参考サイト
http://www.obenri.com/_raid_build/after_install_raid.html#target_pictprocmdstat01
https://raid.wiki.kernel.org/index.php/Mdstat#md_config.2Fstatus_line

RAIDについて

RAIDと言われると、いつも「ああアレね!なんか……冗長するやつ」ってなるので、覚え書きです。

cat /proc/mdstat

Personalities : [raid1] [raid6] [raid5] [raid4]

md_d0 : active raid5 sde1[0] sdf1[4] sdb1[5] sdd1[2] sdc1[1]
      1250241792 blocks super 1.2 level 5, 64k chunk, algorithm 2 [5/5] [UUUUU]
      bitmap: 0/10 pages [0KB], 16384KB chunk

unused devices: <none>

項目 意味
md_d0 RAIDデバイス
active active 動作状態
raid5 RAIDレベル
sde1[0] パーティション[認識番号]
1250241792 blocks RAIDサイズ(block)
super スーパーブロックのこと
64k chunk データがストライプされる単位
algorithm 2 RAID5には、ストライピングにいくつかのパターンがあり、algorythmオプションとして指定できる
[5/5] RAID構成パーティション/稼働パーティション
[UUUUU] U=Upのこと。Downは_で表示される
bitmap: 0/10 pages [0KB] write intent bitmapのこと。突然のシャットダウンや、RAID再構築時にRAIDを素早くビルドするために使われるらしい

パリティ(Parity)とは
コンピュータのビット列誤り検出のこと。
ビット列(8つの0または1の列)の中に、
1が奇数個ある→パリティは0
1が偶数個ある→パリティは1
という単純な話。

11001001 なら、パリティは1
パリティを合わせたビット列は110010011

【パリティがRAIDの何の役に立つのか】

ABCのサーバが、それぞれ1、1、0のビットを持っていたとする。
例えば、Bのサーバが落ちてしまった場合、
1、X、0 と、Xのところのビットがわからなくなってしまう。
こんな場合でも、パリティビットさえ保存されていれば、
1、X、0と、パリティ1から
1は偶数個必要だから、Xは1だと断定できる。
パリティビットは、耐障害性を高めるため、サーバに分散して保存される。


下の表は、A,B,C,D の4台のサーバでRAIDを構築した場合、データがどのように保存されるかを示している。
(PとP'はパリティを表す)

RAID 呼び名 A B C D
0 Striping 1
5
2
6
3
7
4
8
1 Mirroring 1
2
1
2
1
2
1
2
5 Striping
with Parity
1
4
2
P
P
5
3
6
6 Striping
with Dual Parity
P'
3
1
P
P
4
2
P'

● RAID0
ストライピング。複数のディスクに同時にデータをread/writeする。ディスクのread/write速度が上がる。冗長性は無い。

● RAID1
ミラーリング。同じデータを複数のサーバで保持する。

● RAID5
ストライピングでデータを保存し、パリティを付けることで耐障害性を確保する。

● RAID6
ストライピングでデータを保存し、二種類のパリティを付ける。RAID5では1台のサーバに対する耐障害性しかないが、RAID6なら2台同時に落ちてもデータを復元できる。


【RAIDの組み合わせ】
RAIDは、1種類だけ使うよりも、複数のRAIDを組み合わせて使うことの方が多い。
組み合わせることで、耐障害性やディスクへのアクセス速度向上を図る。

RAID 効果
0 + 1 0 : アクセス速度向上、大容量
1 : 冗長性
5 + 0 0 : アクセス速度向上、大容量
5: 耐障害性



【RAIDの分類】
もうひとつ、RAIDを分けるものとして、分割するディスクの単位がある。
RAID2,3,4だとその辺の区別があるらしい。
ほとんど使われないそうなので割愛します。
Block(Sector): 512byte(磁気ディスク)
2048byte(光ディスク)
Bit : 1か0どちらかのこと。一桁
Byte : 8桁の1か0の並び。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした