65
OpenStack Quick Start Icehouse Japan OpenStack Users Group Internet Initiative Inc. Hideki Saito (@saitohideki) 1 ver2.1

OpenStack QuickStart - Icehouse

Embed Size (px)

DESCRIPTION

OpenStack Icehouseをインストールする

Citation preview

Page 1: OpenStack QuickStart - Icehouse

OpenStack  ~∼  Quick  Start  Icehouse~∼

Japan  OpenStack  Users  Group  Internet  Initiative  Inc.  

Hideki  Saito  (@saito_̲hideki)  

1 ver2.1

Page 2: OpenStack QuickStart - Icehouse

目次• 自己紹介 • はじめに • OpenStackを使ってみる • インストールする • 仮想環境を管理する

• まとめ

2

Page 3: OpenStack QuickStart - Icehouse

自己紹介• 氏名 - 齊藤 秀喜(さいとう ひでき) - twitterid: @saito_hideki

• 勤務先 - 株式会社インターネットイニシアティブ(IIJ) - http://www.iij.ad.jp/

• 所属 - 日本OpenStackユーザ会 ボードメンバー

• 趣味 - OpenStack…(最近仕事に…)

3

Page 4: OpenStack QuickStart - Icehouse

はじめに• OpenStackについて OpenStackは2010年の1stリリース(Austin)から最新リリース(Havana)まで8回のメジャーリリースを経て、機能の追加・不具合の修正を繰り返し、2014/04に9回目のメジャーリリース(Icehouse)が行われました。 これまでの検証・テスト利用フェーズを終えたユーザが、大規模なパブリッククラウド基盤や、オンプレミスのプライベートクラウド基盤として採用するケースも増えてきました。

• クラウド基盤管理システム(CloudOS)を学ぶ OpenStackには、このようなプロダクション環境での本格利用だけでなく、例えばノートPC上の仮想環境にクラウド基盤を構築して、その構造を学んだり、新たな機能を実装してテストをしたりというサンドボックスを*比較的*簡単に用意できるという嬉しい側面を持っています。本セッションでは、「クラウド基盤管理の仕組みを学ぶ」目的で、このようなサンドボックス環境を手元に準備する方法をご紹介します。

4

Page 5: OpenStack QuickStart - Icehouse

CloudOSについて(1)•サーバ/ストレージ/ネットワーク機器の仮想化への流れ •コスト削減効果やスタートアップの容易さから1案件で利用するサーバ の台数はうなぎ登り •技術者の知恵と勇気だけで耐えるのにも限界がある

5

国内サーバ市場の動向 2007年~2016年(出典:IDC Japan)

仮想化を引き金として増大の一途を 辿る資源の管理を省力化するために は、人力に頼らない”仕組み”が必要

(出典: 2014年WIDE春合宿 OpenStack)

Page 6: OpenStack QuickStart - Icehouse

CloudOSについて(2)

6

要素技術の進歩 利用者の要求の変化

(出典: 2014年WIDE春合宿 OpenStack)

Page 7: OpenStack QuickStart - Icehouse

CloudOSについて(3)•オペレーティングシステム 物理資源の管理やプロセスのスケジューリングがOSの主な仕事

7

OSの構造(出典 wikipedia)

【OSの仕事】 • ハードウェアの抽象化 • 資源管理 • タスクスケジュール • etc…

(出典: 2014年WIDE春合宿 OpenStack)

Page 8: OpenStack QuickStart - Icehouse

CloudOSについて(4)•クラウドOS 目的は従来のOSが提供する仮想化された資源をまとめて管理することで、クラウドOSと言っても要はユーザランドで動くアプリケーションプログラム。OSと同じように計算機資源を抽象化して上位層に提供します。

8

OSの構造(出典 wikipedia)

OSが提供してくれる機能をうまく利用して仮想化された超大規模なリソースプールから適切に資源を払い出す仕組みをユーザに提供することがクラウドOSの核となる機能です。

(出典: 2014年WIDE春合宿 OpenStack)

Page 9: OpenStack QuickStart - Icehouse

