open
stack
Open source software to build public and private clouds.
Interop2014
OpenStackの概要と最新技術動向
2014.6.13自己紹介
中島倫明 @irix_jp
– 日本OpenStackユーザ会 所属 • 会長 – 一般社団法人クラウド利用促進機構 • 技術アドバイザー 2 好評発売中 KADOKAWA/アスキー・メディアワークス OpenStack入門SDI Showcase
3
はじめに
ユーザ会の紹介
日本OpenStackユーザ会
国内でのOpenStackの普及活動・人材育成を目
的に2010年に発足
– 運営団体数 22(一般企業、学術機関等) – 会員数 1,045名(2014/4/15時点) http://openstack.jp/ 5日本OpenStackユーザ会
OpenStack Foundationと正式に連携したローカ
ルコミュニティの一つ
– 日本は世界で最も活発なコミュニティの一つです。 6 http://www.openstack.org/community/日本OpenStackユーザ会
主な活動
– メーリングリストでの情報交換 – イベント開催、勉強会、セミナーの開催 – オープンソースカンファレンス出展 – 国際化(マニュアル翻訳、UI日本語化) 7OpenStack Days
http://openstackdays.com/ 8
OpenStack Days
参加してみよう!
OPENSTACKとは
概要
OSSで開発されるCloudOS
12
OpenStackがターゲットとする領域
業務アプリ (会計、CRM等) OS,ミドルウェア等 CPU,MEM DISK,NW等 SaaS PaaS IaaS 業務ロジック アプリ実行環境 IT実行リソース 構 成 要 素 種 別 に よ る カ バ ー 範 囲 の 差ここ!
13OpenStackのリリース状況
14 Austin Bexar Cactus Diablo Essex Folsom Grizzly Havana Icehouse 10/21/'10 02/03/'11 04/15/'11 09/22/'11 04/05/'12 09/27/'12 10/17/'13 04/04/'13 version description Austin Nova/Swift 初期リリース Bexar Glance実装。Nova/Swift連携可能に。 Cactus VMware, LXC対応等の機能強化 Diablo スケジューラー、レプリケーション等の機能追加 Essex Keystone/Horizon追加。 Folsom Neutron(当時はQuantum)/Cinder追加 Grizzly 対応HyperVisor, Storageの追加、機能強化 Havana Heat/Ceilomter追加 Icehouse Trove追加 04/17/'14 Juno 10/XX/'14 リリースノート(日本語) https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaOpenStackの機能イメージ
15
Nova Glance Cinder Swift
Neutron Ceilometer 統計情報の収集・アラート発信 仮想ネットワーク制御 ハイパーバイザー制御 プロビジョニングベアメタル SnapShot管理イメージ ストレージ制御ブロック オブジェクトストレージ Keystone 認証・認可 Heat オーケストレーション Trove DBaaS
Horizon OpenStack API
VPNaaS
L3
L2/LBaaS
FWaaS
ソフトウェアの特徴
16 オープンソースのクラウド基盤ソフトウェア Apache2ライセンス 世界各国から多数の 企業・開発者が参加 仮想サーバ、ストレージ、仮想NWをはじめ、 様々な機能を搭載(一部PaaSの機能も) 物理環境を隠蔽し、標準化されたITインフラ OpenSource World Wide IaaS Standardization http://www.openstack.org/プロジェクトの特徴
多数のスポンサー企業による強固な運営基盤と、
Foundationによる中立維持
安定した開発・ユーザーコミュニティの支援体制
17 Platinum Members http://www.openstack.org/foundation/companies/実装面での特徴
Pythonで実装
豊富な機能
– 仮想マシン、物理マシン – ネットワーク(L2, L3, L7, セキュリティ) – ブロックストレージ、オブジェクトストレージ – イメージ管理、スナップショット管理 – マルチテナント 等々 マイクロコントローラー構造
– 機能単位でコンポーネントが分離し、独立動作 プラグイン・ドライバー構造
– 制御対象を自由に組合せ可能 18構造的な特徴
19 OpenStack (nova, neutron等) KVM用 ドライバ ドライバXen用 商用製品用ドライバKVMサーバ Xenサーバ Hyper-VサーバVMwareサーバ OpenStack API
Amazon互換API
ユーザやプログラムは、
OpenStackの利用方法だけを 知っていれば環境の操作が可能
操作イメージ
操作イメージ
操作イメージ
22
#!/usr/bin/env python
from novaclient.v1_1 import client nt = client.Client("demo", "openstack", "demo", "http://11.22.33.44:5000/v2.0", service_type="compute") ns = nt.servers.create(name = "testvm001", image = im[0], flavor = fv[0], nic = nw[1])
OPENSTACKを取り巻く
エコシステム
エコシステム
24
OpenStack
活用したい
エコシステム
25OpenStack
活用したい
構築したい
2010~2012の中心的活動 付加価値提供/SI IaaSの提供 アプライアンス 垂直統合製品 ストレージ製品 ネットワーク製品 サーバ製品エコシステム
26OpenStack
活用したい
構築したい
2010~2012の中心的活動 付加価値提供/SI IaaSの提供 アプライアンス 垂直統合製品 2013~はこちらが中心 ストレージ製品 ネットワーク製品 サーバ製品 サービス基盤として採用 クラウドネイティブ 標準化基盤として採用 フェデレーション国内事例
27 サービス基盤として採用 DC全体を抽象化し、ライフサイクルを効率 化するためOpenStackを選択 Yahoo! Japan ゲーム基盤として採用 大規模な仮想化の実現と、DevOpsを含 めた運用効率化にOpenStackを選択 Gree VPSサービス、PaaSサービスの基盤として 採用 GMOインターネットYahoo! Japan
28
活用事例
中国
29 月間36億ビュー OpenStack採用理由として、柔軟性やオープン性、コスト効果など 複数のDCにOpenStackクラスタを配置、ダッシュボードで管理 アンチウイルスエンジンから1000万件/日の照合 4000+VM/20DC、少人数運用 VMのごみ箱機能など、独自拡張もしている 高付加に耐えるためのスケーラビリティと俊敏性のために採用 2020年にはユーザ数10倍になる予測。 様々なソフトウェアを使ってインフラを作ってきたが、最終的に OpenStackを採用 理由としてオープン性、豊富な機能と拡張性、ミッションクリティカル用 途での導入実績を挙げた iQIYI オンライン動画サイト Qihoo 360 Technology セキュリティ製品 Ctrip 中国最大の旅行サイトなぜサービス基盤に採用するのか?
標準化、自動化による「運用コスト」の削減のため
– 標準化 • インフラが抽象化され、オペレーションの環境依存が無くなる – 自動化 • APIと各種ツール、プログラムを連携し大規模環境を少人数で制 御可能に現在は大規模なネットサービスを提供する企業に採
用されるケースが多い
30その他の事例(一部抜粋)
31 http://www.openstack.org/user-stories/ 利用業種 ・Webサービス業 ・SaaSプロバイダー ・eコマース ・学術 ・研究開発機関 ・政府機関 ・情報産業 ・ヘルスケア ・クラウドプロバイダー ・MSP ・通信産業 ・ゲーム ・映像 ・メディア活用状況の整理
– Phase1 • クラウド事業者が利用を開始。または研究・開発用の環境。 – Phase2 • 自社のサービスやITシステムの動作環境として利用。 • 既存のソフトウェアを上手く組み合わせてクラウドネイティブを実現 – Phase3 • クラウドを前提として開発されたソフトウェアが登場し、今まで出来なかっ たことができるようになる。 32 IaaS基盤 サービス基盤 (準クラウドネイティブ) クラウドネイティブ現在の状態
– Phase1 • 様々なOpenStackベースのIaaSが既に提供されている。今後も増え ていく領域。 – Phase2 • 現在活発なのはこの領域。サミットでの事例も殆どこのケース。ネット系 企業中心だが、いずれはエンタープライズ方面へ。 – Phase3 • クラウドを前提とするソフトウェアがこれから開発されつつある。 33 IaaS基盤 サービス基盤 (準クラウドネイティブ) クラウドネイティブハンズオン&トレーニング
How to build
– すでに様々なトレーニングがあります。How to use
– 現在コンテンツを作成中 • 第一回目を沖縄で開催 7/30 – http://www.e-side.co.jp/openlab/wg/140729.html • 沖縄オープンラボラトリ 協力 34FAQ
FAQ
OpenStack上に今のシステムを移行できる?
FAQ
OpenStack上に今のシステムを移行できる?
– 基本的には可能です。 – しかし可用性の考え方を含めて、アーキテクチャを見直す 必要があります – OpenStackは標準化を強力に推進するツールという側面 がある分、制約も大きくなります。 – また可用性の考え方も変わります。 37FAQ
ようは安い仮想基盤なんだよね?
FAQ
ようは安い仮想基盤なんだよね?
– 自動化・標準化による運用改善のコスト削減を見込めば、 トータルでのコスト削減を実現できるツールとして活用でき ます。 – 運用コストを考えない、純粋な基盤費用として考えると従 来に比べて大きく費用が下がることはほぼありません。 • むしろインテグレーションが複雑なため、コスト増の可能性もありま す。 39ICEHOUSE サマリ
Icehouse サマリ
Trove の追加 = DBaaS が提供可能に
– MySQL と Percona の全機能でのサポート。
– MongoDB, Redis, Cassandra, Couchbase の実 験的なサポート
41
Icehouse サマリ
Trove(続き)
– ユーザー / スキーマの管理 • ユーザーは MySQL のユーザーとスキーマの CRUD 操作を Trove API 経由で行うことができます。 – バックアップとリストア • データストアが提供するバックアップソフトウェアを実行し、出力を Swift コンテナーに送ります。 • フルバックアップと差分バックアップ。 42 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Nova
– コンピュートノード上のVMを停止せずにアップグレード可能 – 各ハイパーバイザー用ドライバーの機能強化 – API v3の機能強化 – スケジューラーの性能向上 • キャッシュスケジューリングに対応 – Notification(通知)機能の強化 • 補足、記録可能なイベントが増加 43 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Glance
– ストレージバックエンドに VMware Datastore 対応 – API メッセージをローカライズ – ストレージクォータの計算を改善 • 削除済みイメージは今回から、カウント除外されます 44 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Swift
– 機能検出機能 – システムメタデータの保持方法 – アカウントレベルACLとACLフォーマットv2 – オブジェクトレプリケーション ssync – 読み取り失敗時の自動リトライ 制御 45 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Horizon
– 多言語化 • ヒンディー語、ドイツ語、セルビア語. オーストラリア英語、イギリス英語、 ドイツ語、フランス語、日本語、韓国語、ポーランド語、ポルトガル語、 簡体字と繁体字の中国語、スペイン語、ロシア語 46 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Keystone
– API v3 機能強化 – 認証の仕組みと認証データが完全に分離 • LDAP等の外部認証機構との連携が容易に • マルチリージョンでのKeystoneの一元化が容易に – ログの国際化対応 47 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/ja 性能、安定性の向上が中心
– Multiple API worker / RPC worker
– Improvements in dhcp-agent, l3-agent, OVS agent … – Scenario test / API test coverage in tempest
– Third party testing (vendor driver testing)
nova event callback
– Notify nova of port status changes when fixed_ips/floatingips change
– It ensure a VM is launched after network connection is available.
Deprecate OVS Plugin and Linux Bridge plugin
– Migration to ML2 plugin is recommended.
機能面の変更は少なめ
– これまでの機能追加中心だったが、一度立ち止まって底上げ – 次の機能追加に向けた充電期間と考えるべき
Icehouse サマリ
Neutron
– 性能、安定性の向上が中心
• Multiple API worker / RPC worker
• Improvements in dhcp-agent, l3-agent, OVS agent … • Scenario test / API test coverage in tempest
• Third party testing (vendor driver testing)
– nova event callback
• Notify nova of port status changes when fixed_ips/floatingips change
• It ensure a VM is launched after network connection is available.
– Deprecate OVS Plugin and Linux Bridge plugin
• Migration to ML2 plugin is recommended.
– 機能面の変更は少なめ
• これまでの機能追加中心だったが、一度立ち止まって底上げ • 次の機能追加に向けた充電期間と考えるべき
49
Icehouse サマリ
Neutron(続き)
– 新しいドライバーとプラグイン • IBM SDN-VE • Nuage • OneConvergence • OpenDaylight – 新しいロードバランサ用ドライバー • Embrane • NetScaler • Radware – 新しいVPN用ドライバー • Cisco CSR 50 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Cinder
– 主要な新機能 • 既存ボリュームのタイプを変更可能(retype) • Cinderバックアップオブジェクトへのボリュームメタデータのサポート を追加。 • 複数APIワーカーの実装。 • クォータの削除が可能に。 • Cinderへのバックアップインポート・エクスポートが可能に。 • ボリュームアタッチ・デタッチ時の自動FCゾーニングを行うFiber Channel ゾーンマネージャが追加。 • ボリュームタイプの暗号化のアップデートが可能に。 • アタッチ・デタッチ時にCeilometer notificationsを行う。 51 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Cinder(続き)
– 新しいバックエンド用のドライバーとプラグイン
• EMC VMAX/VNX SMI-S FC ドライバー • EMC VNX iSCSI ダイレクトドライバー
• HP MSA 2040
• IBM SONAS と Storwize V7000 Unified Storage Systems
• NetApp ESeries
52
Icehouse サマリ
Ceilometer
– 複雑なクエリーによる情報取り出しが可能に • 様々な条件指定が可能になった – アラーム機能強化 • 時間制限(time constraint)オプション • 例)cpu使用率を監視。平日は70%超、土日は95%超でア ラーム 53 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/jaIcehouse サマリ
Ceilometer(続き)
– pipeline 再設計 • データ変換と、データ送信エンジンを分離 • Ceilometerの内部データを外部システムの要件に合わせて変 換&送信 – 例 – To 課金システム » 10分間隔, 全メータ取得ディスクとネットワークはrateベース、AMQPに 出力 – To チューニングエンジン» 30分間隔, CPU, RAM, disk, インスタンス数, floatingIP数取得、 AMQP出力
– To 内部利用
» 10秒間隔, CPU, RAM, disk-rate, NW-rate取得、UDP出力
54
Icehouse サマリ
Heat
– Heat Orchestration Template (HOT) が推奨に
• 従来は Heat CloudFormation-compatible Format
– パスワードを渡すことなく、スタックの利用が可能に – Heat Engine のスケーリング – OpenStack 用の新規リソース • 20種類以上の新規resourceが追加 → 55 https://wiki.openstack.org/wiki/ReleaseNotes/Icehouse/ja OS::Heat::CloudConfig OS::Heat::MultipartMime OS::Heat::SoftwareConfig OS::Heat::SoftwareDeployment OS::Heat::StructuredConfig OS::Heat::StructuredDeployment OS::Heat::RandomString OS::Heat::ResourceGroup OS::Heat::AutoScalingGroup OS::Heat::ScalingPolicy OS::Neutron::SecurityGroup OS::Neutron::MeteringLabel OS::Neutron::MeteringRule OS::Neutron::ProviderNet OS::Neutron::NetworkGateway OS::Neutron::PoolMember OS::Nova::KeyPair OS::Nova::FloatingIP OS::Nova::FloatingIPAssociation OS::Trove::Instance
まとめ
まとめ
OpenStack は IaaS を実現するOSS
– 広範囲のリソースを抽象化 – 既に様々な本番環境ので実績を持っています。 – 今はIaaS基盤やサービス基盤としての使い方が主流