OpenStack 最新動向
2017/9
日本OpenStackユーザ会
吉山あきら
本資料はSlideShareにて公開しています。
http://www.slideshare.net/yosshy/
目次
● OpenStack って何?
● OpenStack って何が良い?
● OpenStack の近況
– OpenStack Pikeリリース
● OpenStack って何が良くない?
● OpenStack って誰が作ってる?
● OpenStack って誰が使っている?
OpenStack って何?
OpenStackとは
クラウド基盤ソフトウェアを開発するプロジェクトです。
– 似ているシステム
● Amazon Web Services (AWS)
● Google Compute Engine
● Microsoft Azure
– 似ていない点
●
上記は「クラウドサービス」
● OpenStack は「クラウドサービス基盤ソフトウェア」の
開発プロジェクト
クラウドサービス
そもそもクラウドって何?
ざっくり言うと
●
ネットワーク経由で
遠隔の計算機リソースを
●
ユーザーが自分自身で
確保・管理する
コンピュータの利用形態
一般的なIaaS、PaaS等は外部
システムが操作しやすいAPIを
持つのが特長
↓
構築・運用が自動化された
システムに最適なインフラ
ク
ラ
ウ
ド
ユーザー
Web
API外部
システム
旧来のホスティングサービス
VPS
ユーザー
Web
OpenStack って何が良い?
プロジェクトがオープン
● 多数のIT企業やユーザ組織、個人が開発に参加
– 1つの主要開発元企業が開発を主導するプロジェクトでは
ありません。
– 各種プロジェクトリーダーはOpenStackで開発実績のある
人なら誰でも立候補でき、現役の開発者全員による選挙で
選ばれます。
– 各種資産管理は非営利団体(OpenStack Foundation)が
やっています。
プロジェクトがパワフル
●
開発コミュニティが巨大
– 最新安定版(Pike)の開発コミュニティ
開発者数:1,825人(-100)
● 開発プロジェクトが59個(-1)
– リポジトリ:990個(-59)
– サービス基盤:30、運用基盤:8
– インストーラ:2(-1)、パッケージ化:3、レシピ:4
– Big Tent(後述)入りしていないプロジェクトも多数あります。
●
半年に一度、新バージョンをリリース
– 最新の安定版は Pike リリースです。
– 現在の開発版は Queen リリースです。
2018年2月末頃正式リリース予定です。
更新
※カッコ内は前回(Ocataリリース)との比較
OpenStack Foundation 支援組織
● プラチナ8社、ゴールド23社(+1)、企業スポンサ112社
– 総合ITベンダー
●
IBM, HP Enterprise, DELL/EMC, Ericsson, 富士通, 日立, Huawei, NEC, Oracle, Lenovo, ZTE
– 特化型ITベンダー
● Intel, Nokia、Ericsson
●
NetApp, Nexenta, SolidFire, SanDisk, WD, 他
●
Cisco, Juniper, Arista, Brocade, A10, F5, PLUMGrid, Midokura, 他
● Canonical(Ubuntu), Red Hat, SUSE, Wind River, 他
●
Aptira, InwinSTACK, Mirantis, EasyStack, CloudBase, SwiftStack, 他
●
Symantec, Virtuozzo, Veritas, VMware, 他
– ネット企業
●
Rackspace, DreamHost, Yahoo!, NTTコミュニケーションズ, PayPal, GoDaddy,
Google Cloud Platform, 他
– テレコム
●
AT&T、China Mobile、China Telecom、DT、Telefonica, Verizon
– 学術組織
● CERN, 他
●
支援組織多数
http://www.openstack.org/foundation/companies/
更新
ソフトウェアがオープン
● プロジェクトの成果物は100% OSS
– Apache ライセンスで企業も使いやすい
● GNU GPLのような制約がありません。
●
自社製品に組み込みやすいです。
– サービス基盤はもちろん、運用系などの周辺機能も
全てOSS
● 中心機能だけOSS、他は商用というオープンコア戦略では
ありません。
– Python というスクリプト言語で開発
● 一部例外があります(Go言語、JavaScript等)
●
クローズソース化に向いていません。
更新
ソフトウェアがスケーラブル
●
小規模〜大規模システムまで対応
– サービス単位で分割されたコンポーネントの集合体で
構成されています。
● コンポーネント間は基本的に REST API による粗結合です。
(一部AMQPなど例外があります)
●
遠隔サイト間でのコンポーネント連携も可能です。
– 各コンポーネントもスケーラブルな分散システムに
なっています。
●
サーバ台数を増やす事で容量や性能を向上しやすいです。
(スケールアウト)
➔「スモールスタート」に適しています。
OpenStackの近況
OpenStackコミュニティ動向
● OpenStackの開発は相変わらずパワフル
– 最新安定版(Pike)を8/31にリリースしたばかり。
– 運用支援系(Congress, Watcher, Vitrage)が今後流行るかも。
● 世界的に「Kubernetes on OpenStack」が流行
– 将来的に OpenStack 自体の PaaS 機能は需要がないかも。
– でも IaaS 方面で頑張ります。
●
公式プロジェクト
– 「Big Tent」の呼称をやめました。
– FUSE(インストーラ)が外れました。
– Gnocchi(時系列DB)も外れました。
– Masakari(ホストHA/VM HA)が入るかも?
●
不要なものや複雑なものを削っていく方針
● Python3 対応作業中(今々 Python 3.5)
新規
OpenStack Pikeリリース
https://releases.openstack.org/pike/schedule.html
Pike リリースサイクル(6ヶ月)
OpenStack
Project Team Gathering
2017/2/20〜24
開発マイルストーン
#1
2017/4/19
開発マイルストーン
#2
2017/6/9
開発マイルストーン
#3
2017/7/28
リリース候補
#1〜#3
2017/8/7〜
安定版リリース
2017/8/31
7週間
8週間
7週間
2〜4週間
1週間
2週間
更新
OpenStack
Summit Boston
2017/5/8〜12
OpenStack 主要コンポーネント群(Pike)
IaaS系
ネットワーク
IaaS
物理マシン
コンテナ
ストレージ系
オブジェ
クト
VM
テンプレ
ボリューム
ファイル
システム
バックアップ
PaaS系
ビッグデータ
DBaaS
DNSaaS
メッセージ
キュー
メッセージ
キュー2
ジョブ
ワークフロー
基盤運用系
正常性
テスト
フロントエンド系
自動
構築
監視
App
カタログ
オート
スケーラー
課金
サービス
統制管理 認証
計測
リソース検索 鍵管理
VM
負荷分散
障害
原因分析
バックアップ2
リージョン間
ネットワーク
連携
Web
Pikeリリースの主要な強化ポイント
● Nova Cells v2
– 複数セル構成が可能に
● Python 3.5 アップグレード
– 全プロジェクトで Python 3.5 に対応
● etcd の活用
– OpenStack 用の分散ロック管理機構として etcd v3 使用を開始
● Ironic 物理マシン管理サービスの成熟
– 仮想NW強化(サーバ払出し後の仮想NW接続/切断)
– ボリューム起動 ※制約あり
– ローリングアップグレードに対応
● Cinder スナップショット復元、接続中ボリューム拡張
● Swift オブジェクトストレージの遠隔 Erasure Code 対応
– リージョン間NWがダウンした場合でも、個々のリージョンは変わらず利用
可能。また、1リージョンの故障の復旧に別リージョンを利用可能に
実行基盤
セル1
制御基盤
RPC
実行基盤
セル2
実行基盤
セル3
制御基盤
RPC
制御基盤
RPC
制御基盤
Nova Cells v2
REST API
「REST API:OpenStackリージョン」の関係を従来の「1:1」から「1:n」 に
したような構成。Newton以降、Cells v2はデフォルトで使用される。
Pikeで複数セル構成が可能になったが、周辺コンポーネントとの連携を
考えると、複数セル構成は次のQueenを待った方が無難か?
更新
ユーザー
実行基盤
リージョン3
制御基盤
実行基盤
リージョン2
制御基盤
実行基盤
リージョン1
制御基盤
OpenStackリージョン
REST API REST API REST API
複数のOpenStackリージョン(1つの管理基盤・APIで管理される
OpenStack基盤一式)から1つをユーザが選択してAPIにアクセスする。
OpenStackリージョン間でVM管理等のIaaSリソースは連携しない。
ユーザー
物理マシンIaaSの強化
●
主要な物理マシン管理機能
– サーバの電源ON、強制電源OFF、強制再起動(ハードリブート)、
OSシャットダウン、ソフトリブート、メモリダンプ(NMI)
– サーバ提供時のOSインストール
– サーバ提供時の仮想ネットワーク接続、NIC冗長化
– シリアルコンソール表示・操作
● Pikeでの新規機能
➔ 仮想ネットワークへの動的な接続・切断
➔ Cinder ボリュームブート ※仮想ネットワークと併用不可
➔ ローリングアップグレード対応
パブリック/プライベートクラウドにおける
物理マシンIaaS実現に更に近づいた
更新
ローリングアップグレード対応状況
●
対応済み
– Nova
– Swift
– Cinder
– Glance ※技術プレビュー
– Neutron
– Keystone
– Ironic
●
不要
– Horizon
●
未対応
– Magnum
– Manila
– Heat
– Murano
– Monasca
– Senlin
– Sahara
– Zaqar
●
不明
– Ceilometer
– Panko
– Trove
新規
New
赤字:新規機能(従来 ボリューム拡張はVM切断状態のみ)
Nova
VM
Cinder
Glance
Cinderボリューム操作
ボリューム
仮想ディスク
テンプレート
Swiftスナップショット
ボリューム
接続/切断
作成 
作成
作成
作成
作成
  復元  
