contrail handson 手順書

46
CONTRAIL VERSION 1.05 インストール手順書 Ver1.00

Upload: daisuke-nakajima

Post on 27-Jun-2015

1.779 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Contrail handson 手順書

CONTRAIL VERSION 1.05

インストール手順書

Ver1.00

Page 2: Contrail handson 手順書

もくじ

内容

仮想マシンの作成 ................................................................................................................... 3

OSのインストール ................................................................................................................ 8

Ubuntuの場合 ................................................................................................................... 8

Contrailのインストール ..................................................................................................... 16

rootパスワードを設定 ...................................................................................................... 16

Contrailパッケージのアップロード ................................................................................ 16

パッケージの確認 ............................................................................................................. 17

パッケージの展開 ............................................................................................................. 17

Contrailパッケージのセットアップ ................................................................................ 17

testbed.pyの作成 ............................................................................................................. 17

Contrailのインストール .................................................................................................. 21

Contrailの設定 ................................................................................................................ 21

動作確認 ............................................................................................................................ 21

仮想マシン、仮想ネットワーク作成の流れ ..................................................................... 22

イメージの登録 .................................................................................................................... 23

プロジェクトの作成 ............................................................................................................. 24

IPAMの作成 ........................................................................................................................ 25

Openstackからの設定方法 .............................................................................................. 25

Contrailからの設定方法 .................................................................................................. 27

仮想ネットワークの作成 ...................................................................................................... 29

Openstackからの設定方法 .............................................................................................. 29

Contrailからの設定方法 .................................................................................................. 31

仮想マシンの作成 ................................................................................................................. 33

ポリシーの作成と適用.......................................................................................................... 35

ポリシーの作成 ................................................................................................................. 35

ポリシーの適用 ................................................................................................................. 37

サービスチェイニング.......................................................................................................... 40

サービステンプレートの作成 ........................................................................................... 40

Page 3: Contrail handson 手順書

仮想マシンの作成

新規仮想マシンの作成をクリックします。

後で OSをインストール を選択し、「次へ」

Page 4: Contrail handson 手順書

Linux を選択し、「次へ」

※バージョンはベース OSを選択してください。

仮想マシン名 を入力し、「次へ」

Page 5: Contrail handson 手順書

ディスク最大サイズ を入力し、「次へ」

※約 100GBあれば Contrailの動作を試すことが可能です。

ハードウェアをカスタマイズ をクリックします。

Page 6: Contrail handson 手順書

この仮想マシンのメモリ を 4GB以上に設定します。

※これよりメモリが少ない場合、Contrailが正常にインストールできない場合があります。

Intel VT-x/EPTまたは AMD-V/RVIを仮想化 を選択します。

※この設定ができない場合、仮想マシン作成時にエラーが発生します。

Page 7: Contrail handson 手順書

ISO イメージファイルを使用する 選択し、Ubuntu12.03 もしくは CentOS6.3 の ISO イ

メージを選択します。選択後、閉じる をクリックします。

完了 をクリックします。

これで仮想マシンが作成されました。

Page 8: Contrail handson 手順書

OS のインストール

Ubuntu の場合

インストール言語を選択します。

使いやすい言語を選んでください。

Page 9: Contrail handson 手順書

ロケーションを選択します。

ロケーションは Contrailや Openstackの動作には影響しません。

ロケールを選択します。

ロケールは Contrailや Openstackの動作には影響しません。

Page 10: Contrail handson 手順書

キーボードを選択します。

ご自身の PCにあったキーボードを選択してください。

OSのホスト名を入力します。

Page 11: Contrail handson 手順書

ユーザー名を入力します。

※rootは入力できません。rootのパスワードはログイン後設定します。

パスワードを入力します。

※rootは入力できません。rootのパスワードはログイン後設定します。

Page 12: Contrail handson 手順書

ディレクトリの暗号化を選択します。ここではNoを選択します。

タイムゾーンの確認をします。ここでは Yesを選択します。

