39
OpenStack ~ Quick Start ~ Japan OpenStack Users Group Internet Initiative Inc. Manami Yokota Hideki Saito (@saito_hideki) 1 ver1.9

OpenStack QuickStart - havana

Embed Size (px)

DESCRIPTION

RDO&packstack&VirtualBoxを利用したOpenStackのクイックスタート方法の紹介

Citation preview

Page 1: OpenStack QuickStart - havana

OpenStack ~ Quick Start ~

Japan OpenStack Users Group Internet Initiative Inc.

!Manami Yokota

Hideki Saito (@saito_hideki)

1 ver1.9

Page 2: OpenStack QuickStart - havana

目次• 自己紹介

• はじめに

• OpenStackを使ってみる • インストールする

• 仮想環境を管理する

• まとめ

2

Page 3: OpenStack QuickStart - havana

自己紹介• 氏名:

• 齊藤 秀喜(さいとう ひでき) twitterid: @saito_hideki

• 横田 愛美(よこた まなみ)

• 勤務先: 株式会社インターネットイニシアティブ(IIJ)

• http://www.iij.ad.jp/

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

• 趣味: OpenStack

3

Page 4: OpenStack QuickStart - havana

はじめに• OpenStackは2010年の1stリリース(Austin)から2013/10の最新リ

リース(Havana)まで8回のメジャーリリースを経て、大規模なパブリッククラウド基盤や、オンプレミスのプライベートクラウド基盤に採用されるケースが増えています。 !

• OpenStackは、このようなプロダクション環境での本格利用だけでなく、例えばノートPC上の仮想環境にクラウド基盤を構築して、その構造を学んだり、新たな機能を実装してテストをしたりというサンドボックスを*比較的*簡単に用意できるという嬉しい側面を持っています。 !

• 本セッションでは、このようなサンドボックス環境を手元に準備する方法をご紹介します。

4

Page 5: OpenStack QuickStart - havana

OpenStackを使ってみる

5

Page 6: OpenStack QuickStart - havana

サンドボックス(Host)• 今回利用するPC

• Apple MacBook Air 11inch • CPU: Intel Core i7 (1.7GHz)

• Memory: 8GB

• SSD: 256GB

• OS: MacOS X 10.9.1

• VirtualBox 4.3.6 • GuestOS CentOS 6.5 x86_64 (※x86_64版が必須要件です)

• OpenStack

• 2013.2 Havana Release

• RDO & packstack

6

Page 7: OpenStack QuickStart - havana

サンドボックス(Guest)• VirtualBoxをインストールし仮想マシンを作成する

• HostOnlyNetworkを2面(vboxnet0/vboxnet1)作成しておく

• vboxnet0 192.168.0.240 (192.168.0.0/24)

• vboxnet1 172.16.0.240 (172.16.0.0/24)

• 仮想マシンのスペック • CPU x 1 / HDD 20GB(VDI) / MEM 2GB

• Network

• Adapter1 (vboxnet0)

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

• Adapter2 (vboxnet1)

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

• Adapter3 (NAT)

7

Page 8: OpenStack QuickStart - havana

• サンドボックス構成

インストールする(1)

8

“rdo” OpenStack BOX

vboxnet0 192.168.0.0/24 FloatingIP

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

NAT 10.0.4.0/24 OpenStackインストール用に利用する 外部接続用ネットワーク

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ネットワーク経由で、packstackを利用したOpenStackのインストールを行う

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

eth2: 10.0.4.15

Page 9: OpenStack QuickStart - havana

インストールする(2)• OpenStackのインストール方法

1. 公式ドキュメントを参考に構築にインストールする ��������公式ドキュメントをベースに日本仮想化技術株式会社さんが日本語で補完し てくれた完全版がありますので、初めてであれば以下がオススメです。 ������ http://enterprisecloud.jp/installguide-openstack/

2. devstackを利用してインストールする OpenStackの開発者が自身で開発したコードをテストする目的で開発されて いるプロダクトです。 つまりdevstackを利用してOpenStackをインストールすれば、基本的に正常 動作するハズなんですが・・・

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

