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
ICTSC2020 Ceph
Search
onokatio
March 06, 2021
Technology
1
240
ICTSC2020 Ceph
ICTSC2020 LT会で話したCephの話です
onokatio
March 06, 2021
Tweet
Share
Other Decks in Technology
See All in Technology
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
170
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
310
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
500
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.6k
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
5
590
「良さそう」と「とても良い」の間には 「良さそうだがホンマか」がたくさんある / 2025.07.01 LLM品質Night
smiyawaki0820
1
430
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
240
「Chatwork」の認証基盤の移行とログ活用によるプロダクト改善
kubell_hr
1
240
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
290
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
300
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
220
Beyond Kaniko: Navigating Unprivileged Container Image Creation
f30
0
100
Featured
See All Featured
Designing for Performance
lara
609
69k
Navigating Team Friction
lara
187
15k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Rails Girls Zürich Keynote
gr2m
94
14k
A Tale of Four Properties
chriscoyier
160
23k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
Building Applications with DynamoDB
mza
95
6.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Agile that works and the tools we love
rasmusluckow
329
21k
Side Projects
sachag
455
42k
Transcript
Cephの話 おのかちお
ぼく • おのかちお • 今日のSELinux問題を作った人です ◦ 前半ドタバタしてごめん… :pray: • インフラチームでストレージ周りやってました
注意 このCephは、監視基盤のCeph(Rook)とは別のクラスタです
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
以前のストレージ構成
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
Cephとは • 分散ストレージ • レプリカの話 • SPOFが居ない • OSDの自動認識 •
リバランス • S3/NFS/CephFS/RBDのインターフェイス
Cephとは - 分散ストレージ • データが分散される ◦ (機材があれば)いくらでもスケールできる • データが複製される ◦
どこかで壊れるor無くなってもデータが消えくい • 単一障害点をなくしやすい ◦ コントロールプレーンもデータプレーンも
Cephとは - レプリカの話 • レプリカ = 重複度 • レプリカサイズ3ならデータが3重に保存される ◦
ただし使用ストレージ容量も3倍 ◦ 書き込み実質速度は3倍 ◦ (今回はWritebackなので実質1倍)
Cephとは - SPOFが居ない • Cephは、Single Point Of Failure(単一障害点)ができにくい仕組 みになっています。 ◦
データプレーン: レプリカ ◦ コントロールプレーン: CRUSHアルゴリズム
Cephとは - 物理ディスクの自動認識 • Cephを構成するサーバーに新しいディスクが挿入される ↓ • 全自動で初期化・Cephへ追加
Cephとは - リバランス • データが増える or 物理ディスクが増える ↓ • 再配置・細分化
Cephとは - インターフェイス • NFS • S3 • CephFS •
RBD (Rados Block Device)
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
今回のCephの構成と容量の話 • コントロールプレーン: 6ノード • データプレーン: 6ノード ◦ SSD x6
◦ HDD x3 × 4 × 2 × 2
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
ブロックストレージをCephに置く話 • Cephの速度計測会 • humstackがブロックストレージをCephRBDに置く • ところで トラコンのVMの数について
Cephの速度計測会
Cephの速度計測会
Cephの速度計測会
Cephの速度計測会
Cephの速度計測会 (BS展開時)
Cephの速度計測会 (VM起動時)
Cephの速度計測会 (Ceph pool)
humstackがBSをCeph RBDに置く • humstack(仮想化基盤) がCephにブロックストレージを置ける ように改良 by t-inagaki ↓ •
結果的に一つのVM作成・起動が数分程度に! ◦ コンピュートノード間のコピーが要らなくなった ◦ ただしレプリカ=1なので、分散されているだけで耐障害性 の旨みはない
ところで トラコンのVMの数について • 総VM数: 20~30台程度 • チーム数: 22 • 1VM
5GBぐらい 20 〜 30 * 22 *5 = 2 〜 3TB → レプリカサイズを3にすると、9TB超になる → SSD 6TBを超えてしまう
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
Cephのsnapshotの話 • Ceph RBDには、既存のオブジェクトをベースに別のオブジェ クトを展開する機能がある • レイヤーとして、ベースと差分を分けられる • VMの差分のみ保存され、各ストレージの共通部分は一つのブ ロックストレージに!
• 展開は爆速・実際に書き込むまで使用容量ゼロ • イメージとしてはDockerのoverlayfs
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
話すこと • 以前のストレージ構成 • Cephとは • 今回のCephの構成と容量の話 • ブロックストレージをCephに置く話 •
Cephのsnapshotの話 • 起こったトラブルの話
起こったトラブルの話 • ioDriveが認識されない • 時刻の精度を高めないといけない話 • OSDがメモリを食ってwireguardサーバーが落ちた話 • Dockerとpodmanが何故か混在した話 •
本番の日の朝にPGの数がオートスケールされることがわかった ので先にPGの数を増やした話
起こったトラブルの話 • ioDriveが認識されない • SSDのドライバがカスタムモジュール ◦ LV metadより先に読み込まれると、CephがLVMを認識 できない ◦
LV metadを無効化し、イベント的にdevice mapperを 認識するようにした
起こったトラブルの話 • 時刻の精度を高めないといけない話 • Cephは時刻の精度が0.05s以下でないとWARNを出す ◦ 最初はNTPdを立てて運用 ▪ spofになるので止めたい ◦
NICTのNTPを使ったら精度があがった ▪ ありがとうNICT!
起こったトラブルの話 • Dockerとpodmanが何故か混在した話 ◦ おそらくインストールミスでDockerとpodmanがノード で混在 ◦ podman消す && Dockerインストール
◦ → OSDとmonが自動で再展開されない ◦ →手動でreapplyして解決
起こったトラブルの話 • 本番の日の朝にPGの数がオートスケールされることがわかった ので先にPGの数を増やした話 ◦ Cephのper OSD PGが2^nを超えるとPGサイズを細分化し てリバランス ◦
→本番中に起こったらSlow OPsになりそう ◦ →今朝気づいた運営委員が事前に細分化
起こったトラブルの話 • ioDriveが認識されない • 時刻の精度を高めないといけない話 • OSDがメモリを食ってwireguardサーバーが落ちた話 • Dockerとpodmanが何故か混在した話 •
本番の日の朝にPGの数がオートスケールされることがわかった ので先にPGの数を増やした話
ご静聴ありがとうございました 質問などあればZoomで話しかけてください! もしくはTwitter (@onokatio_) まで