openstackで始めるクラウド環境構築入門 havana&devstack編

Post on 28-May-2015

10.215 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

イベント名:オープンソースカンファレンス(OSC) 2013 講師:日本仮想化技術 宮原 日時:2013/12 アジェンダ: • OpenStack概要 • OpenStack導入手順 – Ubuntu Server 11.10 インストールと設定 – 各種コンポーネント インストールと設定 – イメージ作成 – インスタンス起動 概要: OpenStackはOSSで開発が行われているクラウド環境構築のためのソフトウェアです。本セッションでは、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 最新情報セミナー開催中

• OpenStack に関する最新情報セミナーを開催

次回日程• 日時: 2014 年 2 月 6 日 ( 木 ) 14 時〜(予定)

18 時 30分〜• 内容: OpenStack 環境構築入門( 14 時〜)

HP Moonshot+ ベアメタル OpenStack ( 18 時 30分〜)

• 費用:無償

詳細はEnterpriseCloud.jp をご覧下さい

8

本日のアジェンダ

• OpenStack の概要• OpenStack 導入手順

– Ubuntu Server 12.04.3 のインストールと設定

– DevStack による OpenStack のインストール– インスタンスの起動– Floating IP による外部接続設定

まずは OpenStack を体験してみたい人向け

OpenStack の概要

10

OpenStack 概要

仮想マシン ネットワーク ストレージ

Web 管理画面

IaaS 環境を実現するソフトウェアスタック

11

OpenStack 構成図

MQや REST で相互接続

12

OpenStack の構成要素( 1 )

• Nova– コンピュータ(計算機)インフラ– 仮想マシンやネットワークを管理

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

• Glance– イメージ管理– 仮想マシンのイメージを登録

13

OpenStack の構成要素( 2 )• Quantum → Neutron

– 仮想ネットワークインフラを提供• Horizron

– Dashboard とも呼ばれる– Web 管理インターフェース

• Keystone– 認証系サービス– Identity/Token/Catalog/Policy

• Cinder– ブロックストレージを提供

14

OpenStack の構成要素( 3 )

Havana から追加されたコンポーネント• Ceilometer

–雲高計・雲量計– クラウドリソースの利用量を計測する API–課金システムと連動させる

• Heat–自動化を支援する API– Chefや Puppet とも連動– AWS CloudFormation と互換性

15

Nova の主なコンポーネント• API Server ( nova-api )

– 外部に API を提供• Message Queue ( rabbit-mq server )

– 各コンポーネントへの通信をキューイング• Compute Workers ( nova-compute )

– インスタンスの管理• Network Controller ( nova-network )

– ネットワークの管理• Volume Worker ( nova-volume )

– ボリュームの管理• Scheduler ( nova-scheduler )

– API呼び出しのコンポーネントへの割り当て

16

今回の方針

• Ubuntu Server 12.04.3LTS をベースに構築

• DevStack を使って OpenStack を動かす• すべてを 1台でまかなう

–必要に応じて複数台での構成も可能• Floating IP で外部からインスタンスに接続できるようにする

• 今回は Neutron,Ceilometer,Heatは未使用

17

DevStack とは• OpenStack の開発環境を容易に構築できるシェル

スクリプト群– http://devstack.org/– 動作検証目的でも十分利用可能– All in Oneや複数Novaノードなど各種形態

• 必要となるパッケージを apt で自動インストール• git リポジトリから OpenStack の各種ファイルを

取得• 一般ユーザー権限で実行する点に注意

– root権限は sudo呼び出しで実行

Ubuntu Server 12.04.3 のインストールと設定

19

Ubuntu Server 12.04.3 のインストールと設定

1. ベース OS としてのインストール– English でインストールする– ロケールを United States に設定する– KVM を有効にしておく

2. デスクトップ環境のインストール3. 仮想マシンマネージャーのインストー

ル4. IP アドレスの設定

–固定 IP アドレスに設定

20

ベース OS としてのインストール

1. インストール時に以下のコンポーネントを追加でインストールしておく– OpenSSH server– Virtual Machine host