作成    
   復元作成
  拡張
 作成
オブジェクト
(ボリューム 
 バックアップ)
新規
削除
削除
OpenStack って何が良くない?
インストールが難しい
● OpenStackは多数のコンポーネントで構成されており、
設定もコンポーネント分必要
● OpenStackは長い間公式のインストーラが無かった
➔
ここしばらくで改善されてきました。
– RDO の packstack は使いやすいです(冗長構成はTripleO使用)。
– OpenStack 環境構築用の Puppet Manifest, Chef Recipe、
Ansible Playbook、Juju Charmがあります。
– OpenStack 環境をDocker(Kubernetes)で作る
Kolla プロジェクトがあります。
– Mirantis社製のインストーラ「Fuel」があります。
OpenStackの公式プロジェクトでなくなりました。
– 商用OpenStackディストリビューターはそれぞれインストーラーを
持っています。
新バージョンの目玉機能がない事がある
●
半年毎に新バージョンをリリースしている
=新機能毎に新バージョンをリリースしているのではない
ので、特に目玉機能が無いリリースが存在
●
半年間の開発期間のだいたい1回めの開発マイルストーンに
仕様策定が間に合わなかった新機能は先延ばし
●
半年間の開発期間の3回めの開発マイルストーンに
実装が間に合わなかった新機能は先延ばし
– 例外が認められる事もあります(FFE)。
●
複数のコンポーネントが関係する新機能の投入タイミングが
ずれる事が多々あり、新機能が整うまでに1年以上かかる事も
●
開発者がオープンな議論の上で今後の開発の方向性を決める
ので、単一企業の開発に比べて開発方針決定が遅い
コンポーネントによっては開発速度が遅い
●
オープンな議論で今後の開発の方向性を決めるので、
単一企業の開発に比べて開発方針決定が遅い
●
クラウド基本機能から周辺機能に開発を広げてきたため、
PaaS、監視サービス系、運用系等は現状未熟
●
各社は自社に関連するコンポーネントを開発するので、
関連企業が少ないコンポーネントの開発者が少ない事が
ある
– 開発が滞ったプロジェクトはオフィシャルプロジェクトから
外されます。
●
各プロジェクトの完成度を確認する「プロジェクトナビゲーター※」
(次頁)
※http://www.openstack.org/software/project-navigator
プロジェクトナビゲーター①
更新
プロジェクトナビゲーター②
更新
機能が一部イマイチな所がある
●
機能構成がスッキリしていない所がある
– 増築を続けた旅館のように機能拡張を続けた結果、
設計や仕様に一貫性のない箇所が一部あります。
●
イマイチな機能を作り直す事が結構ある
– IaaS基盤など、古くからあるコンポーネントほど作り
直された箇所は多いです。
– 機能を作り直した結果、古い機能が段階的に廃止される
事も結構あります。
– REST API を作り直したけどコミュニティに受け入れられず、
廃止した事もあります。
OpenStack って誰が作ってる?
Pikeでの開発貢献度
http://stackalytics.com/?release=pike&project_type=all
更新
OpenStack って誰が使ってる?
主要海外事例
●
金融
– Bloomsburg, VISA, FICO,
中国郵政儲蓄銀行,
●
工業
– BMW, フォルクスワーゲン,
インテル
●
学術
– CERN, 天河二号
●
ネットビジネス
– CIsco(WebEx), eBay,
エスクペディア, PayPal,
ウォルマート, Yahoo!
●
パブリッククラウド※
– Auro, citynetowrk, Cloud&Heat,
CLOUDSUITE, Cloudwatt,
DataCenterd, DreamHost,
Dualtec, ELASTX, INTERNAP,
KIO, NUMERGY,
Deutsche Telekom, OVH,
rackspace, teutoStack, Ukcloud,
ULTINUM, UnitedStack,
VEXXHOST,
●
放送
– コムキャスト,
タイムワーナー・ケーブル,
●
テレコム
– AT&T, SKテレコム, KT,
ドイツテレコム, チャイナテレコム,
ベライゾン
※http://www.openstack.org/marketplace/public-clouds/
主要国内事例 ※アルファベット順
●
富士通
● GMOインターネット
● NEC
● NTTコミュニケーションズ
● NTTドコモ
● NTTレゾナント(Goo)
●
沖縄オープンラボ
●
サイバーエージェント
●
楽天
● Yahoo! Japan
まとめ
OpenStack とは
●
オープンでパワフルな
クラウド基盤開発プロジェクト
●
オープンでスケーラブルな
クラウド基盤ソフトウェア群
●
国内外の事例多数
– 金融、ネットビジネス、ホスティング、放送、テレコム、
工業…
●
課題も
➔開発者募集中!
特にコードレビューする人募集中!
参考
● OpenStack
– http://www.openstack.org
● Pike リリーススケジュール
– https://releases.openstack.org/pike/schedule.html
● Stackalytics
– http://www.stackalytics.com/
●
ロードマップ
– http://www.openstack.org/software/roadmap/
●
プロジェクト一覧
– http://git.openstack.org/cgit/openstack/governance/tree/reference/
projects.yaml
●
プロジェクトチーム
– https://wiki.openstack.org/wiki/Project_Teams
参考(続き)
● The OpenStack Blog: OpenStack Technical Committee Update
– http://www.openstack.org/blog/category/technical-committee-updates/
● OpenStack Summit Tokyo 2015
– https://www.openstack.org/summit/tokyo-2015/
● OpenStack Days Tokyo 2015
– http://openstackdays.com/
● OpenStack Newton Release
– http://www.openstack.org/software/newton/

201709 osc josug