システムモデルの変化(1)•ファイルのライフサイクル 従来のOSが管理するファイルシステム上で管理する資源(ファイル)のライフサイクル

9

(出典: 2014年WIDE春合宿 OpenStack)

File%A� File%A� File%A�Create� Modify� Modify� Delete�

File%A�

Backup�

File%B�

Copy�

Page 10: OpenStack QuickStart - Icehouse

システムモデルの変化(2)•仮想マシンのライフサイクル CloudOSが管理する資源(仮想マシン)のライフサイクル

10

(出典: 2014年WIDE春合宿 OpenStack)

VM#A� VM#A� VM#A�Create� Modify� Modify� Delete�

VM#A�

Backup#snapshot#

GoldenImage�

Copy�

VM#B�

VM#C�

Copy#&#Boot�

Page 11: OpenStack QuickStart - Icehouse

CloudOSに求められる機能

1.WebUI/GUI/CLIが提供していること 2.管理用外部APIが提供されていること 3.スケーラブル(自身も提供する資源も) 4.仮想リソースの最適配置 5.機能追加が容易であること 6.マルチテナントが収容可能であること 7.長期間 安定稼働が可能であること(できれば3年くらい) 8.できればベアメタル管理も… 9.できれば管理系は冗長性も確保したい…

11

(出典: 2014年WIDE春合宿 OpenStack)

Page 12: OpenStack QuickStart - Icehouse

OpenStackとは• OpenStack: The Open Source Cloud Operating System クラウドインフラを構築するためのオープンソースソフトウェア マルチテナントに対応した IaaS を提供 2010年に Racksapce と NASA が共同で立ち上げた。開発の中立性を確保するため、その後OpenStack Foundation による運営に移行。

12

(出典: 2014年WIDE春合宿 OpenStack)

Page 13: OpenStack QuickStart - Icehouse

OpenStackの特徴• 全機能のREST API による提供 プログラムによるインフラ環境の自動構築・操作が可能。外部システムとの 連携。 抽象化された論理APIが基本。物理構造の隠蔽が基本。

• スケーラビリティを意識した疎結合なアーキテクチャー コンピュートノードの追加によるリソース追加 コントローラノードの負荷分散 機能単位に分割されたモジュラー構成

• プラグイン/ドライバー構造 サードパーティー製品、ソフトウェアとの連携によるエコシステム 既存のインフラとの連携が可能

• オープンな開発体制 Vendor Neutral な OpenStack Foundation によるプロジェクト運営 来るものは拒まずというオープンソース志向

13

(出典: 2014年WIDE春合宿 OpenStack)

Page 14: OpenStack QuickStart - Icehouse

14

OpenStack 各プロジェクトの歴史(出典: 2014年WIDE春合宿 OpenStack)

Swi$�

Glance�

Keystone�

Horizon�

Cinder�

Neutron�

Ceilometer�

Heat�

Object;Storage�

Image;Service�

Iden?ty;Service�

Dashboard�

Block;Storage�

Networking�

Telemetry�

Orchestra?on�

Nova�Compute�

Trove�Database�

Aus?n� Bexar� Icehouse�Havana�Grizzly�Folsom�Essex�C� D�

�������������;����� ��������

Page 15: OpenStack QuickStart - Icehouse

OpenStack 機能イメージ

15

(出典: 2014年WIDE春合宿 OpenStack)

���

仮想ネットワーク 制御

Neutron

ハイパーバイザー 制御

ベアメタル プロビジョニン

イメージ SnapShot管理 Glance

ブロック ストレージ制御 Cinder

オブジェクト ストレージ Swift

Nova

統合認証 Keystone

仮想ルータ、仮想L2 仮想ロードバランサ

仮想FW

仮想サーバ作成・削除

物理サーバ

仮想マシンのテンプレート 設定済みイメージのスナップショット

仮想ボリューム

ReST入出力ファイルストア レプリケーション、遠隔地分散

Horizon (Dashboard)

��������

Cei

lom

eter

Heat

OpenStack API