Page 13: Contrail handson 手順書

ハードディスクのパーティションを変更します。

Guided use entire diskを選択し、ガイドに従ってパーティションを作成します。

HTTP proxyはないので、なにも入力せず Continueを選択します。

Page 14: Contrail handson 手順書

No automatic updates を選択します。

※ここでアップデートすると、Contrailがインストールできなくなる場合があります。

OpenSSH serverのみ選択し、Continueを選択します。

インストールが始まります。

Page 15: Contrail handson 手順書

ブートローダーをインストールします。Yesを選択してください。

インストールが終わったら Continueを選択してください。

OSが自動的に再起動します。

Page 16: Contrail handson 手順書

Contrail のインストール

root パスワードを設定

rootのパスワードを設定します。

Contrail パッケージのアップロード

WinSCPなどでインストールした仮想マシンに接続し、パッケージをアップロードします。

Ubuntuの場合:

contrail-install-packages_1.05-211~havana_all.deb

をアップロードします。

lab@Host01:~$ sudo passwd root

[sudo] password for lab:

Enter new UNIX password:

Retype new UNIX password:

passwd: password updated successfully

Page 17: Contrail handson 手順書

パッケージの確認

パッケージが正常にアップロードされているか確認します。

パッケージの展開

パッケージを展開します。

/opt/contrailにファイルが展開されます。

Contrail パッケージのセットアップ

必要なパッケージが展開され、インストールされます。

testbed.py の作成

testbed.py は Contrail の各コンポーネントを自動インストールするための定義ファイルで

す。/opt/contrail/utils/ から呼び出して使用します。

該当ディレクトリに移動し、サンプルファイルをコピーします。

コピーしたら testbed.pyを修正します。

次ページ以降、修正箇所を太字で表示しています。

lab@Host01:~$ su -

Password:

root@Host01:~# ls

contrail-install-packages_1.05-211~havana_all.deb

root@Host01:~# dpkg -i contrail-install-packages_1.05-211~havana_all.deb

root@Host01:~# cd /opt/contrail/

root@Host01:/opt/contrail

root@Host01:~# cd /opt/contrail/contrail_packages/ ; ./setup.sh

root@Host01:~# cd /opt/contrail/utils/

root@Host01:~# cp fabfile/testbeds/testbed_singlebox_example.py

fabfile/testbeds/testbed.py

root@Host01:~# vi fabfile/testbeds/testbed.py

Page 18: Contrail handson 手順書

from fabric.api import env

#Management ip addresses of hosts in the cluster

host1 = '[email protected]' <<< 自身の IPアドレスに変更

#External routers if any

#for eg.

#ext_routers = [('mx1', '10.204.216.253')]

ext_routers = []

#Autonomous system number

router_asn = 64512

#Host from which the fab commands are triggered to install and provision

host_build = '[email protected]' <<< 自身の IPアドレスに変更

#Role definition of the hosts.

env.roledefs = {

'all': [host1],

'cfgm': [host1],

'openstack': [host1],

'control': [host1],

'compute': [host1],

'collector': [host1],

'webui': [host1],

'database': [host1],

'build': [host_build],

}

#Openstack admin password

env.openstack_admin_password = 'secret123'

#Hostnames

env.hostnames = {

'all': ['a0s1'] <<< 自身のホスト名に変更

}

~次ページへ~

Page 19: Contrail handson 手順書

env.password = 'secret' <<< サーバの rootパスワードに変更

#Passwords of each host

env.passwords = {

host1: 'secret', <<< サーバの rootパスワードに変更

host_build: 'secret', <<< サーバの rootパスワードに変更

}

#For reimage purpose

env.ostypes = {

host1:'centos', <<< Ubuntuの場合、ubuntuに変更

}

#OPTIONAL BONDING CONFIGURATION

#==============================

#Inferface Bonding

#bond= {

# host1 : { 'name': 'bond0', 'member':

['p2p0p0','p2p0p1','p2p0p2','p2p0p3'], 'mode':'balance-xor' },

