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
K8sストレージ Longhornとは?
Search
takushi
September 27, 2024
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
K8sストレージ Longhornとは?
takushi
September 27, 2024
More Decks by takushi
See All by takushi
Rancher製品 アップデート + Rancher活用例
takuhsi
0
170
Rancher v2.12 + Rancherの仕組み
takuhsi
0
590
Rancher 少しだけ Deep Dive
takuhsi
0
190
openSUSE Leap Micro as KVM and Container Host
takuhsi
0
210
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
420
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
It's Worth the Effort
3n
188
29k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Faster Mobile Websites
deanohume
310
32k
Google's AI Overviews - The New Search
badams
0
1.1k
From π to Pie charts
rasagy
0
240
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Transcript
K8sストレージ Longhorn とは? Hiroshi Nakao 1
プロフィール 中尾 拓史(Nakao Hiroshi) SUSEソフトウェアソリューションズジャパン ソリューションアーキテクト 2021年6月~ SUSE入社
Kubernetes ベースのマイクロサービス
— 高可用のkubernetesのためのソフトウェアディファインストレージ — 軽量で信頼性が高く、使いやすい仕様 — Rancherからワンクリックでデプロイ可能 — あらゆるkubernetesに対応.
— Storageに依存しない– あらゆる ext4 filesystemはLonghornクラスタをデプロイできる — NFSとS3に適応 (backup storage) — Kubernetesファーストの設計 –CRDsと controller pattern で実装 4 Longhornとは?
Key Feature • 100% open sourceのエンタープライズ向け分散 型ブロックストレージ • Rancherから1クリックデプロイが可能
• 直感的なGUIで簡単に操作可能 • スナップショットとバックアップでデータの安全性 を確保 • RPOとRTOを設定することで高速なリカバリが可 能 • Rancherで利用できる • CNCFサンドボックスプロジェクト
Longhorn要件 • Kubernetes v1.21以上 • ホストファイルシステムが、ext4、XFSをサポートしていること • RWXを利用するためにはNFSv4 Clientのインストールが必要 •
open-iscsiがインストールされていること • x86, Arm64で動作 詳しくはこちら
Longhornアーキテクチャ Manager Pod UI or Volume Plugin Engine レプリカ ボリューム作
成要求 Engine作成& レプリカ作成 読み書きを要 求 DaemonSetとして実行。クラスタないのボリューム作成と 管理を行う。 ボリュームのコントローラー。Linuxプロセス。 ボリュームごとに作成される。Sparse Fileを使用し構築さ れる。
Longhorn アーキテクチャ
Longhornレプリカ スナップショット スナップショット スナップショット 最も古いスナップショットが ベースとして使われ、差分が書 き込まれていく レプリカ ボリュームごとにレプリカが各 ノードで実行
全てのレプリカは同じ扱い 各スナップショットに indexが貼 られどれがライブデータかを探 し、読み込み、書き込みを行 う。 読み取りインデックスはメモリ 内に保持される
スナップショット スナップショット スナップショット スナップショット 最も古いスナップショットが ベースとして使われ、差分が書 き込まれていく。 全てのスナップショットを繋げ ることで現在の状態が反映
• ユーザーはスナップショットの数と定 期的な取得を設定 • ボリュームの各レプリカの一部として ローカルディスクに保存される
バックアップ • スナップショットをソースとしてバックアップを作 成 • スナップショットが作成された時点のボリューム のデータが反映 •
1つ前のスナップショットからブロックごとに上書 きがあるか、新規データ分を新規に反映
DR 2つのLonghornをインストールした、K8s環境を用意し、同じバックアップ先を指定、こ のバックアップをDRボリュームとして指定する。 バックアップ リストア
Longhorn UI
Longhorn構築方法 — Rancher UIからのインストール — Kubectlを利用したインストール — Helmを利用したインストール
Longhorn v1.7の変更点(一部) • Data v2 Engine (Preview)
• 定期的なフルバックアップ • Backing imageのHA化
Data v2 Engine IOPS
Data v2 Engine Latency
Data v2 Engine • SPDKを活用しパフォーマンスの向上 • I/Oレイテンシの短縮、IOPSとスループットが向上
• Huge pageの割り当てが必要 • V2 Data Engineを使用するとinstance-manager-podが1core CPUを占有
定期的なフルバックアップ • 左の図のようにこれまでは、初回 のバックアップのみがフルバック アップだった • N回分の増分バックアップ毎にフ ルバックアップ実行を指定可能 • フルバックアップ実行時は、ス
ループットが落ちる
Backing imageのHA化 • バックアップイメージファイルは 特定のノードやディスクに保存 • コピー数はクラスター内で複数 のバックアップイメージファイル を保持できる •
ブロック故障時にバックアップ イメージから即座にリストア可 能 バックアップ バックアップイ メージ バックアップイメージをリス トア バックアップイメージを HA化することが可能に
None
• アーキテクチャ https://longhorn.io/docs/1.7.1/ • Data v2 Engine https://longhorn.io/docs/1.7.1/v2-data-engine/
• 定期的なフルバックアップ https://longhorn.io/docs/1.7.1/important-notes/#support-periodic-and-o n-demand-full-backups-to-enhance-backup-reliability • Baking Image https://longhorn.io/docs/1.7.1/important-notes/#high-availability-of-back ing-images 22 参考URL