Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
YAMLを書くだけで構築できる分散ストレージ
Search
Satoru Takeuchi
PRO
May 21, 2022
Technology
1
510
YAMLを書くだけで構築できる分散ストレージ
kanazawa.rb #127の発表資料です
Satoru Takeuchi
PRO
May 21, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
eBPF
sat
PRO
1
88
waruiBPF
sat
PRO
0
80
eBPFとwaruiBPF
sat
PRO
4
2.5k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
0
86
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
170
様々なファイルシステム
sat
PRO
0
310
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
400
ソースを読むプロセスの例
sat
PRO
22
17k
メモリマップトファイル
sat
PRO
1
160
Other Decks in Technology
See All in Technology
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
160
Ruby で作る大規模イベントネットワーク構築・運用支援システム TTDB
taketo1113
1
220
計算機科学をRubyと歩む 〜DFA型正規表現エンジンをつくる~
ydah
3
210
Overture Maps Foundationの3年を振り返る
moritoru
0
160
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
790
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
6
620
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
210
regrowth_tokyo_2025_securityagent
hiashisan
0
180
Edge AI Performance on Zephyr Pico vs. Pico 2
iotengineer22
0
110
Karate+Database RiderによるAPI自動テスト導入工数をCline+GitLab MCPを使って2割削減を目指す! / 20251206 Kazuki Takahashi
shift_evolve
PRO
1
580
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
100
LLM-Readyなデータ基盤を高速に構築するためのアジャイルデータモデリングの実例
kashira
0
220
Featured
See All Featured
Balancing Empowerment & Direction
lara
5
790
Designing for Performance
lara
610
69k
Writing Fast Ruby
sferik
630
62k
Side Projects
sachag
455
43k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
A designer walks into a library…
pauljervisheath
210
24k
Git: the NoSQL Database
bkeepers
PRO
432
66k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Become a Pro
speakerdeck
PRO
31
5.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
How to Ace a Technical Interview
jacobian
280
24k
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はたのしいよ!