#}

#OPTIONAL SEPARATION OF MANAGEMENT AND CONTROL + DATA

#====================================================

#Control Interface

#control = {

# host1 : { 'ip': '192.168.10.1/24', 'gw' : '192.168.10.254',

'device':'eth0' },

#}

#Data Interface

#data = {

# host1 : { 'ip': '192.161.10.1/24', 'gw' : '192.161.10.254',

'device':'bond0' },

#}

~次ページへ~

Page 20: Contrail handson 手順書

※Contrail のノードを複数のサーバにインストールする場合は testbed_multibox_expanle

を使用する。設定方法は付録を参照

#To disable installing contrail interface rename package

#env.interface_rename = False

#To use existing service_token

#service_token = 'your_token'

#Specify keystone IP

#keystone_ip = '1.1.1.1'

#Specify Keystone admin user if not same as admin

#keystone_admin_user = 'nonadmin'

#Specify Keystone admin password if not same as env.openstack_admin_password

#keystone_admin_password = 'contrail123'

#Specify Region Name

#region_name = 'RegionName'

#To enable multi-tenancy feature

#multi_tenancy = True

#To enable haproxy feature

#haproxy = True

#To Enable prallel execution of task in multiple nodes

#do_parallel = True

# To configure the encapsulation priority. Default: MPLSoGRE

#env.encap_priority = "'MPLSoUDP','MPLSoGRE','VXLAN'"

Page 21: Contrail handson 手順書

Contrail のインストール

fabコマンドを使用し、Contrailの各種ノードや Openstackなどをインストールします。

Contrail の設定

fab コマンドを使用し、各種ノードや Openstackなどの設定をします。

正常にインストールが終わるとリブートします。

これでインストールは終わりです。

動作確認

OpenStackの確認

http://192.168.80.128/horizon/

ユーザー名: admin パスワード:secret123

Contrailの確認

http://192.168.80.128:8080

ユーザー名: admin パスワード:secret123

root@Host01:~# fab install_contrail

root@Host01:~# fab setup_all

Page 22: Contrail handson 手順書

仮想マシン、仮想ネットワーク作成の流れ

以下の順で仮想マシン、仮想ネットワークを作成します。

1. イメージの登録

2. プロジェクトの作成

3. IPAMの作成

4. 仮想ネットワークの作成

5. 仮想マシンの作成

6. ポリシーの作成と適用

7. 仮想サービスの作成と適用

Page 23: Contrail handson 手順書

イメージの登録

Openstackに仮想マシンのイメージと、仮想サービスのイメージを登録します。

Page 24: Contrail handson 手順書

プロジェクトの作成

コントレイル用のプロジェクトを作成します。

このとき、プロジェクトメンバーの指定を必ずしてください。

Page 25: Contrail handson 手順書

IPAM の作成

IPAMは Openstack / Contrailのどちらからでも作成できます。

Openstack からの設定方法

先ほど作成したプロジェクトを指定し、プロジェクトの管理画面を表示します。

Networking - > Create Networkをクリックします。

続いて、IPAMの「+」をクリックします。

Page 26: Contrail handson 手順書

Namesに IPAM名を入力し、Create IPAMをクリックします。

作成されました。

Page 27: Contrail handson 手順書

Contrail からの設定方法

Configure -> Networking -> IP address Managementを開き、プルダウンからプロジェク

トを選択し、Createをクリックします。

Nameに IPAM名をつけ、Saveをクリックします。

Page 28: Contrail handson 手順書

作成されました。

Page 29: Contrail handson 手順書

仮想ネットワークの作成

仮想ネットワークは Openstack / Contraiのどちらからでも作成できます。

Openstack からの設定方法

Networking -> Networksタブ から Create Networkをクリックします

Nameに仮想ネットワーク名を入力し、IP Blockに x.x.x.x/xの形式でアドレスを入力しま

す。IPAMを先ほど作成したものを選択し、Create Networkをクリックします。