9

Page 10: OpenStack QuickStart - havana

インストールする(3)• OSの基本設定(1)

• /etc/hostsに自身のエントリを追加(rootユーザで実施) 172.16.0.1 rdo

• /etc/sysconfig/networkにホスト名を設定(rootユーザで実施) HOSTNAME=rdo

• /etc/sysconfig/network-scripts/ifcfg-eth0を設定(vboxnet0) (rootユーザで実施) DEVICE=eth0 BOOTPROTO=static NM_CONTROLLED=no ONBOOT=yes TYPE=Ethernet

• /etc/sysconfig/network-scripts/ifcfg-eth1を設定(vboxnet1) (rootユーザで実施) DEVICE=eth1 BOOTPROTO=static NM_CONTROLLED=no ONBOOT=yes TYPE=Ethernet IPADDR=172.16.0.1 NETMASK=255.255.255.0 NETWORK=172.16.0.0 BROADCAST=172.16.0.255

• /etc/sysconfig/network-scripts/ifcfg-eth2(NAT network) (rootユーザで実施) DEVICE=eth2 BOOTPROTO=dhcp NM_CONTROLLED=no ONBOOT=yes TYPE=Ethernet • 基本設定が完了したらOSを再起動(rootユーザ で実施)

10

Page 11: OpenStack QuickStart - havana

インストールする(4)• RDO & packstackでOpenStack環境をインストールする

RDOとpackstackがOpenStackに必要なソフトウェア一式を自動インストール 【インストール対象ソフトウェア群】

• MySQL

• QPID

• Keystone

• Glance

• Cinder

• Nova

• Neutron

• Horizon

• Swift

• Heat

• Ceilometer

• Tempest

• OpenStack Clientライブラリ

• Nagios

11

Page 12: OpenStack QuickStart - havana

インストールする(5)• RDOとpackstackのインストール

• stackユーザを作成しwheelグループに登録する(rootユーザで実施) # useradd -G wheel stack # passwd stack Changing password for user stack. New password: ******** Retype new password: ******** passwd: all authentication tokens updated successfully.

• /etc/sudoersでwheelグループにsudoを許可する(rootユーザで実施) %wheel ALL=(ALL) ALL

• RDOのリポジトリをインストールする(stackユーザで実施) $ sudo yum install -y http://rdo.fedorapeople.org/rdo-release.rpm

• packstackをバージョン指定(2013.2.1-0.25.dev936)でインストールする(stackユーザで実施) $ sudo yum install -y openstack-packstack-2013.2.1-0.25.dev936.el6

• packstackでの自動インストール用answerファイルを作成する(stackユーザで実施)

• 今回利用するanswerファイルは以下のパスからダウンロード

�����������https://github.com/h-saito/packstack-answer/blob/master/all-in-one.conf $ git clone https://github.com/h-saito/packstack-answer.git && cd packstack-answer $ git checkout -b 2013.2.1-0.25.dev936 refs/tags/openstack-packstack-2013.2.1-0.25.dev936

• packstackを利用してOpenStackを自動インストールする 注意)今回の環境では完了まで40分〜1時間程度かかります。

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

12

Page 13: OpenStack QuickStart - havana

インストールする(6)• packstackインストール後

• nagiosadminユーザのパスワードをメモする

nagiosadminユーザのパスワードはインストール後に出力されるメッセージに含まれるので要確認

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

libvirt_type=qemu

• /etc/sysconfig/network-scripts/ifcfg-eth0を修正する eth0をbr-exに接続するよう修正する

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

• br-exにeth0を割り当てて仮想マシンをHyperVisorの外部と通信させるための経路を確保する $ sudo ovs-vsctl add-port br-ex eth0

• 再起動してインストール作業を完了する

• ログイン情報 ���インストール完了後、ログインに必要な情報は以下のファイルに置かれているので確認しておく

• adminユーザ��/root/keystonerc_admin

• demoユーザ /root/keystonerc_demo

• WebUI URL http://172.16.0.1/

13

Page 14: OpenStack QuickStart - havana

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

All-In-One

14

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

