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
YAMLを書くだけで構築できる分散ストレージ
Search
Satoru Takeuchi
PRO
May 21, 2022
Technology
1
500
YAMLを書くだけで構築できる分散ストレージ
kanazawa.rb #127の発表資料です
Satoru Takeuchi
PRO
May 21, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
Rook: Intro and Deep Dive With Ceph
sat
PRO
0
77
会社員しながら本を書いてきた知見の共有
sat
PRO
3
760
デバイスにアクセスするデバイスファイル
sat
PRO
1
32
ファイルシステムのデータを ブロックデバイスへの操作で変更
sat
PRO
1
28
デバイスドライバ
sat
PRO
0
44
マルチスレッドの実現方法 ~カーネルスレッドとユーザスレッド~
sat
PRO
2
110
共有メモリ
sat
PRO
3
66
マルチスレッドプログラム
sat
PRO
3
55
Linuxのブートプロセス initramfs編
sat
PRO
2
75
Other Decks in Technology
See All in Technology
Copilot Agentを普段使いしてわかった、バックエンド開発で使えるTips
ykagano
1
1.4k
“プロダクトを好きになれるか“も QAエンジニア転職の大事な判断基準だと思ったの
tomodakengo
1
230
kubellが挑むBPaaSにおける、人とAIエージェントによるサービス開発の最前線と技術展望
kubell_hr
1
390
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
3
1k
Microsoft Build 2025 技術/製品動向 for Microsoft Startup Tech Community
torumakabe
1
180
SFTPコンテナからファイルをダウンロードする
dip
0
540
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
2
1.6k
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
0
110
ハノーバーメッセ2025座談会.pdf
iotcomjpadmin
0
140
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
520
AWS全冠したので振りかえってみる
tajimon
0
150
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
2
500
Featured
See All Featured
Fireside Chat
paigeccino
37
3.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
It's Worth the Effort
3n
184
28k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Writing Fast Ruby
sferik
628
61k
Visualization
eitanlees
146
16k
Side Projects
sachag
455
42k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Six Lessons from altMBA
skipperchong
28
3.8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Code Reviewing Like a Champion
maltzj
524
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Transcript
YAMLを書くだけで 構築できる分散ストレージ May 21st, 2022 Satoru Takeuchi twitter: satoru_takeuchi
概要 • Rook/CephというYAMLを書くだけで構築できる分散ストレージの紹介 • 単純なクラスタを作るデモをします • プロダクション向けRook/Cephクラスタも紹介
Cephとは • OSSの分散ストレージ • Red Hat社主体で開発 • 20年近くの歴史あり • CERN,NASAなどが大規模データを扱っている実績あり
Cephのアーキテクチャ Cephのストレージプール ブロックデバイス node ファイルシステム S3互換オブジェクト ストレージ クライアント disk disk
node disk disk node disk disk OSD OSD OSD OSD OSD OSD
Cephの難点 • 使いにくいインタフェース • やたらと多くて複雑な設定 • ゆえに管理が大変
Rookとは • Kubernetes上で動くCephのオーケストレータ • Red Hat社とサイボウズ社が中心に開発 • 生まれてから6年くらい • Kubernetes
◦ 分散コンテナアプリ実行基盤 ◦ YAMLを書くだけでアプリが動く
Rookのアーキテクチャ • YAMLを書くだけでCephクラスタが構築できる apiVersion: ceph.rook.io/v1 kind: CephCluster … spec: …
cephVersion: image: quay.io/ceph/ceph:v17 … storage: useAllNodes: true useAllDevices: true … コンテナのバージョンを変えればアップデート可能 全ノード上の全空きディスク上に OSDを作ってCephに組み込む
デモ 1. 初期状態 1.1. Kubernetesクラスタが立ち上がっている 1.2. Rook operator(オーケストレータ本体。 Cephを管理) 2.
やること 2.1. Cephクラスタを構築 2.2. Cephクラスタができているかどうか確認
プロダクション用クラスタの紹介 • 例: サイボウズの新インフラ基盤のYAMLはOSSとして公開されている ◦ https://github.com/cybozu-go/neco-apps/blob/main/rook/base/ceph-ssd.yaml • Rook/Cephクラスタの構成 ◦ 全データは3つのレプリカをそれぞれ別ラック上の
OSD(ディスク)上に持つ ◦ YAMLを一か所書き換えるだけで OSD(ディスク)を一つCephクラスタに追加 kind: CephCluster … spec: … storage: … count: 43 … OSDの数。これを増やせばクラスタに 新たにOSD(ディスク)が組み込まれる
おわり • KubernetesとかRook/Cephはたのしいよ!