2. デスクトップ環境のインストール# apt-get update# apt-get upgrade# apt-get -y install ubuntu-desktop

3. システムの再起動4. 仮想マシンマネージャーのインストール

# apt-get -y install virt-manager

21

固定 IP アドレスの設定

1. /etc/network/interfaces の編集

2. networking サービスの再起動# /etc/init.d/networking restart

auto eth0iface eth0 inet static

address 192.168.1.100network 192.168.1.0netmask 255.255.255.0broadcast 192.168.1.255gateway 192.168.1.1dns-nameservers

192.168.1.1

各種コンポーネントのインストールと設定

23

各種コンポーネントのインストールと設定

1. git のインストール2. DevStack のソースを取得3. DevStack の設定

– localrc の作成4. stack.sh の実行

24

git のインストール

• DevStack のソースを取得するためにgit をインストールする$ sudo apt-get update$ sudo apt-get -y install git

25

DevStack のソースを取得1. github より DevStack を取得

$ cd ~$ git clone https://github.com/openstack-dev/devstack.git$ cd devstack/

2. 安定版の Havana を使うようにブランチを設定$ git checkout -b havana remotes/origin/stable/havana

3. ブランチの設定が完了すると以下のメッセージを表示Branch havana set up to track remote branch stable/havana from origin.Switched to a new branch ’havana'

26

~/devstack/localrc の設定

~/devstack/localrc に様々な設定を記述1. OpenStack のインストール先2. admin のパスワード3. MySQL のパスワード4. Floating Range の IP範囲の設定5. Fixed Range の IP範囲の設定

27

Fixed IP と Floating IP の仕組み① FIXED_RANGE で割

り当てられる。①同士は通信できるが、③とは通信できない

② FLOATING_RANGEで割り当てられる。実際には②と①との間で静的 NAT を行っている。③→②→①と繋がる

サービス

クライアント③

インスタンス

28

localrc の作成DEST=/opt/stack

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=tokentoken

FLOATING_RANGE=192.168.1.224/27

FIXED_RANGE=10.0.0.0/24

FIXED_NETWORK_SIZE=256

FLAT_INTERFACE=eth0※次のページに続く

29

stack.sh の実行• stack.sh を実行

$ cd ~/devstack$ ./stack.sh

• 環境の構成が行なわれる– localrc に指定した構成でインストール開始– sudo コマンドを呼び出す(要パスワード)–必要なパッケージを自動でインストール– 構成に時間がかかる(デモ環境で 40分程度)

• 2 回目で 5分半ぐらい( Essex より長くなった!)

30

インストールが成功するとHorizon is now available at http://192.168.1.100/Keystone is serving at http://192.168.1.100:5000/v2.0/Examples on using novaclient command line is in exercise.shThe default users are: admin and demoThe password: openstackThis is your host ip: 192.168.1.100stack.sh completed in 2470 seconds.

31

iptables の追加設定• DevStack のバグ?でインスタンスに Fixed

IP が割り当てられない–ゲスト OS が DHCP で Fixed IP を取得しようと

するが「 bad udp cksum」でエラーになる–今後ネットワークは Neutron+Open vSwitch に

なるので直されることは無いかも?• 以下の iptables コマンドを実行

– $ sudo iptables -A POSTROUTING -t mangle -p udp --dport 68 -j CHECKSUM --checksum-fill

32

Web 管理インターフェースへの接続

• テスト用にイメージが既に登録されている– CirrOS が動作する

• Web 管理インターフェイス (Horizon) にアクセスするとインスタンスの作成などが行なえる– http://192.168.1.100/–ユーザー名: admin– パスワード: openstack

33

Horizon 認証画面

34

Horizon インスタンス画面

35

インスタンスの起動

• 「プロジェクトタブ」をクリック• 「イメージとスナップショット」をク

リック• 起動したいイメージのアクションから「起動」をクリック

• インスタンス名を入力• 「起動」をクリック

36

インスタンス起動画面

37

いくつか Tips