Page 30: Contrail handson 手順書

作成されました。

Page 31: Contrail handson 手順書

Contrail からの設定方法

Configure-> Networking -> Networks を開き、プルダウンからプロジェクトを選択し、

Createをクリックします。

Network Name に仮想ネットワーク名を入力し、IPAM を先ほど作成したものを選択、IP

Blockに x.x.x.x/xの形式でアドレスを入力し、+をクリックします。

入力後 Saveをクリックします。

Page 32: Contrail handson 手順書

作成されました。

Page 33: Contrail handson 手順書

仮想マシンの作成

仮想マシンは Openstackから作成します。

Instancesを開き、Launch Instancesをクリックします。

Instance Nameに仮想マシンの名前を入力し、Instance Boot sourceからイメージを選択

します。

Page 34: Contrail handson 手順書

Networkingのタブから仮想ネットワークを選択し、Launchをクリックします。

仮想マシンが作成されました。

Page 35: Contrail handson 手順書

ポリシーの作成と適用

ポリシーの作成

仮想ネットワーク間の通信を可能にするため、ポリシーを作成します。

Configure-> Networking -> Policy を開き、プルダウンからプロジェクトを選択し、Create

をクリックします。

Page 36: Contrail handson 手順書

Policy Nameにポリシーの名前を入力し、+ボタンをクリックします。

Policy Rulesが追加されるので、Source Networkと Destination Networkに仮想ネットワ

ークを指定し Saveをクリックします。

ポリシーが作成されました。

Page 37: Contrail handson 手順書

ポリシーの適用

作成したポリシーを仮想ネットワークに適用します。

Configure-> Networking -> Networks を開き、プルダウンからプロジェクトを選択します。

ポリシーを適用する仮想ネットワークのアイコンをクリックし、Editを選択します。

Page 38: Contrail handson 手順書

Network Policy(s) からポリシーを選択し、Saveをクリックします。

ポリシーが適用されました。

Page 39: Contrail handson 手順書

ネットワーク間の接続は、Monitor-> Networking -> Projects を開き、確認したいプロジェ

クトを選択します。 「○」が仮想ネットワークを示しており、「-」は仮想ネットワーク

間の接続を示しています。

Page 40: Contrail handson 手順書

サービスチェイニング

仮想ネットワークに適用する仮想サービスを登録し、仮想ネットワーク間に適用します。

サービステンプレートの作成

仮想サービスはテンプレートから呼び出して使用します。

仮想サービスのイメージはオープンスタックにイメージとして登録します。

Configure-> Services -> Service Templates を開き、Createをクリックします。

Page 41: Contrail handson 手順書

Nameにテンプレートの名前を入力します。Service Modeは In-Networkを選択肢、Service

Typeは Firewallを指定します。

Image Nameから仮想サービスのイメージを選択肢、+ボタンをクリックし、Management、

Left、Rightを追加し、Saveをクリックします。

Page 42: Contrail handson 手順書

作成されました。

テンプレートから仮想サービスを起動します。

Configure-> Services -> Service Instancesを開き、プロジェクトを選択して Createをク

リックします。

Page 43: Contrail handson 手順書

Instance Nameに仮想サービス名を入力し、Services Templateから起動したいテンプレー

トを選択します。

Interface1は変更せず、Interface 2と 3に適用する仮想ネットワークを選択し、Saveをク

リックします。

Page 44: Contrail handson 手順書

作成されました。

Page 45: Contrail handson 手順書

Configure-> Networking -> Policies を開き、プルダウンからプロジェクトを選択します。

インスタンスを適用するポリシーのアイコンをクリックし、Editを選択します。

Apply Serviceをクリックし、インスタンスを選択し、Saveをクリックします。

Page 46: Contrail handson 手順書

適用されました。

ネットワーク間の接続は、Monitor-> Networking -> Projects を開き、確認したいプロジェ

クトを選択します。 「□」が仮想サービスを示しています。