オーケストレーション機能 Your Applications

Page 16: OpenStack QuickStart - Icehouse

OpenStack 要素技術さまざまな OSS を組み合わせてCloudOSの機能を実現している • Linux kernel • Compute : libvirt, KVM, cgroup • Networking - iptables, ebtables, tc, network namespace - dnsmasq, Open vSwitch - (OpenFlow controller)

• Storage : LVM, iSCSI • Database : MySQL, PostgreSQL • Message Queue : RabbitMQ, Qpid, ZeroMQ

16

(出典: 2014年WIDE春合宿 OpenStack)

Page 17: OpenStack QuickStart - Icehouse

OpenStackを実際に使ってみる

17

Page 18: OpenStack QuickStart - Icehouse

サンドボックス(構成)ノートPC(今回はMacBookAir)をHostとして利用するため、あらかじめVirtualBoxをインストールしておく。 • ノートPC(Apple MacBook Air 11inch)

- CPU: Intel Core i7 (1.7GHz) - Memory: 8GB - SSD: 256GB - OS: MacOS X 10.9.2

• VirtualBox - version 4.3.10 r93012 - GuestOS CentOS 6.5 x86_64 (2014-05-11時点の最新パッケージに更新)

※RDO & packstackを利用するにはx86_64版が必須要件です

• OpenStack - 2014.1 Icehouse - RDO & packstack

18

Page 19: OpenStack QuickStart - Icehouse

サンドボックス(ネットワーク)VirtualBoxをインストールし仮想マシンを作成する前にHostOnlyNetworkを作成しておく。 • vboxnet0 外部からComputeノードVMにアクセス するためのネットワーク - IPv4アドレス: 192.168.0.240 - IPv4ネットマスク: 255.255.255.0 - DHCPサーバ: 無効

• vboxnet1 OpenStackの各コンポーネント間を接続 するためのネットワーク - IPv4アドレス: 172.16.0.240 - IPv4ネットマスク: 255.255.255.0 - DHCPサーバ: 無効

19

Page 20: OpenStack QuickStart - Icehouse

サンドボックス(Guest)仮想マシンのスペックは以下の通り。メモリは4GB以上が望ましい • CPU x 1 • HDD 20GB(format:VDI) • MEM 4GB • Network - Adapter1 (vboxnet0) - ネットワーク->高度->プロミスキャスモード->「すべて許可」 - DHCP off

- Adapter2 (vboxnet1) - ネットワーク->高度->プロミスキャスモード->「すべて許可」 - DHCP off

- Adapter3 (NAT)

20

Page 21: OpenStack QuickStart - Icehouse

インストールする(1)

21

“rdo” OpenStack BOX GuestOS

vboxnet0 192.168.0.0/24 FloatingIP

vboxnet1 172.16.0.0/24 管理ネットワーク

NAT 10.0.4.0/24

MacBook Air HostOS

eth1 172.16.0.1

br-ex: 192.168.0.1 eth0: IPアドレス割り当ては行わない

vboxnet0: 192.168.0.240

vboxnet1: 172.16.0.240

10.0.4.2

NATネットワーク経由でRDO & packstackを利用したOpenStackのインストールを行う

eth0はOpenStackの外部接続用ブリッジ(br-ex)に接続するためIPアドレスの割り当ては行わないeth2

10.0.4.15

サンドボックス構成

Page 22: OpenStack QuickStart - Icehouse

インストールする(2)• OpenStackのインストール方法 - 公式ドキュメントを参考に構築にインストールする 公式ドキュメントをベースに日本仮想化技術株式会社さんが日本語で補完してくれた完全版がありますので、Havanaであればこちらがオススメです。 ๏ http://enterprisecloud.jp/installguide-openstack/

- devstackを利用する OpenStackの開発者が自身で開発したコードをテストする目的で開発されているプロダクトです。 ๏ http://devstack.org/

- RDO & packstackを利用する RedHatさんが提供するrpmとPuppetを利用したインストールシステムです。RedHat系のOSを利用しているのであれば、迷わずRDOです。 ๏ http://openstack.redhat.com/Main_Page