• DevStack を停止する方法– $ ./unstack.sh を実行– 仮想マシンのインスタンスは実行された

まま• インターネット接続無しで起動する

– 最低でも初回はインターネット接続が必要– $ OFFLINE=True ./stack.sh として実行

• stack.sh の中身を読むと色々書いてある

38

Floating IP とセキュリティ設定

Floating IP 概要

• Floating IP を利用することで外部からインスタンスへアクセス可能

1. Floating IP を発行2. インスタンスに Floating IP を割当3. セキュリティグループを設定して、ア

クセスに必要なポートを開放– SSH接続なら 22/TCP など

40

Floating IP を発行

1. 「プロジェクト」タブをクリック2. 「アクセスとセキュリティ」をクリック3. 「 Floating IP」タブをクリック4. 「 Floating IP の確保」をクリック5. 「プール」を選択(ここでは public )6. 「 IP の確保」をクリック7. IP アドレスが割り当てられたことを確認

41

Floating IP を割り当て

1. 「プロジェクト」タブをクリック2. 「インスタンス」をクリック3. 割り当てたいインスタンスのアクションか

ら「 Floating IP の割り当て」を選択4. Floating IP が割り当てられたことを確認

42

セキュリティグループの設定• セキュリティグループを設定し、必要なポー

トを開ける– default セキュリティグループは全てのポートが閉

じた状態• 「アクセスとセキュリティ」をクリック• default セキュリティグループのアクションか

ら「ルールの編集」をクリック• 「ルールの追加」をクリック• ルール、パラメータを入力して「追加」をク

リック

43

ポート開放例

• Web ( HTTP,HTTPS )、 SSH 、 ICMPすべてを許可

44

Ping を発行$ ping 192.168.1.226PING 192.168.1.226 (192.168.1.226): 56 data bytes64 bytes from 192.168.1.226: icmp_seq=0 ttl=63

time=1.015 ms64 bytes from 192.168.1.226: icmp_seq=1 ttl=63

time=1.233 ms64 bytes from 192.168.1.226: icmp_seq=2 ttl=63

time=1.484 ms^C--- 192.168.1.226 ping statistics ---3 packets transmitted, 3 packets received, 0.0%

packet lossround-trip min/avg/max/stddev =

1.015/1.244/1.484/0.192 ms

45

インスタンスに SSH接続$ ssh cirros@192.168.1.226The authenticity of host '192.168.1.226 (192.168.1.226)' can't

be established.RSA key fingerprint is

c0:50:ba:99:35:e7:a7:1c:e8:f3:0b:10:67:ed:7f:62.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.1.226' (RSA) to the list of

known hosts.cirros@192.168.1.226's password: cubswin:)$ uname -aLinux cirros 3.2.0-37-virtual #58-Ubuntu SMP Thu Jan 24

15:48:03 UTC 2013 x86_64 GNU/Linux$ ifconfig eth0eth0 Link encap:Ethernet HWaddr FA:16:3E:76:8B:4B inet addr:10.0.0.2 Bcast:10.0.0.255

Mask:255.255.255.0

46

いくつかの宿題• Neutron を利用した仮想ネットワークの構築

– openvswitch-datapath-dkms のインストールが失敗– Ubuntu のカーネルバージョンと Open vSwitch の

バージョンの不整合周りを検証していて時間切れ• 複数台による OpenStack 環境の構成

– nova-computeノードを複数台• Ceilometer 、 Heat のインストール• DevStack を使わないインストール

– 手順書は EnterpriseCloud.jp からダウンロード可能

47

仮想化について相談したい

• 既存環境を仮想化移行する概要設計• 他社提案に対する「セカンドオピニオ

ン」• もちろん OpenStack 構築・カスタマイ

ズも

無料コンサルティング実施中

お気軽にお問い合わせください

48

お問い合わせ先「仮想化環境を構築したいが、どこに相談すればいい

の?」「 OpenStack のサポートしてくれる会社はない

の?」

まずは我々にご相談ください

http://VirtualTech.jp/sales@VirtualTech.jp

03-6419-7841

top related