RDO&packstackが自動構成してくれる環境

Page 15: OpenStack QuickStart - havana

仮想環境を管理する• OpenStack起動後

• 管理者が行う作業

• プロジェクト管理(admin,demoプロジェクトをpackstackが作成済)

• ユーザの管理(admin,demoユーザをpackstackが作成済)

• 外部ネットワークの管理(public/public-subnetをpackstackが作成済)

• フレーバーの作成

• 利用者が行う作業

• 内部ネットワークの管理(private/private-subnetをpackstackが作成済)

• 仮想ルータの作成(publicとprivateを結ぶ仮想ルータ「router1」をpackstackが作成済み)

• セキュリティグループの作成

• 公開鍵の登録

• 仮想マシンのインスタンスを作成し起動

• 起動したインスタンスにフローティングIPを割り当て

15

Page 16: OpenStack QuickStart - havana

フレーバーの作成(1)• 仮想マシンのフレーバー(グレードのようなもの)を作成する

16

Page 17: OpenStack QuickStart - havana

フレーバーの作成(2)• 「m1.micro」フレーバーを追加する

17

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

Page 18: OpenStack QuickStart - havana

フレーバーの作成(3)• 「m1.micro」フレーバーが追加された

18

m1.microが作成された

Page 19: OpenStack QuickStart - havana

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

19

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

Page 20: OpenStack QuickStart - havana

• セキュリティグループにルールを追加する

20

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

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

Page 21: OpenStack QuickStart - havana

• ICMP許可ルールを追加。種別とコードは「-1」に設定しておく

21

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

Page 22: OpenStack QuickStart - havana

• SSH許可ルールを追加する

22

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

Page 23: OpenStack QuickStart - havana

• 「base」にICMPとSSHアクセスに対する許可が追加された

23

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

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

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

Page 24: OpenStack QuickStart - havana

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

24

Page 25: OpenStack QuickStart - havana

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

25

Page 26: OpenStack QuickStart - havana

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

26

「admin」が作成され公開鍵が登録された

Page 27: OpenStack QuickStart - havana

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

27

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

Page 28: OpenStack QuickStart - havana

• 仮想マシン「server1」の詳細を設定する

28

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

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

Page 29: OpenStack QuickStart - havana

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

29

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

キーペアとセキュリティグループを設定する

Page 30: OpenStack QuickStart - havana

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

30

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

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

Page 31: OpenStack QuickStart - havana

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

31

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

「server1」が作成され起動する

10.0.0.3

Page 32: OpenStack QuickStart - havana

• 仮想マシン「server1」にフローティングIPを割り当てる

32

起動したインスタンスにフローティングIPを割り当て(1)

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

10.0.0.3

Page 33: OpenStack QuickStart - havana

• 仮想マシン「server1」に「public」ネットワークからフローティングIPを割り当てる

33

起動したインスタンスにフローティングIPを割り当て(2)

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

Page 34: OpenStack QuickStart - havana

• RDO&packstackによる構築初期状態のOpenStack IaaSコントローラ

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

34

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-28VLAN tag:1

dnsmasqIPAddr:10.0.0.2

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

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

TAP Device

Network Namespace

デバイス名は参考値

br-int

Open vSwitchBridge

All-In-Oneノード(rdo)

Page 35: OpenStack QuickStart - havana

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

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

35

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-28VLAN tag:1

dnsmasqIPAddr:10.0.0.2

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

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

TAP Device

Network Namespace

デバイス名は参考値

qvb058ced41-­2f

tap058ced41-­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 36: OpenStack QuickStart - havana

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

36

All-In-One環境

demoプロジェクト

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

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

Page 37: OpenStack QuickStart - havana

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

構築方法を紹介しました。

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

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

• OpenStackが動作しているホストのネットワーク構成について図を交えて紹介しました。OpenStackではTAP/veth/NetworkNamespace/Open vSwitch/Linux BridgeなどLinuxの仮想ネットワーク機能をフル活用しています。

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

37

Page 38: OpenStack QuickStart - havana

参考• 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/

38

Page 39: OpenStack QuickStart - havana

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

39