22

Page 23: OpenStack QuickStart - Icehouse

インストールする(3)OSの基本設定(1) 1. /etc/hostsに自身のエントリを追加(rootユーザで実施)

2. /etc/sysconfig/networkにホスト名を設定(rootユーザで実施)

3. /etc/sysconfig/network-scripts/ifcfg-eth0を設定(vboxnet0) (rootユーザで実施)

4. /etc/sysconfig/network-scripts/ifcfg-eth1を設定(vboxnet1) (rootユーザで実施)

23

127.0.0.1 localhost 172.16.0.1 rdo

NETWORKING=yes HOSTNAME=rdo

DEVICE=eth0 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet

DEVICE=eth1 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=172.16.0.1 PREFIX=24

Page 24: OpenStack QuickStart - Icehouse

インストールする(4)OSの基本設定(2) 5. /etc/sysconfig/network-scripts/ifcfg-eth2(NAT network) (rootユーザで実施)

6. 基本設定が完了したらOSを再起動(rootユーザ で実施)

24

DEVICE=eth2 BOOTPROTO=dhcp ONBOOT=yes TYPE=Ethernet

Page 25: OpenStack QuickStart - Icehouse

インストールする(5)RDO & packstackでOpenStack環境をインストールする(1) • インストール対象ソフトウェア群

- MySQL - MongoDB - RabbitMQ - Keystone - Glance - Cinder - Nova - Neutron - Horizon - Swift - Heat - Ceilometer - Tempest - OpenStack Clientライブラリ - Nagios

25

Page 26: OpenStack QuickStart - Icehouse

インストールする(6)RDO & packstackでOpenStack環境をインストールする(1) 1. stackユーザを作成しwheelグループに登録します(rootユーザで実施)

2. /etc/sudoersでwheelグループにsudoを許可します(rootユーザで実施)

3. RDOのリポジトリをインストールします(stackユーザで実施) リポジトリをインストールしてパッケージ更新を実施後にOSを再起動する

4. packstack(2014.1.1-0.25.dev1208)をインストールします(stackユーザで実施)

26

# useradd -G wheel stack # passwd stack Changing password for user stack. New password: ******** Retype new password: ******** passwd: all authentication tokens updated successfully.

%wheel ALL=(ALL) ALL

$ sudo yum install -y \ http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm $ sudo yum update -y $ sudo reboot

$ sudo yum install -y openstack-packstack-2014.1.1-0.25.dev1208.el6

Page 27: OpenStack QuickStart - Icehouse

インストールする(7)RDO & packstackでOpenStack環境をインストールする(2) 5. packstackによる自動インストール用answerファイルを作成します(stackユーザで実施) 今回利用するanswerファイルは以下のパスからダウンロード

6. packstackを利用してOpenStackを自動インストールします(stackユーザで実施) 構成にもよりますが、インストール完了までには概ね30分~1時間程度かかります。

インストール完了時のメッセージにはnagiosadminのパスワード情報が含まれているので注意。

27

$ sudo yum install -y git $ git clone https://github.com/h-saito/packstack-answer.git && cd packstack-answer $ git checkout -b 2014.1.1-0.25.dev1208 refs/tags/openstack-packstack-2014.1.1-0.25.dev1208

$ packstack --answer-file=all-in-one.conf

**** Installation completed successfully ****** !Additional information: * Time synchronization installation was skipped. Please note that unsynchronized time on server instances might be problem for some OpenStack components. * File /root/keystonerc_admin has been created on OpenStack client host 172.16.0.1. To use the command line tools you need to source the file. * To access the OpenStack Dashboard browse to http://172.16.0.1/dashboard . Please, find your login credentials stored in the keystonerc_admin in your home directory. * To use Nagios, browse to http://172.16.0.1/nagios username : nagiosadmin, password : <パスワード情報> * The installation log file is available at: /var/tmp/packstack/20140511-121924-ft1kqD/openstack-setup.log * The generated manifests are available at: /var/tmp/packstack/20140511-121924-ft1kqD/manifests

