ストレージチーム spin-off! / Storage team spin-off!
by
Cybozu
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
ストレージチーム spin-off! 2021/03/18 サイボウズ株式会社 Cloud Storage Agency 深⾕ 敏邦
Slide 2
Slide 2 text
2 1. スケーラビリティがない 2. アプリチームの本番アクセス権限がない 今のcybozu.comのストレージに関する問題点
Slide 3
Slide 3 text
3 • 現在は顧客をシャーディングして管理 • 顧客環境が増えるに従い管理対象が増えて負担が増す • 顧客の活⽤度が⾼まると性能や容量が不⾜する スケーラビリティがない … 😢 😊 😊 😊 😊 😊 😊 😊 😊 😊 😊 😊 😊 管理 ストレージシャード テナント
Slide 4
Slide 4 text
4 • インフラを提供しているのはSREチーム • デプロイを含め本番に触れるのはSREチームのみ • アプリ開発者は障害時に⼀時的な対応や緩和策を実施できない • アプリ固有の監視を⾏うのが難しい アプリチームの本番アクセス権限がない
Slide 5
Slide 5 text
5 1. Rook/Cephによるスケーラブルなストレージ 2. Kubernetesによる管理者とユーザーの分離 Necoによって得られるもの
Slide 6
Slide 6 text
6 • CephはOSSによるスケーラブルなSDS • ディスクを追加することで性能・容量をスケーラブルに増やせる • CERNでは2017年当時で数百PBのクラスターを運⽤ • RookはCephをKubernetes上で管理するためのoperator • CRを通じて必要なデーモンを⾃動的にデプロイ • 故障したデーモンを⾃動的に再構築してくれる Rook/Cephによるスケーラブルなストレージ
Slide 7
Slide 7 text
7 • KubernetesはRBACによってユーザー権限を細かく設定可能 • ストレージに関するリソースが分離されている • 管理者がStorageClassによってストレージを提供 • ユーザーはPersistentVolumeClaimによってストレージを利⽤可能 • アプリ開発者に強い権限を渡すことなく、本番にアクセスさせ ることができる Kubernetesによる管理者とユーザーの分離
Slide 8
Slide 8 text
8 • Rook/Cephによるスケーラブルなストレージ Rook/Ceph⾃体が壊れたら? • Kubernetesによる管理者とユーザーの分離 管理者はユーザーのニーズを把握できるのか? ユーザーは道具をうまく使えるのか? 新たな課題
Slide 9
Slide 9 text
9 1. 使うものに責任を持つ 2. アプリチームとの協⼒ 専任チームの意義
Slide 10
Slide 10 text
10 • Rookはまだまだ若いソフトウェア • まだまだ不具合はたくさんある • ⾃分たちに必要な機能がないこともある • 必要ならupstreamにて対応 • Cephでさえ検証するとドキュメントと異なる挙動が⾒つかる 使うものに責任を持つ
Slide 11
Slide 11 text
11 • 利⽤者が必要としているものを提供する • 書き込みよりも読み込みが重要かもしれない • バーストできるよりもフェアネスが重要かもしれない • 利⽤者が正しい⽅向に⾏けるようにサポートする • パフォーマンスの出る使い⽅を案内する • これからのやっていき! アプリチームとの協⼒
Slide 12
Slide 12 text
12 • 現⾏ストレージの問題点 • スケーラビリティが低い • 開発者の本番アクセス権限がない • Necoでのストレージ • スケーラビリティの確保 • 権限の分離 • 専任チームの意義 • 提供物に責任を持つ • 協⼒体制の構築 まとめ