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
Rook-CephでExternal Clusterを利用する
Search
FY0323
March 27, 2020
Technology
5.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rook-CephでExternal Clusterを利用する
Japan Rook Meetup #2 発表資料
FY0323
March 27, 2020
More Decks by FY0323
See All by FY0323
ブログ勉強会_20200804
futayamaji
0
770
Other Decks in Technology
See All in Technology
分割40%キーボードにスムーズに入門するには
hoto17296
1
180
dbt と Snowflake と tag
kevinrobot34
2
290
Microsoft MVP プログラムを紹介するから目指す人増えてくれ
tsubakimoto_s
0
140
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
130
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
180
1000⼈規模のClaude Enterprise運⽤を「Oktaのグループ」と「Slack」に集約する
sansantech
PRO
1
500
dbt in Microsoft Fabric
ryomaru0825
0
300
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
[RSJ26] Flow as Flow: Modeling Robot Velocity Fields as Probability Velocity Fields
keio_smilab
PRO
0
110
AIレビュー時代に必要なのは、SLOで引く撤退ライン
nobuoooo
0
150
本番に近いテストをもっと手軽に - Postmanで広がるAPIテストの世界 / Expanding the World of API Testing with Postman
yokawasa
1
130
パスキーでドライブする アカウント統合(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
360
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
400
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
The Curious Case for Waylosing
cassininazir
1
480
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
260
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
480
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
490
Become a Pro
speakerdeck
PRO
31
6.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
530
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
57k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Transcript
Rook-Cephで External Clusterを利用する Japan Rook Meetup #2 株式会社エーピーコミュニケーションズ 山路 風太
自己紹介 • 名前:山路風太 • 所属:株式会社エーピーコミュニケーションズ • 業務:サーバーの設計・構築がメイン • SNS: -
twitter:@FUTA_0203 - ブログ:https://techstep.hatenablog.com/
本日お話しすること • Rook-Ceph External Clusterの概要 • Rook-Ceph External Clusterの利用方法
1. Rook-Ceph External Clusterの概要
Rook-Ceph External Clusterとは • Rook-Cephを構築したクラスター外に存在する、Cephクラスターのスト レージリソースを利用すること - Local:ストレージを利用するアプリケーション側( Kubernetes/Openshift) -
External:ストレージリソースを提供する側 Local External
本機能が登場した背景 • External ClusterはRook ver 1.1から利用できる - もともとRook-Cephは、アプリケーションの動作する Kubernetesクラスター内のストレージリ ソースを利用するよう設計されている
• 一部ユースケースに対応するために開発された - 既存のCephクラスターをKubernetesから利用する場合 - 1つのCephクラスターのリソースを複数のKubernetesから利用する場合 - Kubernetesクラスターとストレージリソースとを分離したい場合
2. Rook-Ceph External Clusterの利用方法
Rook-Cephクラスター構築(通常時) 通常は3つのyamlファイルをデプロイすればCephClusterが構築できる 1. kubectl apply -f common.yaml 2. kubectl apply
-f operator.yaml 3. kubectl apply -f common-external.yaml 4. ConfigMap/Secretリソースの作成 - Namespace / FSID / admin secret / MON endpoint - ./import-external-cluster.sh 5. kubectl apply -f cluster.yaml 3.
クラスター構築後の状態(通常時) Operator Discover csi-plugin / provisioner Local Discover csi-plugin /
provisioner Discover csi-plugin / provisioner MON MON MON OSD OSD OSD CephCluster
Rook-Cephクラスター構築(External Clusterを利用) External Cluster利用時は、外部Cephクラスターの情報を渡す必要がある 1. kubectl apply -f common.yaml 2.
kubectl apply -f operator.yaml 3. kubectl apply -f common-external.yaml 4. ConfigMap/Secretリソースの作成 - export Namespace / FSID / admin keyring / MON endpoint - bash import-external-cluster.sh 5. kubectl apply -f cluster-external.yaml
クラスター構築後の状態(External Clusterを利用) • Local Cluster側にはOSD / MON / MGR Podが存在しない
• CephClusterは「Connected」状態になる
クラスター構築後の状態 OSD MON External Local Connected Operator Discover csi-plugin /
provisioner Discover csi-plugin / provisioner Discover csi-plugin / provisioner MON MON MON OSD OSD OSD CephCluster
External Cluster利用方法(RBD) • ストレージの利用方法は、Local Cluster利用時と同様 1. kubectl apply -f cephblockpool.yaml
2. kubectl apply -f storageclass.yaml 3. kubectl apply -f pvc.yaml 4. kubectl apply -f pod.yaml • External Cluster側は自動的にPoolが作成される - Rook-Ceph以外の方法(rbd-provisionerなど)では、External Cluster側でPoolをあらかじ め用意する必要がある - ストレージリソースを用意する際、 Local Cluster側の操作のみで完結する
External Cluster利用時の注意事項 • いくつかの前提条件を満たす必要がある - External Cluster側にMON Endpointが存在する - Admin
keyring情報を取得済みである - External Cluster側のリソースに対するネットワーク疎通が可能である - External Cluster側のCephバージョンが条件を満たす - Ceph Nautilusがminimum support(v1.2の場合) • v1.2.4以前の場合、“rook-ceph-csi-config”というConfigMapを修正する必 要がある - clusterID / MON endpointの情報を含む - v1.2.4以前では、クラスター構築後に手動で追加しなければならない( PVC / Pod等の構築 が失敗する)
参考リンク • Rook Doc - Ceph Cluster CRD #External Cluster
- https://rook.io/docs/rook/v1.2/ceph-cluster-crd.html#external-cluster • GitHub - Rook and External Ceph Clusters - https://github.com/rook/rook/blob/master/design/ceph/ceph-external-cluster.md • GitHub Issues - External CLusters are not populated to configmap rook-ceph-csi-config # 4816 - https://github.com/rook/rook/issues/4816