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
510
YAMLを書くだけで構築できる分散ストレージ
kanazawa.rb #127の発表資料です
Satoru Takeuchi
PRO
May 21, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
ソースを読むプロセスの例
sat
PRO
13
6k
メモリマップトファイル
sat
PRO
1
61
「Linux」という言葉が指すもの
sat
PRO
4
190
APIとABIの違い
sat
PRO
5
150
ファイルシステムへのアクセス方法
sat
PRO
0
54
ファイルシステム
sat
PRO
1
56
低レイヤソフトウェア技術者が YouTuberとして食っていこうとした話
sat
PRO
7
6.1k
ポーリングと割り込み
sat
PRO
1
110
Rook: Intro and Deep Dive With Ceph
sat
PRO
1
150
Other Decks in Technology
See All in Technology
AI時代こそ求められる設計力- AWSクラウドデザインパターン3選で信頼性と拡張性を高める-
kenichirokimura
3
320
20251010_HCCJP_AdaptiveCloudUpdates
sdosamut
0
130
コンテキストエンジニアリング入門〜AI Coding Agent作りで学ぶ文脈設計〜
kworkdev
PRO
2
1.3k
能登半島地震において デジタルができたこと・できなかったこと
ditccsugii
0
220
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.5k
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
580
AWS Top Engineer、浮いてませんか? / As an AWS Top Engineer, Are You Out of Place?
yuj1osm
2
210
OCI Network Firewall 概要
oracle4engineer
PRO
2
7.9k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.8k
LLMアプリの地上戦開発計画と運用実践 / 2025.10.15 GPU UNITE 2025
smiyawaki0820
1
570
防災デジタル分野での官民共創の取り組み (2)DIT/CCとD-CERTについて
ditccsugii
0
300
20251014_Pythonを実務で徹底的に使いこなした話
ippei0923
0
200
Featured
See All Featured
It's Worth the Effort
3n
187
28k
GitHub's CSS Performance
jonrohan
1032
470k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Agile that works and the tools we love
rasmusluckow
331
21k
How to Think Like a Performance Engineer
csswizardry
27
2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fireside Chat
paigeccino
40
3.7k
Leading Effective Engineering Teams in the AI Era
addyosmani
6
440
Writing Fast Ruby
sferik
629
62k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
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はたのしいよ!