Page 28: OpenStack QuickStart - Icehouse

インストール後(1)1. nagiosadminユーザ情報をメモ Nagiosをインストールした場合は、packstack実行後にコンソールに表示されるnagiosadminユーザのパスワードをメモしておくことを忘れないようにしてください

2. /etc/nova/nova.confを修正します packstackではデフォルトでkvm環境を想定したインストールを行うが、VirtualBoxでは仮想マシンのCPUは”vmx”未対応であるため、kvmを利用することができないためqemuに変更します

3. /etc/ceilometer/ceilimeter.confを修正します keystone認証を行う設定がコメントアウトされて無効化されているようであれば、認証をkeystoneで行うようコメントアウトを解除してやります

!

28

libvirt_type=qemu

auth_strategy=keystone

Page 29: OpenStack QuickStart - Icehouse

インストール後(2)4. /etc/sysconfig/network-scripts/ifcfg-eth0を修正します eth0をbr-exに接続するよう修正します

!br-exにeth0を割り当てて仮想マシンをHyperVisorの外部と通信させるための経路を確保します

5. 再起動してインストール作業を完了します

29

DEVICE=eth0 BOOTPROTO=static ONBOOT=yes TYPE=OVSPort DEVICETYPE=ovs OVS_BRIDGE=br-ex

$ sudo ovs-vsctl add-port br-ex eth0

Page 30: OpenStack QuickStart - Icehouse

インストール後(3)• インストールログファイル - /var/tmp/packstack/<YYYYMMDD-hhmmss-id>/openstack-setup.log

