More Related Content
Similar to ベアメタルOpenStackで始めるクラウド環境構築 (20)
ベアメタルOpenStackで始めるクラウド環境構築
- 2. 自己紹介
• 玉置 伸行(たまおき のぶゆき)
– ntamaoki@virtualtech.jp
– twitter.com/ntamaoki
– facebook.com/ntamaoki
• 日本仮想化技術株式会社 2013/8 -
– エンタープライズクラウド事業部
• OpenStackの価値を伝える
– ThinkITでOpenStackディストリビューション8社比較記事を企画
• エンタープライズクラスのクラウド基盤構築の検討支援
• 日本オラクル株式会社 – 2013/7
2
イントロダクション
- 3. 日本仮想化技術株式会社 概要
• 社名:日本仮想化技術株式会社
– 英語名:VirtualTech Japan Inc.
– 略称:日本仮想化技術/VTJ
• 設立:2006年12月
• 資本金:2,000万円
• 売上高:1億3,000万円(2013年7月期)
• 本社:東京都渋谷区渋谷1-8-1
• 取締役:宮原 徹(代表取締役社長兼CEO)
• 伊藤 宏通(取締役CTO)
• スタッフ:9名(うち、8名が仮想化技術専門エンジニアです)
• URL:http://VirtualTech.jp/
• 仮想化技術に関する研究および開発
– 仮想化技術に関する各種調査
– 仮想化技術に関連したソフトウェアの開発
– 仮想化技術を導入したシステムの構築
– OpenStackの導入支援・新規機能開発
ベンダーニュートラルな
独立系仮想化技術の
エキスパート集団
3
イントロダクション
- 5. OpenStackへの貢献
• 開発
– Nova bare-metal
provisioning
– DiskImage Builder
– Bug fixes in various
projects
• イベント企画・運営
• ドキュメント公開
5
Stackalytics – VirtualTech’s contributions
Commit 数は 120
OpenStack最新情報セミナー
イントロダクション
- 35. Juju/MAASの構成
Ubuntu Juju
• クラウド上に迅速かつ簡単にサービス
(OpenStackのようなクラウドインフラも
含む)をデプロイ
• サービスの設定や依存性などを事前定
義スクリプト(Charms)にまとめることが
できる
• AWSやAzureの他、MAASやLXCに対
してサービスをデプロイ可能
Ubuntu MAAS
• ベアメタルマシンや仮想マシンを、クラ
ウド上の仮想マシンと同様の簡単さとフ
レキシビリティで管理
• Jujuと組み合わせて使用することで、ベ
アメタルプロビジョニングに対応した
OpenStack環境を容易に構築できる
35
フィジカルプロビジョニング
(Ubuntu MAAS)
ベアメタルマシン 仮想マシン
クラウドオーケストレータ(Ubuntu Juju)
Juju API Juju GUI
事前定義
スクリプト
(Charms)
MAAS API
Amazon
WebService
Microsoft
Azure
HPPublic
Cloud
LXC
- 37. MAASの動作イメージ
37
Server MAAS User
Power-on, DHCP, PXE-boot
Boot image, Power-off電源管理情報検出 Enlist
Power-on
DHCP, PXE-boot
Boot image, Power-offインベントリ情報取得
Commissioning
Declared
Ready
Request a machine
Power-on
DHCP, PXE-boot
Deploy platform
Installed successfully
Return a machine
運用中
Allocated
- 38. MAAS API
• RESTful
• GET / POST / PUT / DELETE
• http://<maas-controller>/MAAS
– /api/1.0/<object>/<path>/?op=<operation>&<param>=<value>&…
• object: account, maas, networks, nodegroups, nodes, node, tags, users, zone, etc.
• 使用例:
– GET /api/1.0/nodes/?op=list # MAAS 登録ノード一覧取得
– GET /api/1.0/nodes/{system_id}/ # ノード情報取得
– PUT /api/1.0/nodes/{system_id}/ # ノード情報更新
– GET /api/1.0/tags/?op=list # タグ一覧取得
– POST /api/1.0/tags/?op=new&name=‘Neutron’ # 新規タグ追加
– POST /api/1.0/nodes/{system_id}/?op=start # ノード電源オン
– GET /api/1.0/nodes/?op=list_allocated # 使用中ノード一覧取得
– POST /api/1.0/nodes/{system_id}/?op=stop # ノード電源オフ
– DELETE /api/1.0/nodes/{system_id}/ # ノード削除38
- 39. 運用オペレーション(例)
• 初期化
$ juju bootstrap –e maas
• OpenStack 環境構築
$ juju-deployer –c openstack.yml –e maas
• ノード増設
– サーバー電源オン
• Web コンソール
– http://<maas-controller>/MAAS
• ノード タグ付け
$ maas login <profile> http://<maas-controller>/MAAS <apikey>
$ maas <profile> update-nodes <tag> add=<system_id>
• 等々
39
- 42. OpenStackのプロジェクト
コンポーネント名 プロジェクト名 コンポーネント名 プロジェクト名
① Compute Nova ⑫ Bare metal Ironic
② Object Storage Swift ⑬ Queue service Zaqar
③ Block Storage Cinder ⑭ Key management Barbican
④ Image Service Glance ⑮ DNS services Designate
⑤ Networking Neutron ⑯ Deployment TripleO
⑥ Identity Keystone
⑦ Dashboard Horizon
⑧ Metering/Monitoring Ceilometer
⑨ Orchestration Heat
⑩ Database Service Trove
⑪ Data processing Sahara
42
主要コンポーネント インキュベーション
- 46. ベアメタルプロビジョニング
の処理手順
46
利用者
Nova-API Nova-Scheduler
Image Service
Block Storage
USER
1
従来のOpenStack ベアメタルOpenStack
Host OS
Nova-Compute
Hypervisor
Host OS
1. Instance Request 2. Choose Nova-Compute
VM
USER
2
4. Network Isolation
5. Block Storage Attachment
Machine
4. Network Isolation
5. Block Storage Attachment
3. Image Provisioning
Hypervisor
VM
Machine
Libvirtドライ
バ
Libvirt
Nova-Compute
Xenドライバ
Xen API
Nova-Compute
Baremetal
ドライバ
- 49. Client
Portal
Cloud Controller Image Service
Node
Controller
Baremetal
Node
Baremetal
Node
Baremetal
Node
Baremetal
Node
Baremetal
Node
Baremetal
Node
VLAN1
VLAN2
プロビジョニングの仕組み
49
①ポータルへアクセス
②コントローラにリクエストを送付
リクエストがキューに格納
④PXEブート、イメージのコピー、
ネットワークの設定、ディスクの設定
③プロビジョニング
先のノードの決定
- 50. OpenStack Ironicのロードマップ
Havana Icehouse Juno Kilo “L”以降
参考:Blueprints for Ironic (Bare Metal Provisioning) https://blueprints.launchpad.net/ironic/
2013年10月リリース 2014年4月リリース 2014年10月リリース 2015年4月リリース予定
Novaプロジェク
トからIronic(ベア
メタルプロビジョ
ニング)プロジェ
クトが派生
•Neutron連携 •Ceilometer連携
•HP iLO対応
•iPXE対応
•正式プロジェクト
に昇格
•ベアメタルマシン
のディスカバリ
•UEFIセキュアブー
トへの対応
•ベアメタルサーバ
のリリース処理の
追加
•ファームウェア
更新機能の追加
•ベアメタルマシン
の自動登録機能
の追加
•Neutron連携(仮
想ネットワーク機
能)
Neutronに対応するも
仮想ネットワーク機能
は実装されず
現行のバージョン
では、同じAvailability
Zone(AZ)でベアメタル
マシンと仮想マシンを
混在できない
Junoで正式プロジェク
トに昇格することを目
指していたが適わず
- 51. 今後のIronic
• 仮想ネットワーク対応 • ベアメタルマシンの
ライフサイクル管理
51
スイッチ
Ironic
Neutron
Nova
ベアメタル
ノード
ベアメタルサー
バのアサイン
ベアメタルサー
バのリリース
クリーニング
リソースプール
への追加
UEFI secure boot
OSやBIOSのバージョンアップ