Downloaded 137 times
CONTRAIL VERSION 1.05 インストール手順書 Ver1.00
もくじ 内容 仮想マシンの作成................................................................................................................... 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
仮想マシンの作成 新規仮想マシンの作成をクリックします。 後で OS をインストール を選択し、「次へ」
Linux を選択し、「次へ」 ※(注記)バージョンはベース OS を選択してください。 仮想マシン名 を入力し、「次へ」
ディスク最大サイズ を入力し、「次へ」 ※(注記)約 100GB あれば Contrail の動作を試すことが可能です。 ハードウェアをカスタマイズ をクリックします。
この仮想マシンのメモリ を 4GB 以上に設定します。 ※(注記)これよりメモリが少ない場合、Contrailが正常にインストールできない場合があります。 Intel VT-x/EPT または AMD-V/RVI を仮想化 を選択します。 ※(注記)この設定ができない場合、仮想マシン作成時にエラーが発生します。
ISO イメージファイルを使用する 選択し、Ubuntu12.03 もしくは CentOS6.3 の ISO イ メージを選択します。選択後、閉じる をクリックします。 完了 をクリックします。 これで仮想マシンが作成されました。
OS のインストール Ubuntu の場合 インストール言語を選択します。 使いやすい言語を選んでください。
ロケーションを選択します。 ロケーションは Contrail や Openstack の動作には影響しません。 ロケールを選択します。 ロケールは Contrail や Openstack の動作には影響しません。
キーボードを選択します。 ご自身の PC にあったキーボードを選択してください。 OS のホスト名を入力します。
ユーザー名を入力します。 ※(注記)root は入力できません。root のパスワードはログイン後設定します。 パスワードを入力します。 ※(注記)root は入力できません。root のパスワードはログイン後設定します。
ディレクトリの暗号化を選択します。ここでは No を選択します。 タイムゾーンの確認をします。ここでは Yes を選択します。
ハードディスクのパーティションを変更します。 Guided use entire disk を選択し、ガイドに従ってパーティションを作成します。 HTTP proxy はないので、なにも入力せず Continue を選択します。
No automatic updates を選択します。 ※(注記)ここでアップデートすると、Contrail がインストールできなくなる場合があります。 OpenSSH server のみ選択し、Continue を選択します。 インストールが始まります。
ブートローダーをインストールします。Yes を選択してください。 インストールが終わったら Continue を選択してください。 OS が自動的に再起動します。
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
パッケージの確認 パッケージが正常にアップロードされているか確認します。 パッケージの展開 パッケージを展開します。 /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
from fabric.api import env #Management ip addresses of hosts in the cluster host1 = 'root@1.1.1.1' <<< 自身の 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 = 'root@1.1.1.1' <<< 自身の 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'] <<< 自身のホスト名に変更 } 〜次ページへ〜
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' }, #} 〜次ページへ〜
※(注記)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'"
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
仮想マシン、仮想ネットワーク作成の流れ 以下の順で仮想マシン、仮想ネットワークを作成します。 1. イメージの登録 2. プロジェクトの作成 3. IPAM の作成 4. 仮想ネットワークの作成 5. 仮想マシンの作成 6. ポリシーの作成と適用 7. 仮想サービスの作成と適用
イメージの登録 Openstack に仮想マシンのイメージと、仮想サービスのイメージを登録します。
プロジェクトの作成 コントレイル用のプロジェクトを作成します。 このとき、プロジェクトメンバーの指定を必ずしてください。
IPAM の作成 IPAM は Openstack / Contrail のどちらからでも作成できます。 Openstack からの設定方法 先ほど作成したプロジェクトを指定し、プロジェクトの管理画面を表示します。 Networking - > Create Network をクリックします。 続いて、IPAM の「+」をクリックします。
Names に IPAM 名を入力し、Create IPAM をクリックします。 作成されました。
Contrail からの設定方法 Configure -> Networking -> IP address Management を開き、プルダウンからプロジェク トを選択し、Create をクリックします。 Name に IPAM 名をつけ、Save をクリックします。
作成されました。
仮想ネットワークの作成 仮想ネットワークは Openstack / Contrai のどちらからでも作成できます。 Openstack からの設定方法 Networking -> Networks タブ から Create Network をクリックします Name に仮想ネットワーク名を入力し、IP Block に x.x.x.x/x の形式でアドレスを入力しま す。IPAM を先ほど作成したものを選択し、Create Network をクリックします。
作成されました。
Contrail からの設定方法 Configure-> Networking -> Networks を開き、プルダウンからプロジェクトを選択し、 Create をクリックします。 Network Name に仮想ネットワーク名を入力し、IPAM を先ほど作成したものを選択、IP Block に x.x.x.x/x の形式でアドレスを入力し、+をクリックします。 入力後 Save をクリックします。
作成されました。
仮想マシンの作成 仮想マシンは Openstack から作成します。 Instances を開き、Launch Instances をクリックします。 Instance Name に仮想マシンの名前を入力し、Instance Boot source からイメージを選択 します。
Networking のタブから仮想ネットワークを選択し、Launch をクリックします。 仮想マシンが作成されました。
ポリシーの作成と適用 ポリシーの作成 仮想ネットワーク間の通信を可能にするため、ポリシーを作成します。 Configure-> Networking -> Policy を開き、プルダウンからプロジェクトを選択し、Create をクリックします。
Policy Name にポリシーの名前を入力し、+ボタンをクリックします。 Policy Rules が追加されるので、Source Network と Destination Network に仮想ネットワ ークを指定し Save をクリックします。 ポリシーが作成されました。
ポリシーの適用 作成したポリシーを仮想ネットワークに適用します。 Configure-> Networking -> Networks を開き、プルダウンからプロジェクトを選択します。 ポリシーを適用する仮想ネットワークのアイコンをクリックし、Edit を選択します。
Network Policy(s) からポリシーを選択し、Save をクリックします。 ポリシーが適用されました。
ネットワーク間の接続は、Monitor-> Networking -> Projects を開き、確認したいプロジェ クトを選択します。 「○しろまる」が仮想ネットワークを示しており、「-」は仮想ネットワーク 間の接続を示しています。
サービスチェイニング 仮想ネットワークに適用する仮想サービスを登録し、仮想ネットワーク間に適用します。 サービステンプレートの作成 仮想サービスはテンプレートから呼び出して使用します。 仮想サービスのイメージはオープンスタックにイメージとして登録します。 Configure-> Services -> Service Templates を開き、Create をクリックします。
Name にテンプレートの名前を入力します。Service Mode は In-Network を選択肢、Service Type は Firewall を指定します。 Image Name から仮想サービスのイメージを選択肢、+ボタンをクリックし、Management、 Left、Right を追加し、Save をクリックします。
作成されました。 テンプレートから仮想サービスを起動します。 Configure-> Services -> Service Instances を開き、プロジェクトを選択して Create をク リックします。
Instance Name に仮想サービス名を入力し、Services Template から起動したいテンプレー トを選択します。 Interface1 は変更せず、Interface 2 と 3 に適用する仮想ネットワークを選択し、Save をク リックします。
作成されました。
Configure-> Networking -> Policies を開き、プルダウンからプロジェクトを選択します。 インスタンスを適用するポリシーのアイコンをクリックし、Edit を選択します。 Apply Service をクリックし、インスタンスを選択し、Save をクリックします。
適用されました。 ネットワーク間の接続は、Monitor-> Networking -> Projects を開き、確認したいプロジェ クトを選択します。 「□しろいしかく」が仮想サービスを示しています。