Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

ネットワーク仮想化ソフトウェア「MidoNet」(実践/後編)
~OpenStackとMidoNetの連携と疎通確認

近未来の技術トレンドを先取り! 「Tech-Sketch」出張所 第25回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/02/22 14:00

 本連載ではTIS株式会社が提供している技術ブログ「Tech-Sketch」から「コレは!」というテーマをピックアップし、加筆修正して皆さまにお届けしています。前回の記事では、OpenStackとMidoNetをそれぞれインストールするところまでを行いました。今回の記事では、インストールした2つを連携し、基本となる仮想レイヤ2ネットワーク作成して、インスタンス間、および外部ネットワークとの疎通を試してみます。

目次

インストール

 インストール全体の手順としては、大きく以下のようになっていました。

  1. OpenStackのインストール
  2. MidoNetのインストール
  3. MidoNet Neutron Pluginのインストール
  4. OpenStack、MidoNetのネットワーク設定
  5. インスタンスの起動と疎通確認

 今回実施するのは、3.からです。

OpenStackとMidoNetの連携

 MidoNetのNeutron Pluginをインストールし、MidoNetをNeutronのバックエンドにしてOpenStackと連携させます。作業の流れは以下のとおりです。

  1. 管理ホスト
    1. MidoNet APIサービス、midonetユーザの作成
    2. MidoNet Neutron Pluginのインストールと設定
  2. ハイパーバイザホスト1、2、ゲートウェイホスト
    1. 不要なデフォルトのOpen vSwitch Pluginの削除とOpen vSwitchサービスの停止

管理ホスト

MidoNet APIサービス、midonetユーザの作成

 MidoNet APIサービスと、midonetユーザを作成します。

MidoNetAPIサービス、midonetユーザの作成
$ . ~/keystonerc_admin
$ openstack service create --name midonet --description "MidoNet API Service" midonet
$ openstack user create --password <任意のパスワード> midonet
$ openstack role add --project services --user midonet admin
MidoNet Neutron Pluginのインストール

 MidoNet Neutron Pluginをインストールします。

MidoNetNeutronPluginのインストール
$ sudo yum install -y openstack-neutron python-neutron-plugin-midonet
Neutronプラグインの変更設定

 neutron.confを編集します。

/etc/neutron/neutron.conf
(省略)
#core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin (コメントアウト)
core_plugin = midonet.neutron.plugin_v2.MidonetPluginV2
(省略)
#service_plugins = router (コメントアウト)
(省略)

 設定が終わったら、midonet.iniを配置する/etc/neutron/plugins/midonetディレクトリを作成します。

/etc/neutron/plugins/midonetの作成
$ sudo mkdir -p /etc/neutron/plugins/midonet

 次に、/etc/neutron/plugins/midonet/midonet.iniを編集します。

/etc/neutron/plugins/midonet/midonet.ini
[DATABASE]
sql_connection = mysql://neutron:<answerfileのCONFIG_NEUTRON_DB_PWの値>@10.148.194.25/neutron
[MIDONET]
midonet_uri = http://10.148.194.25:8181/midonet-api
username = midonet
password = <「MidoNet APIサービス、midonetユーザの作成」で設定したmidonetユーザのパスワード>
project_id = services

 midonet.iniの編集が終わったら、plugin.iniをデフォルトのものからシンボリックリンクでmidonet.iniに置き換えます。

/etc/neutron/plugin.iniの置き換え
$ sudo mv /etc/neutron/plugin.ini /etc/neutron/plugin.ini.org
$ sudo ln -s /etc/neutron/plugins/midonet/midonet.ini /etc/neutron/plugin.ini

 設定ファイルが完了したら、Neutron Databaseのアップデートを行います。

NeutronDatabaseのアップデート
$ su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/midonet/midonet.ini upgrade kilo" neutron
$ midonet-db-manage upgrade head

 最後に、関連サービスの再起動を実施します。

関連サービスの再起動
$ sudo systemctl restart openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service
$ sudo systemctl enable neutron-server.service
$ sudo systemctl start neutron-server.service

ハイパーバイザホスト1、2、Gatewayノード

 不要なデフォルトのOpen vSwitch Pluginを削除し、Open vSwitchサービスを停止します。

OpenvSwitchPluginの削除とOpenvSwitchの停止
$ sudo yum remove -y openstack-neutron-openvswitch
$ sudo systemctl disable openvswitch.service
$ sudo systemctl stop openvswitch.service

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 村木 暢哉(TIS株式会社)(ムラキ マサヤ)

    TIS株式会社 戦略技術センター所属。 以前はアプリケーション・ミドルウェア開発のエンジニアでしたが、紆余曲折を経て、現在はSoftware Defined Networking/Software Defined Infrastructureの研究開発を主に担当しています。 知らないことばかりで...

バックナンバー

連載:近未来の技術トレンドを先取り! 「Tech-Sketch」出張所

もっと読む

おすすめ記事

All contents copyright © 2006-2016 Shoeisha Co., Ltd. All rights reserved. ver.1.5