More Related Content Similar to OpenStack環境構築入門 Havana対応版 - OpenStack最新情報セミナー2014年4月 (20) More from VirtualTech Japan Inc. (20) OpenStack環境構築入門 Havana対応版 - OpenStack最新情報セミナー2014年4月2. 日本仮想化技術株式会社 概要
• 社名:日本仮想化技術株式会社
– 英語名:VirtualTech Japan Inc.
– 略称:日本仮想化技術/VTJ
• 設立:2006年12月
• 資本金:2,000万円
• 売上高:1億3,573万円(2013年7月期)
• 本社:東京都渋谷区渋谷1-8-1
• 取締役:宮原 徹(代表取締役社長兼CEO)
• 伊藤 宏通(取締役CTO)
• スタッフ:8名(うち、7名が仮想化技術専門エンジニアです)
• URL:http://VirtualTech.jp/
• 仮想化技術に関する研究および開発
– 仮想化技術に関する各種調査
– 仮想化技術に関連したソフトウェアの開発
– 仮想化技術を導入したシステムの構築
– OpenStackの導入支援・新規機能開発
ベンダーニュートラ
ルな独立系仮想化技
術の
エキスパート集団
2
15. 今回の設計の方針
• Ubuntu Server 12.04LTSをベースに構築
• 3ノード構成
– コントローラー(以下の2つ以外全部)
– ネットワーク(Neutron+Open vSwitch)
– 仮想マシンインスタンス(Nova
Compute+Open vSwitch)
• 今回はSwift、Ceilometer、Heatは未使用
– Ceilometer、Heatは今回の手順が理解でき
れば導入手順は概ね同じ
15
18. 今回の環境
• ネットワーク構成は2系統
– 管理系(eth0)
– サービス系(eth1)
• Neutron+Open vSwitch(GREトンネリング)
• Floating IPで物理ネットワークと仮想マシン
ネットワークを接続
• ストレージ構成はファイルベース
– コントローラーにLVM領域を作成し、ゲス
トOSイメージはファイルとして保管
18
19. Fixed IPとFloating IPの仕組み
① FIXED_RANGEで
割り当てられる。
①同士は通信でき
るが、③とは通信
できない
② FLOATING_RANG
Eで割り当てられる。
実際には②と①と
の間で静的NATを
行っている。
③→②→①と繋が
る19
①
②
サービ
ス
クライアント
③
インスタン
ス
①
24. Ubuntu Server 12.04LTSの導入(共通)
1. ベースOSとしてのインストール
– OpenSSHのみインストール
2. IPアドレスの設定
3. 静的名前解決の設定
4. sysctlによるシステムの設定(ネットワー
ク)
5. aptの設定
6. NTPのインストール
7. Python用MySQLクライアントのインス
トール
24
25. ネットワーク設定(手順書)
eth0 eth1
controller 192.168.0.10 10.0.0.10
network 192.168.0.9 10.0.0.9
compute1 192.168.0.11 10.0.0.11
ゲートウェイ なし 10.0.0.1
ネームサーバー なし 10.0.0.1
25
• eth0側にゲートウェイ、ネームサーバーの設定が無いのは構築
環境の制約によるものです
• compute1のeth1(10.0.0.11)は本来不要ですが、aptコマンドによる
リポジトリへのアクセスが必要なため設定されています。環境
構築後は使用しません。
• controllerのeth1(10.0.0.10)は外部API公開用ですが、今回は使用
していません
26. ネットワーク設定(今回)
eth0 eth1
controller 192.168.N.10/16 10.0.N.10/16
network 192.168.N.9/16 10.0.N.9/16
compute1 192.168.N.11/16 10.0.N.11/16
ゲートウェイ なし 10.0.N.1
ネームサーバー なし 10.0.N.1
26
• 今回はインターネット接続は行いませんが、手順書
に合わせてeth1側にGW、NSを設定しています
• 今回は同一セグメント上で複数の環境を同時に構築
するため、ネットマスクを16ビットに変更していま
す
N=受講者番号
30. サービスとAPI endpoint
• 各サービスのRESTful APIインター
フェースをendpointとしてKeystoneに登
録
• endpointには認証が設定される
30
API種別 API URL
admin API http://controller:35357/v2.0
internal API http://controller:5000/v2.0
public API http://controller:5000/v2.0
Keystonのendpoint情報
31. Keystoneへの接続認証
1. Keystoneにサービスとendpointの作成
1. 各設定ファイル内に以下の記述
31
[keystone_authtoken]
auth_host = controller
auth_port = 35357
auth_protocol = http
auth_uri = http://controller:5000/v2.0
admin_tenant_name = service
admin_user = glance ←サービス毎に異なる
admin_password = password ←ユーザー毎に異なる
flavor=keystone ←○○-paste.confに渡される
keystone service-create --name keystone --type identity --description 'OpenStack Identity’
keystone endpoint-create --region $KEYSTONE_REGION --service-id $IDENTITY_SERVICE --pu
blicurl 'http://'"$KEYSTONE_HOST"':5000/v2.0' --adminurl 'http://'"$KEYSTONE_HOST"':35357/v2.
0' --internalurl 'http://'"$KEYSTONE_HOST"':5000/v2.0'
サービスとendopoint作成は
keystone_init.shスクリプト
にまとめてあります
36. Neutronのプラグイン
• Open vSwitch Plugin
• Cisco UCS/Nexus Plugin
• Linux Bridge Plugin
• Modular Layer 2 Plugin
• Nicira Network Virtualization Platform (NVP) Plugin
• Ryu OpenFlow Controller Plugin
• NEC OpenFlow Plugin
• Big Switch Controller Plugin
• Cloudbase Hyper-V Plugin
• MidoNet Plugin
• Brocade Neutron Plugin
• PLUMgrid Plugin
• Mellanox Neutron Plugin
36
37. パッケージのインストール
• 各ノードに合わせたパッケージの導入
37
ノード パッケージ
controller neutron-server
network neutron-dhcp-agent
neutron-plugin-openvswitch-agent
neutron-l3-agent
openvswitch-datapath-dkms
compute1 neutron-plugin-openvswitch-agent
openvswitch-datapath-dkms
openvswitch-datapath-dkmsをnetworkノードとcompute1ノードの双方に
インストールすること
38. Neutron+Open vSwitchの設定
• /etc/nova/nova.conf
• /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini
• /etc/neutron/dhcp_agent.ini
• /etc/neutron/l3_agent.ini
38
linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver
firewall_driver=nova.virt.firewall.NoopFirewallDriver
security_group_api=neutron
[securitygroup]
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
40. Base Network Service Functions
Management
GUI/CLI
Controller Platform
Southbound Interfaces
& Protocol Plugins
OpenDaylight APIs (REST)
oDMC
Data Plane Elements
(Virtual Switches,
Physical Device Interfaces)
Service Abstraction Layer (SAL)
(plug-in mgr., capability abstractions, flow programming, inventory, …)
OpenFlow
1.0 1.3
Topology
Mgr
Stats
Mgr
Switch
Mgr
VTN
Coordinator
Affinity
Service
Network Applications
Orchestration & Services
OpenStack
Neutron
OpenFlow Enabled Devices
VTN
Manager
NETCONF
Additional Virtual & Physical
Devices
Virtualization Edition
D4A Protection
Open vSwitches
OpenStack Service
OVSDB
FRM ARP
Handler
Host
Tracker
VTN: Virtual Tenant Network
oDMC: open Dove Management Console
D4A: Defense4All protection
LISP: Locator/Identifier Separation Protocol
OVSDB: Open vSwitch Data Base Protocol
BGP: Border Gateway Protocol
PCEP: Path Computation Element Communication Protocol
SNMP: Simple Network Management Protocol
OVSDB
Neutron
45. いくつかの宿題
• Icehouse対応
• ネットワーク構成の見直し
– Parallels Desktopの仕様に引きずられすぎてるので
– VirtualBoxがNested VMをサポートしてくれていたら・・・
• 不要な設定の排除
– GrizzlyからHavanaへのバージョンアップの際に不要になっ
た設定がまだ残っている
– docs.openstack.orgのドキュメントも結構引きずってる
– とりあえず影響は無いレベルだが、認証関係の設定の記述
は極力少なくしたい
• Ceilometer、Heatのインストール
– 基本的な手順はその他のサービスと同じ
• Swiftのインストール
– Glanceのバックエンドとしても使用可能
45