magnum - a new openstack api for containers -
Post on 16-Apr-2017
2.145 Views
Preview:
TRANSCRIPT
Magnum A new OpenStack API for Containers
自己紹介
金子�雄大(@tktk8924)
伊藤忠テクノソリューションズ株式会社
OpenStackに関連する仕事をしています
日本酒が大好きです
本日の内容
• とあるAPIについて調べたのでご紹介します
• APIを使ってこんなすごいもの作りました!という話ではありません
• 「夏だ!祭りだ!APIデモ祭りだ!!」ということなので、デモはやります!
使ってますか??
使ってますか??
Magnum
on
• KubernetesやDocker Swarmといったコンテナオーケストレーション(クラスタリング)エンジンを利用可能にするOpenStack API
テナント専用のコンテナクラスタが簡単にデプロイできる
! "
Tenant A Tenant B
Tenant C
Magnum API
! "
! "
デモ: Kubernetesクラスタ作成
Magnum API リソース
• baymodel (クラスタの設計図) • bay (クラスタの単位) • node • pod • rc (replication controller) • service • container
の影響大
Magnumコマンド
$ magnum bay-create --name k8sbay --baymodel k8sbaymodel —node-count 2
Bay(クラスタ)作成
$ magnum pod-create --manifest ./redis-master.yaml --bay k8sbay
Pod作成
$ magnum service-create --manifest ./redis-sentinel-service.yaml --bay k8sbay
Service作成
$ magnum rc-create --manifest ./redis-controller.yaml --bay k8sbay
Replication Controller作成
Magnum APIでできること
•ユーザ認証、権限管理(OpenStack Keystoneと連携)
• マルチテナント化(テナントごとに専用のクラスタが作れる)
• Kubernetes/Swarmクラスタの構築
• Magnum API経由でのKubernetes/Docker APIの操作
+と来れば、MagnumはPaaSなのか?という発想になる(単純)
PaaSに必要な機能と比較してみる
@jacopenさんのスライドから拝借
• ユーザ認証、権限管理
• コードのバージョン管理
• コードからのデプロイ
• ロギング
• アプリケーションのメトリクス取得
• コンテナの管理
• コンテナの実行
○␣
−
−
−
−
○␣
○␣
PaaSに関係ありそうな今後実装予定の機能
• ローカルにDocker Registryを作成
• WebUIからMagnumを操作 今のところこれくらいしかないかな…
https://blueprints.launchpad.net/magnum
いわゆるPaaSを目指しているわけではなさそう。 コードからデプロイしたければ、Git、CIサーバ等が別途必要。 OpenStackリソースの新たな選択肢としてコンテナ(というかDocker)が増えたという認識が正しいのかもしれない。
デモ: マルチノードRedis
kube-master
kube-minion kube-minion
redis-master
redis-sentinel
redis-slave
redis-sentinel
https://github.com/openstack/magnum/blob/master/doc/source/dev/dev-quickstart.rst
Replication Contorlooer
Replication Contorlooer
Service
Magnumを動かしてみたい方へ
• Devstackで簡単にインストール可能
• local.conf
• https://gist.github.com/tktk8924/a9580840db0865246414
• HOST_IPだけ修正
• ubuntu14.04 LTS で動確済み
まとめ
• Magnumはコンテナオーケストレーション(クラスタリング)エンジンを利用可能にするOpenStack API
• テナントごとの専用コンテナクラスタが簡単に作成できる
• VM、BareMetalに加え、コンテナという選択肢をOpenStackユーザに提供する
• いわゆるPaaSを作るためのものではない…っぽい(今後も要調査)
参考資料
• https://wiki.openstack.org/wiki/Magnum
• https://github.com/openstack/magnum/blob/master/specs/containers-service.rst
• https://github.com/openstack/magnum/blob/master/doc/source/dev/dev-quickstart.rst
• https://blueprints.launchpad.net/magnum
top related