Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RAID
Search
Satoru Takeuchi
PRO
July 25, 2022
Technology
1
54
RAID
以下動画のテキストです
https://youtu.be/xkUt6DMlLfk
Satoru Takeuchi
PRO
July 25, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
1
5
俺とキャンプ2
sat
PRO
1
95
俺とキャンプ3
sat
PRO
0
80
データ冗長化のしくみRAID 基礎概念とRAID1編
sat
PRO
2
24
RAIDの実現方法
sat
PRO
2
53
Linux環境のCPU上で10ミリ秒間に起こること
sat
PRO
3
100
HDDへのアクセス速度は位置によって変わる!??
sat
PRO
4
53
ボリュームマネージャLVM
sat
PRO
2
87
Best Practices of Production-Grade Rook/Ceph Cluster
sat
PRO
1
1.9k
Other Decks in Technology
See All in Technology
Postman v10リリース後を振り返る
nagix
0
170
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
160
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
2
350
2024/4/26 コンピュータ歴史博物館解説告知
toshi_atsumi
0
210
コンパウンドスタートアップのためのスケーラブルでセキュアなInfrastructure as Codeパイプラインを考える / Scalable and Secure Infrastructure as Code Pipeline for a Compound Startup
yuyatakeyama
3
4.5k
Discord とビルダー&チャットボットの使い方 / How to use Discord and Builder & Chatbots
ks91
PRO
0
160
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
130
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
170
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
740
Hands-on Gemini, the Google DeepMind LLM
meteatamel
1
110
ChatGPT for IT Service Management (IT Pro)
dahatake
7
1.4k
20240416_devopsdaystokyo
kzkmaeda
1
200
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
186
16k
The Cult of Friendly URLs
andyhume
74
5.7k
Rails Girls Zürich Keynote
gr2m
91
13k
We Have a Design System, Now What?
morganepeng
42
6.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
344
19k
Building Applications with DynamoDB
mza
88
5.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
13
1.5k
In The Pink: A Labor of Love
frogandcode
138
21k
Git: the NoSQL Database
bkeepers
PRO
422
63k
Making the Leap to Tech Lead
cromwellryan
123
8.5k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
The Cost Of JavaScript in 2023
addyosmani
15
3.8k
Transcript
RAID Jul. 25th, 2022 Satoru Takeuchi twitter: satoru_takeuchi
RAIDとは • Redundant Array of Independent Diskの略 • データ冗長化手法のひとつ ◦
複数のディスクを束ねて一つの仮想的なディスクに見せる ◦ 仮想的なディスク上のデータは冗長性されている ◦ 物理的なディスクが壊れてもデータが失われず、かつ、運用継続可能 仮想的なディスク ディスク ディスク ディスク … 使う 束ねる
RAIDレベル • データ格納方法は複数のレベルに分けられている • レベルが高ければよいというわけではなく、一長一短 ◦ データ利用効率、耐障害性、性能などが違う • RAID1,1+0,5,6あたりがよく使われる ◦
📒 そもそも冗長性が無い RAID0というのもある • もっとも簡単なRAID1についてのみ説明
RAID1 • 同じデータを2台以上のディスクに書き込む • n-1台の破壊に耐えられる • ユーザから見える容量は総容量の1/nになる 仮想的なディスク ディスク0 ディスク1
仮想的なディスク ディスク0 ディスク1 データA データA 仮想的なディスク ディスク0 ディスク1 故障 データAを書く ディスク0だけ読み 書きすれば 運用継続可能 2台構成のRAID1 データを書く ディスク故障後
リビルド • 壊れたディスクの交換後に実行 • 交換したディスクにデータを埋めて冗長度を戻す 仮想的なディスク ディスク0 ディスク1 故障 ディスク故障後
(ディスク0も壊れたら データを失う) 仮想的なディスク ディスク0 ディスク2 故障したディスクの交換 リビルド データ 仮想的なディスク ディスク0 ディスク2 データ データ データ コピー
すごい機能 • ホットスワップ ◦ 電源を切らなくてもディスク交換できる ◦ OSが対応していたらディスク故障後に電源を切らずに交換 →リビルドできる ◦ RAIDじゃなくても便利
• ホットスペア(ホットスタンバイ) ◦ RAIDアレイに組み込まない予備のディスクを用意しておく ◦ ディスクが壊れたら自動的に予備ディスクを使ってリビルド
実現方式 • ハードウェアRAID ◦ RAID用の専用ハードウェアを使う ◦ たとえばディスクを複数台接続できる PCIカード(RAIDカード)として実現 ◦ RAID用の処理はカード上のコントローラが担当。
CPUは使わない ◦ 操作はファームウェアやベンダ提供コマンドで実施 • ソフトウェアRAID ◦ RAID用の処理はソフトウェアが担当 ◦ Linuxではmdraidがよく使われる(mdadmコマンドで操作) • fake RAID ◦ ハードウェア機能だが、ほとんどの処理は CPUが行う ◦ fake RAIDを指してソフトウェア RAIDと呼ぶことがある
📒 RAIDつらい話 • ディスクが同時に複数個壊れる ◦ →RAIDに組み込むディスクの型番や製造時期を変えたりする • RAIDコントローラが壊れる ◦ →コントローラの二重化
(お高い) • RAIDコントローラがバグってて変な動きをする ◦ ファームウェアアップデート ◦ ベンダを変える ◦ ソフトウェアRAIDにする(オープンソースだと自分でなんとかできることもあるかも ) • ディスクを積んでたマシンが爆発した ◦ RAIDでは救えません。バックアップや分散ストレージを使ってね • write hole ◦ 話が長くなるのでまた後日
まとめ • RAIDはデータ冗長化手法の一つ ◦ 複数台のディスクを束ねて仮想的な一台のディスクとして見せる ◦ 仮想的なディスク上のデータは冗長性されている ◦ 物理的なディスクが壊れてもデータが失われず、かつ、運用継続可能 •
様々なレベルがある ◦ よく使われるのはRAID1,10,5,6 • 実現方法もいろいろ : ハードウェア、ソフトウェア、両方 • いいところだけではなくて、いろいろつらいところもある