• Puppetマニフェスト - /var/tmp/packstack/<YYYYMMDD-hhmmss-id>/manifests/*.pp

• Puppet動作ログ - /var/tmp/packstack/<YYYYMMDD-hhmmss-id>/manifests/*.log

!• ログイン情報 インストール完了後、ログインに必要な情報は以下のファイルに置かれているので確認しておく - adminユーザ環境変数 -> /root/keystonerc_admin - demoユーザ環境変数 -> /root/keystonerc_demo - WebUI URL -> http://172.16.0.1/dashboard - demoユーザ用プロジェクト -> demo - demoプロジェクト用フローティングIPレンジ -> 192.168.0.0/24

30

Page 31: OpenStack QuickStart - Icehouse

構築された初期状態のOpenStack環境(ネットワーク図)All-In-One

31

๏ 仮想マシンのインスタンスはprivate-subnetに接続される ๏ 外部(External Network)との通信はpublic-subnetからfloatingipアドレスを振り出して仮想マシンに割り当てる

RDO&packstackが自動構成してくれる初期環境Dashboardを利用して仮想環境を構築

Page 32: OpenStack QuickStart - Icehouse

Nova (Compute) の内部構造

32

(出典: 2014年WIDE春合宿 OpenStack)

Nova%conductor�

Nova,scheduler�nova%api� nova%api�

LB� LB�

Message,Queue�

nova%compute�hypervisor�

nova%compute�hypervisor� Scale,Out�

nova%compute�hypervisor�

Nova%conductor�

Nova,scheduler�

DB�

Nova� �� ���

������ ���

API,request�

%,State,management,%,Db,access,on,behalf,of,compute�

Page 33: OpenStack QuickStart - Icehouse

33

(出典: 2014年WIDE春合宿 OpenStack)

Neutron(Networking)の内部構造

neutron'server�

neutron'server�

LB� LB�

Scale'Out�

API'request�

L26agent�hypervisor�

OVS�

VLAN/VXLAN/OpenFlow�

L26agent�hypervisor�

OVS�

Neutron'RPC'worker�

DB�Message'Queue�

L26agent�hypervisor�

OVS���� ��������

Page 34: OpenStack QuickStart - Icehouse

仮想環境を管理するOpenStack起動後に実施する操作の流れを、IcehouseでモダンなデザインになったDashboardを利用して紹介します。 ※グレー部分はpackstackが作成してくれるので割愛します。 • 管理者が行う作業

• プロジェクト管理(admin,demoプロジェクトをpackstackが作成済) • ユーザの管理(admin,demoユーザをpackstackが作成済) • 外部ネットワークの管理(public/public-subnetをpackstackが作成済) • フレーバーの作成

• 利用者が行う作業 • 内部ネットワークの管理(private/private-subnetをpackstackが作成済) • 仮想ルータの作成(publicとprivateを結ぶ仮想ルータ「router1」をpackstackが作成済み) • セキュリティグループの作成 • 公開鍵の登録 • 仮想マシンのインスタンスを作成し起動 • 起動したインスタンスにフローティングIPを割り当て

34

Page 35: OpenStack QuickStart - Icehouse

demoプロジェクト• packstackが作成する文字通りのデモ用プロジェクト publicネットワーク(192.168.0.0/25)はadminユーザの管理下となり、フローティングIPとして利用することはできますが、demoユーザの管理対象とはなりません。 初期状態ではdemoユーザの管理下にあるのはprivateネットワークのみとなります。

35

demoユーザの管理下

adminユーザの管理下 192.168.0.0/24 をフローティングIPで利用

Page 36: OpenStack QuickStart - Icehouse

フレーバーの作成(1)• 仮想マシンのフレーバーを作成します フレーバーの追加は管理者であるadminユーザで実施します

36

Page 37: OpenStack QuickStart - Icehouse

• “m1.micro”フレーバーを追加します

フレーバーの作成(2)

37

VirtualBoxでRDO用に割り当てたVMのメモリが4GBしかないため、デフォルトの最小フレーバー(512MB)よりもさらに少ない64MBメモリのフレーバーを用意する

Page 38: OpenStack QuickStart - Icehouse

• “m1.micro”フレーバーが追加されました

フレーバーの作成(3)

38

m1.microが作成された

Page 39: OpenStack QuickStart - Icehouse

OpenStackのComputeノード管理単位は以下の通り。 ※この他にCellという管理単位がありますが、ここでは割愛します。 • Region - データセンタなど拠点レベルの粒度 - OpenStackのコントローラはRegion毎に配置 - HorizonのDashboardはログイン時にRegionを選択することにより接続先を選択可能

• Availability Zone - データセンタ内のラックレベルの粒度 - HostAggregationと組み合わせて利用 - 同一のRegion内に閉じる

• HostAggregation • 世代毎などで物理サーバのグルーピング • 同一のRegion内に閉じる

39

Computeノードのグループ化とフレーバーの関係(1)

Page 40: OpenStack QuickStart - Icehouse

40

Computeノードのグループ化とフレーバーの関係(2)

+----------------------------+------------------+ | Property | Value | +----------------------------+------------------+ | name | m1.tiny | | ram | 512 | | OS-FLV-DISABLED:disabled | False | | vcpus | 1 | | extra_specs | {u'm1': u'true'} | | swap | | | os-flavor-access:is_public | True | | rxtx_factor | 1.0 | | OS-FLV-EXT-DATA:ephemeral | 0 | | disk | 1 | | id | 0 | +----------------------------+------------------+

Id: 15 Name: rack1_m1 Availability Zone: rack1 Hosts: [u'c03', u’c04’, u’c05’] Metadata: {u'm1': u'true', u'availability_zone': u'rack1'}

+-----------------------+----------------------------------------+ | Name | Status | +-----------------------+----------------------------------------+ | internal | available | | |- c00 | | | | |- nova-conductor | enabled :-) 2014-03-27T05:03:56.000000 | | | |- nova-cert | enabled :-) 2014-03-27T05:03:56.000000 | | | |- nova-consoleauth | enabled :-) 2014-03-27T05:03:56.000000 | | | |- nova-scheduler | enabled :-) 2014-03-27T05:03:57.000000 | | rack1 | available | | |- c03 | | | | |- nova-compute | enabled :-) 2014-03-27T05:03:49.000000 | | |- c04 | | | | |- nova-compute | enabled :-) 2014-03-27T05:03:58.000000 | | |- c05 | | | | |- nova-compute | enabled :-) 2014-03-27T05:03:59.000000 | | rack2 | available | | |- c13 | | | | |- nova-compute | enabled :-) 2014-03-27T05:03:49.000000 | | |- c14 | | | | |- nova-compute | enabled :-) 2014-03-27T05:03:58.000000 | | |- c15 | | +-----------------------+----------------------------------------+

flavor

Host Aggregation

Availability Zone

VMインスタンスは、フレーバーのextra_specsで指定されたパラメータに従ってHost AggregationとAvailabilityZoneに登録されているComputeノード上に作成されます。

Page 41: OpenStack QuickStart - Icehouse

• ICMPとSSHを許可する最低限のグループ”base”を作成します demoプロジェクトの管理下に入る仮想マシンに適用するセキュリティグループを作成します。これ以降の作業はdemoユーザで実施します。

41

セキュリティグループの作成(1)

Page 42: OpenStack QuickStart - Icehouse

• ICMPとSSHを許可する最低限のグループ”base”を作成します

42

セキュリティグループの作成(2)

Page 43: OpenStack QuickStart - Icehouse

• baseセキュリティグループに許可ルールを追加します

43

セキュリティグループの作成(3)

ここにICMPとSSHを許可するルールを追加する

Page 44: OpenStack QuickStart - Icehouse

• ALL-ICMP許可ルールを選択して追加します

セキュリティグループの作成(4)

44

Page 45: OpenStack QuickStart - Icehouse

• SSH許可ルールを追加します

45

セキュリティグループの作成(5)

Page 46: OpenStack QuickStart - Icehouse

• “base”にICMPとSSHアクセスに対する許可が追加されました

46

セキュリティグループの作成(6)

SSHを許可するルールが追加された

ICMPを許可するルールが追加された

Page 47: OpenStack QuickStart - Icehouse

公開鍵の登録(1)• 仮想マシンへのSSHログイン用公開鍵を登録します

47

キーペアのインポートを選択する

Page 48: OpenStack QuickStart - Icehouse

公開鍵の登録(2)• キーペア名”admin”を作成しクライアントの公開鍵を登録します

48

Page 49: OpenStack QuickStart - Icehouse

公開鍵の登録(3)• キーペア名”admin”が作成されました

49

“admin”が作成され公開鍵が登録された

自主規制

Page 50: OpenStack QuickStart - Icehouse

• 仮想マシンを作成して起動します

50

仮想マシンのインスタンス作成と起動(1)

Page 51: OpenStack QuickStart - Icehouse

• 仮想マシン「server1」のスペックを設定します

51

仮想マシンのインスタンス作成と起動(2)

インスタンス名、フレーバー,作成するインスタンス数、元になるイメージ名を指定する

Page 52: OpenStack QuickStart - Icehouse

• 仮想マシンの公開鍵/セキュリティグループを設定します

52

仮想マシンのインスタンス作成と起動(3)

作成済のadminキーペアとbaseセキュリティグループを指定する

Page 53: OpenStack QuickStart - Icehouse

• 仮想マシン”server1”を接続するネットワークを設定します

53

仮想マシンのインスタンス作成と起動(4)

インスタンスを”private”ネットワークに割り当てる

Page 54: OpenStack QuickStart - Icehouse

• 仮想マシン”server1”が起動します

54

仮想マシンのインスタンス作成と起動(5)

“server1”が作成され起動する

Page 55: OpenStack QuickStart - Icehouse

• 仮想マシン「server1」にフローティングIPアドレスを割り当てます

55

フローティングIPアドレスの割り当て(1)

フローティングIPアドレスを割り当てる

Page 56: OpenStack QuickStart - Icehouse

• 仮想マシン用に新たにフローティングIPアドレスを払い出します

56

フローティングIPアドレスの割り当て(2)

新たにフローティングIPアドレスを払い出す

Page 57: OpenStack QuickStart - Icehouse

• 「public」ネットワークからフローティングIPアドレスを払い出します

57

フローティングIPアドレスの割り当て(3)

「public」ネットワークからフローティングIPアドレスを割り当て

Page 58: OpenStack QuickStart - Icehouse

• 仮想マシンにフローティングIPアドレスを割り当てます

58

フローティングIPアドレスの割り当て(4)

「public」ネットワークから192.168.0.3が払い出された

Page 59: OpenStack QuickStart - Icehouse

• 仮想マシンにフローティングIPアドレスが割り当てられました

59

フローティングIPアドレスの割り当て(5)

192.168.0.3が割り当てられた

Page 60: OpenStack QuickStart - Icehouse

インストール初期状態のOpenStackコントローラの構成

All-In-One環境(VM作成前)

60

br-ex(IPAddr 192.168.0.1)

eth0

qg-e101f8ba-3e IPAddr: 192.168.0.2

qr-051589d9-75 IPAddr: 10.0.0.1 VLAN tag:1

tap997e629f-28 VLAN tag:1

dnsmasq IPAddr:10.0.0.2

router1 (qrouter-3b19895e-2b1a-4e16-a38c-d099cc9ad7e9)

(qdhcp-139b1160-3cb3-4b60-a08b-1db2838e7114)

TAP Device

Network Namespace

デバイス名は参考値

br-int

Open vSwitch Bridge

All-In-Oneノード(rdo)

Page 61: OpenStack QuickStart - Icehouse

仮想マシンインスタンス起動後のOpenStack環境

All-In-One環境(VM作成後)

61

br-ex(IPAddr 192.168.0.1)

eth0

qg-e101f8ba-3e IPAddr: 192.168.0.2

qr-051589d9-75 IPAddr: 10.0.0.1 VLAN tag:1

tap997e629f-28 VLAN tag:1

dnsmasq IPAddr:10.0.0.2

router1 (qrouter-3b19895e-2b1a-4e16-a38c-d099cc9ad7e9)

(qdhcp-139b1160-3cb3-4b60-a08b-1db2838e7114)

TAP Device

Network Namespace

デバイス名は参考値

qvb058ced41-2ftap058ced41-2f

server1

eth0: 10.0.0.3

qbr058ced41-2f

qvo058ced41-2f VLAN tag: 1

br-int

veth pair

Open vSwitch Bridge

Linux Bridge

All-In-Oneノード(rdo)

Page 62: OpenStack QuickStart - Icehouse

仮想マシンインスタンス起動後のOpenStack環境(ネットワーク図)

62

All-In-One環境

demoプロジェクト ICMPとSSHの許可ルールは、このブリッジに接続されるTAPデバイスに対してiptalbesで許可される

フローティングIPの設定はネットワークノード上の仮想ルータのネームスペースにiptablesで設定される

Page 63: OpenStack QuickStart - Icehouse

まとめ• VMを利用したOpenStackによるクラウド基盤のサンドボックス環境の構築方法を紹介しました。

• RDO+packstack+VirtualBoxで比較的簡単にOpenStack環境を構築できます。

• RDOAll-In-One環境を紹介しましたが、役割毎にサーバを分けることも可能です。

• OpenStackが動作しているホストのネットワーク構成について図を交えて紹介しました。

• OpenStackはTAP/veth/NetworkNamespace/Open vSwitch/Linux BridgeなどLinuxの仮想ネットワーク機能をフル活用しています。

• 手軽にOpenStackの世界を体験しましょう!

63

Page 64: OpenStack QuickStart - Icehouse

参考• OpenStack公式サイト - http://www.openstack.org

• RDO - http://openstack.redhat.com/Quickstart

• devstack (今回は紹介していません) - http://devstack.org - https://github.com/openstack-dev/devstack.git

• OpenStackインストールドキュメント • http://docs.openstack.org/havana/

• 日本仮想化技術さんによる日本語版インストールドキュメント • http://enterprisecloud.jp/installguide-openstack/

64

Page 65: OpenStack QuickStart - Icehouse

ご清聴ありがとうございました !

Special Thanks: Akihiro Motoki, Tomoaki Nakajima, Manami Yokota

65