ネットワーク仮想化ソフトウェア「MidoNet」(実践/後編)
~OpenStackとMidoNetの連携と疎通確認
近未来の技術トレンドを先取り! 「Tech-Sketch」出張所 第25回
本連載ではTIS株式会社が提供している技術ブログ「Tech-Sketch」から「コレは!」というテーマをピックアップし、加筆修正して皆さまにお届けしています。前回の記事では、OpenStackとMidoNetをそれぞれインストールするところまでを行いました。今回の記事では、インストールした2つを連携し、基本となる仮想レイヤ2ネットワーク作成して、インスタンス間、および外部ネットワークとの疎通を試してみます。
インストール
インストール全体の手順としては、大きく以下のようになっていました。
- OpenStackのインストール
- MidoNetのインストール
- MidoNet Neutron Pluginのインストール
- OpenStack、MidoNetのネットワーク設定
- インスタンスの起動と疎通確認
今回実施するのは、3.からです。
OpenStackとMidoNetの連携
MidoNetのNeutron Pluginをインストールし、MidoNetをNeutronのバックエンドにしてOpenStackと連携させます。作業の流れは以下のとおりです。
-
管理ホスト
- MidoNet APIサービス、midonetユーザの作成
- MidoNet Neutron Pluginのインストールと設定
-
ハイパーバイザホスト1、2、ゲートウェイホスト
- 不要なデフォルトのOpen vSwitch Pluginの削除とOpen vSwitchサービスの停止
管理ホスト
MidoNet APIサービス、midonetユーザの作成
MidoNet APIサービスと、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をインストールします。
$ sudo yum install -y openstack-neutron python-neutron-plugin-midonet
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ディレクトリを作成します。
$ sudo mkdir -p /etc/neutron/plugins/midonet
次に、/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に置き換えます。
$ 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のアップデートを行います。
$ 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サービスを停止します。
$ sudo yum remove -y openstack-neutron-openvswitch $ sudo systemctl disable openvswitch.service $ sudo systemctl stop openvswitch.service
この記事は参考になりましたか?
- 近未来の技術トレンドを先取り! 「Tech-Sketch」出張所連載記事一覧
-
- ネットワーク仮想化ソフトウェア「MidoNet」(実践/後編) ~OpenStackとMi...
- ネットワーク仮想化ソフトウェア「MidoNet」(実践/前編) ~OpenStackとMi...
- ネットワーク仮想化ソフトウェア「MidoNet」(概要) ~SDNの中での位置づけとOpe...
- この記事の著者
-
村木 暢哉(TIS株式会社)(ムラキ マサヤ)
TIS株式会社 戦略技術センター所属。以前はアプリケーション・ミドルウェア開発のエンジニアでしたが、紆余曲折を経て、現在はSoftware Defined Networking/Software Defined Infrastructureの研究開発を主に担当しています。知らないことばかりで未熟さを...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
