日本仮想化技術講演 openstack最新情報セミナー 2014年2月
DESCRIPTION
講師:日本仮想化技術 宮原 日時:2014/02/06 タイトル:OpenStack環境構築入門 概要: OpenStackの環境構築に悩んだことはありませんか? 弊社では昨年11月にOpenStack構築手順書(Havana版&Grizzly版)を公開し好評をいただいております。本セミナーでは本書を元にOpenStackの環境構築をデモを交えて分かりやすくお伝えいたします。 OpenStackの環境をこれから構築したいと思っている方に最適な内容となっております。TRANSCRIPT
OpenStack 環境構築入門Havana 対応版
日本仮想化技術株式会社VirtualTech.jp
日本仮想化技術株式会社 概要• 社名:日本仮想化技術株式会社
– 英語名: 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
導入・移行
仮想化環境構築をトータルサポート
設計
• 戦略立案– コスト削減、社内標準化、将来プランのコンサルティ
ング• 設計
– 要求仕様の策定– サーバ、ストレージからネットワークまでアプ
リケーションまで考慮した設計最適化– キャパシティプランニング(ベンチマーク)
• 導入– 仮想化ソリューションパッケージの提供– 仮想化統合( P2V 既存環境移行)
• 運用保守– エンジニア教育– 技術サポートの提供– OSS ソースコードレベルサポート
運用保守
ベンダーニュートラルなワンストップ・サポートをご提供3
戦略立案
4
OpenStack への取り組み
• お客様向け OpenStack 評価環境の構築• ベアメタル OpenStack の開発
– 仮想環境と物理環境を OpenStack で一括管理
– 単一のイメージで仮想マシンと物理マシンの双方を起動可能
– 2013 年 4 月リリースの Grizzly で本体にマージ
• 某 OpenStack クラウドサービス評価– 機能検証・性能検証
ベアメタル OpenStack の特徴
5
従来の OpenStack ベアメタル OpenStack
物理サーバ群
サーバ仮想化技術
クラウドサービスA
クラウドサービスB
クラウドサービスC
物理サーバ群
クラウドサービスA
クラウドサービスB
クラウドサービスC
サーバ仮想化技術を利用しない
状況に応じて仮想 / 物理の
切替可能
6
EnterpriseCloud.jp
• OpenStack で始めるエンタープライズクラウドの情報サイト
• OpenStack 導入手順書のダウンロード
• 各種プレゼン資料• その他ブログ記事
7
たまおきのクラウドウォッチ• OpenStack を中心に
クラウド関係の最新情報を @IT にて毎月発信
• たまおき@ VTJ 責任編集
http://bit.ly/1areUHP
8
本日のアジェンダ• OpenStack の概要• OpenStack の環境設計 入門編
– 今回のネットワーク設計 解説• Ubuntu Server 12.04LTS のインストールと設
定• Keystone の設定の勘所• Neutron の設定の勘所
そろそろ DevStack を卒業したい人向け
OpenStack の概要
10
OpenStack 概要
仮想マシン ネットワーク ストレージ
Web 管理画面
IaaS 環境を実現するソフトウェアスタック
11
OpenStack 構成図MQや REST で相互接続
12
OpenStack の構成要素サービス 役割Nova 全体をコントロールNova Compute 仮想マシンインスタンス管理Message Queue AMQP
Keystone 認証系Glance ゲスト OS イメージ管理Cinder ブロックストレージ管理Horizon Web 管理画面Swift オブジェクトストレージCeilometer リソース利用量監視Heat 自動化
13
今回の方針
• Ubuntu Server 12.04.3LTS をベースに構築
• 3ノード構成– コントローラー(以下の 2つ以外全部)– ネットワーク( Neutron+ Open vSwitch )– 仮想マシンインスタンス( Nova
Compute+Open vSwitch )• 今回は Swift 、 Ceilometer 、 Heatは未使用– Ceilometer 、 Heatは今回の手順が理解できれば導入は簡単だと思われる
14
資料のダウンロード
OpenStack 構築手順書をダウンロードしてください。http://enterprisecloud.jp/installguide-openstack/
OpenStack 環境の設計 入門編
16
OpenStack 環境設計時の考慮点
• ネットワーク構成– 物理設計–論理設計( Open vSwitchや OpenFlow など)
• ストレージ構成– マスターイメージ管理( Glance )– ブロックストレージ管理( Cinder+外部ス
トレージ)–共有ストレージ領域の準備( NFS など)–オブジェクトストレージの利用( Swift )
17
今回の環境
• ネットワーク構成は 2 系統– 管理系( eth0 )– サービス系( eth1 )
• Neutron+Open vSwitch ( GRE トンネリング)• Floating IP で物理セグメントと仮想セグメント
を接続
• ストレージ構成はファイルベース– コントローラーに LVM領域を作成し、ゲ
スト OS イメージはファイルとして保管
18
Fixed IP と Floating IP の仕組み① FIXED_RANGE で割
り当てられる。①同士は通信できるが、③とは通信できない
② FLOATING_RANGEで割り当てられる。実際には②と①との間で静的 NAT を行っている。③→②→①と繋がる
①
②
サービス
クライアント③
インスタンス
①
19
ネットワーク構成図
controllerノード
networkノード
compute1ノード
インスタンス
クライアント
管理系( eth0 )
サービス系( eth1 )
eth0 eth0 eth0仮想スイッチセグメント
eth1
20
Open vSwitch接続図
networkノード
compute1ノード
クライアント
br-int
br-exeth1
eth0 eth0
21
仮想ネットワーク図
demo-net
ext-net
ext-net-subnet(10.0.0.0/24)
インスタンス
demo-net-subnet(10.5.5.0/24)
demo-router
10.5.5.1
Floating IP(10.0.0.200/24〜 10.0.0.250/24)
Fixed IP(10.5.5.2/24〜 10.5.5.254/24)
クライアント
10.0.0.x
Ubuntu Server 12.04LTS のインストールと設定
23
Ubuntu Server 12.04LTS の導入(共通)
1. ベース OS としてのインストール– OpenSSH のみインストール
2. IP アドレスの設定3. 静的名前解決の設定4. sysctl によるシステムの設定(ネットワー
ク)5. apt の設定6. NTP のインストール7. Python 用 MySQL クライアントのインストー
ル
24
ネットワーク設定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
• eth0側にゲートウェイ、ネームサーバーの設定が無いのは構築環境の制約によるものです
• compute1 の eth1(10.0.0.11)は本来不要ですが、 apt コマンドによるリポジトリへのアクセスが必要なため設定されています。環境構築後は使用しません。
25
今回のデモ環境の設定(ネット)
ホストオンリーネットワーク 共有ネットワーク
26
今回のデモ環境の設定( VM )
eth0はホストオンリーネットワーク eth1は共有ネットワーク
27
Keystone の設定の勘所
28
テナント (demo)
OpenStack のアカウント構造• テナントは複数のユーザーを束ねるグループのような役割– 従来はプロジェクト
• ユーザー権限はロールとして各ユーザーに権限付与
• ロールの定義はpolicy.json に記述
テナント adminユーザーadmin
ロールadmin
Member
権限付与demo
service
29
サービスと API endpoint
• 各サービスの RESTful API インターフェースを endpoint として Keystone に登録
• endpoint には認証が設定されるAPI 種別 API URL
admin API http://controller:35357/v2.0
internal API http://controller:5000/v2.0
public API http://controller:5000/v2.0
Keystone の endpoint 情報
30
Keystone への接続認証
1. Keystone にサービスと endpoint の作成
2. 各設定ファイル内に以下の記述[keystone_authtoken]auth_host = controllerauth_port = 35357auth_protocol = httpauth_uri = http://controller:5000/v2.0admin_tenant_name = serviceadmin_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 $IDEN-TITY_SERVICE --publicurl 'http://'"$KEYSTONE_HOST"':5000/v2.0' --admin-url 'http://'"$KEYSTONE_HOST"':35357/v2.0' --internalurl 'http://'"$KEYSTONE_HOST"':5000/v2.0'
サービスと endopoint作成は keystone_init.sh スクリプトにまとめてあります
Neutron の設定の勘所
32
パッケージのインストール
• 各ノードに合わせたパッケージの導入ノード パッケージ
controller neutron-server
network neutron-serverneutron-dhcp-agentneutron-plugin-openvswitch-agentneutron-l3-agentopenvswitch-datapath-dkms
compute1 neutron-plugin-openvswitch-agentopenvswitch-datapath-dkmsopenvswitch-datapath-dkms を networkノードと compute1ノードの双方に
インストールすること
33
いくつかの宿題• 不要な設定の排除
– Grizzly から Havana へのバージョンアップの際に不要になった設定がまだ残っている
– docs.openstack.org のドキュメントも結構引きずってる
– とりあえず影響は無いレベルだが、認証関係の設定の記述は極力少なくしたい
• Ceilometer 、 Heat のインストール– 基本的な手順はその他のサービスと同じ
• Swift のインストール• Icehouse 対応
34
仮想化について相談したい
• 既存環境を仮想化移行する概要設計• 他社提案に対する「セカンドオピニオ
ン」• もちろん OpenStack 構築・カスタマイ
ズも
無料コンサルティング実施中
お気軽にお問い合わせください
35
お問い合わせ先「仮想化環境を構築したいが、どこに相談すればいい
の?」「 OpenStack のサポートしてくれる会社はない
の?」
まずは我々にご相談ください
http://VirtualTech.jp/[email protected]
03-6419-7841