23
DockerCon ’17 フィードバック + Project Longhorn Rancher JP 6 th Meetup Go Chiba @go_chiba

DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Embed Size (px)

Citation preview

Page 1: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

DockerCon ’17 フィードバック+

Project Longhorn

Rancher JP 6th Meetup

Go Chiba @go_chiba

Page 2: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

About me Go Chiba

– WorkAWS/Azure...OpenStack/CloudStack...Docker, Orchestrator, Monitoring...

– RoleRancher JP 運営メンバーGUI i18n サポート国内クラウド サポート

– ContactTwitter: @go_chiba

Page 3: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

DockerCon ’17 Feedback

Page 4: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Ref: https://www.slideshare.net/gchiba/dockercon-17-feedback-at-paas-jp

Page 5: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
Page 6: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Longhorn コンテナ向け分散ブロックストレージ

管理コンポーネントはコンテナとして動作

まだプロトタイプ段階であり商用環境での利用は不可→ 今年後半には商用グレードになる予定

Page 7: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Features

コントローラー per ボリューム

レプリカスケジューリング

コンポーネントはコンテナとして動作

スナップショット/バックアップ(w/ スケジューリング)

Page 8: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Components UI

Longhorn の Web UI を提供

ManagerLonghorn におけるオーケストレーション部担当、KVSを経由してボリュームの状態等を管理

DriverDocker 用ボリュームプラグインの管理(?)

Controllerボリューム毎に存在しiSCSIのターゲットとして動作バックエンドにレプリカを持つ

Replicaボリューム毎に指定したレプリカ数だけ存在、実ボリュームに関するスナップショットやメタデータ等を管理

Page 9: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Architecture - Control Plane -

Page 10: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Architecture - Data Plane -

Page 11: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Workflow

Page 12: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Physical Network

1. Create Overlay Networklonghorn-net(overlay)

docker0 gwbridge docker0 gwbridge

Page 13: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

etcd

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

2. Deploy etcd

Page 14: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

UI etcdmanager

manager

driver UI

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

3. Deploy Longhorn Component

driver

Page 15: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

LHC etcdLHR LHRUbuntu UI

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

LHC: Longhorn Controller

LHR:Longhorn Replica

4. Deploy with longhorn driver

Page 16: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

LHC etcdLHR LHRUbuntu UI

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

LHC: Longhorn Controller

LHR:Longhorn Replica

More Details...

/dev/longhorn/vol1

iSCSI

Page 17: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

LHC etcdLHR LHRUbuntu UI

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

LHC: Longhorn Controller

LHR:Longhorn Replica

More Details...

/dev/longhorn/vol1→ /var/lib/rancher/volumes/longhorn/vol1

iSCSI

Page 18: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

LHC etcdLHR LHR UI

docker0 gwbridge docker0 gwbridge

longhorn-net(overlay)

Physical Network

LHC: Longhorn Controller

LHR:Longhorn Replica

More Details...

Ubuntu

iSCSI-v vol1:/vol1

/dev/longhorn/vol1→ /var/lib/rancher/volumes/longhorn/vol1

Page 19: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Working today... Swarm クラスタ上で分散ボリュームの作成、作成したボリュームの利用

レプリカの障害検知およびリビルド

スナップショット/バックアップの作成、およびそれらのスケジューリング

GUI と API の提供

Page 20: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Upcoming Kubernetes flexvolume 向けドライバ

Rancher 連携(Longhorn クラスタをカタログからデプロイ)

コントローラー、レプリカのオンラインアップグレード

イベントログ(e.g. レプリカがリビルドされた)

S3 へのバックアップ(コード自体は既に存在しているが API キー等の管理方法を検討中)

Page 21: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Upcoming ディスク容量や IOPS に基づいたレプリカのスケジューリング

現在の実装はシンプルなアンチアフェニティベースでホストを選出

単一ホストにおける複数ディスクサポート

ボリュームに関する統計情報(スループット, IOPS等)

Longhorn UI や API における認証とユーザー管理

ボリューム暗号化

パフォーマンスチューニング

Page 22: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Summary とりあえず動く(Swarmで!)多分 Cattle でも動くけど試せてない

Document もそんな無いコード読むっきゃない

まだまだ実験段階要望があるなら今のうち!!

Page 23: DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP

Thank you!!