4.2. 高度なテストの実行
OpenDaylight の設定およびデプロイメントのコンポーネントのいくつかは、OpenDaylight をデプロイした後に確認することができます。インストールの特定の部分をテストするには、いくつかの手順に従って操作を実行する必要があります。各手順は別々に記載しています。
本手順は、オーバークラウド ノード上で実行する必要があります。
4.2.1. オーバークラウドノードへの接続 リンクのコピーリンクがクリップボードにコピーされました!
オーバークラウドノードに接続し、それらが正しく動作していることを確認するには、以下の手順を実行します。
手順
- アンダークラウドにログインします。
以下のコマンドを入力して作業を開始します。
source /home/stack/stackrc
$ source /home/stack/stackrc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 全インスタンスを一覧表示します。
openstack server list
$ openstack server list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 必要なインスタンスを選択して、一覧に表示されるインスタンスの IP アドレスを書き留めておきます。
前のステップで取得した一覧の IP アドレスを使用してマシンに接続します。
ssh heat-admin@<IP from step 4>
$ ssh heat-admin@<IP from step 4>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow superuser に切り替えます。
sudo -i
$ sudo -i
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.2. OpenDaylight のテスト リンクのコピーリンクがクリップボードにコピーされました!
OpenDaylight が正しく動作していることをテストするには、サービスが動作していることと、指定の機能が正しく読み込まれていることを確認する必要があります。
手順
- OpenDaylight を実行するオーバークラウドノードまたはカスタムロールで実行している OpenDaylight ノードに superuser としてログインします。
OpenDaylight コントローラーがすべてのコントローラーノード上で実行されていることを確認します。
docker ps | grep opendaylight
# docker ps | grep opendaylight 2363a99d514a 192.168.24.1:8787/rhosp13/openstack-opendaylight:latest "kolla_start" 4 hours ago Up 4 hours (healthy) opendaylight_api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HAProxy がポート 8081 をリッスンするように適切に設定されていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HAproxy IP を使用して、karaf のアカウントを接続します。karaf のパスワードは
karaf
です。ssh -p 8101 karaf@localhost
# ssh -p 8101 karaf@localhost
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インストール済みの機能を一覧表示します。
feature:list -i | grep odl-netvirt-openstack
# feature:list -i | grep odl-netvirt-openstack
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 本手順で生成された一覧の 3 番目のコラムに
x
がある場合には、その機能は適切にインストールされていることになります。API が稼働中であることを確認します。
web:list | grep neutron
# web:list | grep neutron
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この API エンドポイントは、
/etc/neutron/plugins/ml2/ml2_conf.ini
で設定され、neutron が OpenDaylight と通信するのに使用されます。ノード間の VXLAN トンネルが稼動状態であることを確認します。
vxlan:show
# vxlan:show
Copy to Clipboard Copied! Toggle word wrap Toggle overflow REST API が正しく応答するかどうかをテストするには、それを使用するモジュールを一覧表示します。
curl -u "admin:admin" http://localhost:8081/restconf/modules
# curl -u "admin:admin" http://localhost:8081/restconf/modules
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下と同じような出力が表示されます (この例は短く省略されています)。
{"modules":{"module":[{"name":"netty-event-executor","revision":"2013-11-12","namespace":"urn:opendaylight:params:xml:ns:yang:controller:netty:eventexecutor"},{"name" ...
{"modules":{"module":[{"name":"netty-event-executor","revision":"2013-11-12","namespace":"urn:opendaylight:params:xml:ns:yang:controller:netty:eventexecutor"},{"name" ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストの internal_API IP を使用する REST のストリームを一覧表示します。
curl -u "admin:admin" http://localhost:8081/restconf/streams
# curl -u "admin:admin" http://localhost:8081/restconf/streams
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下と同様の出力が表示されます。
{"streams":{}}
{"streams":{}}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストの internal_API IP で次のコマンドを実行して、NetVirt が動作していることを確認します。
curl -u "admin:admin" http://localhost:8081/restconf/operational/network-topology:network-topology/topology/netvirt:1
# curl -u "admin:admin" http://localhost:8081/restconf/operational/network-topology:network-topology/topology/netvirt:1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NetVirt が動作していることを確認するには、以下の出力に注意してください。
{"topology":[{"topology-id":"netvirt:1"}]}
{"topology":[{"topology-id":"netvirt:1"}]}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.3. Open vSwitch のテスト リンクのコピーリンクがクリップボードにコピーされました!
Open vSwitch を検証するには、コンピュートノードの 1 つに接続し、設定が適切であるほか、OpenDaylight に接続されていることを確認します。
手順
- オーバークラウド内のコンピュートノードの 1 つに superuser として接続します。
Open vSwitch の設定を一覧表示します。
ovs-vsctl show
# ovs-vsctl show
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力に複数のマネージャーがあることに注意してください。この例では、2 行目と 3 行目に複数のマネージャーが表示されています。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
OpenDaylight が実行されているノードの IP を
tcp
Manager がポイントしていることを確認します。 -
Manager の下に
is_connected: true
と表示されていることを確認し、OVS から OpenDaylight への接続が確立されて、OVSDB プロトコルを使用していることを確かめます。 - 各ブリッジ (br-int 以外) が存在し、コンピュートロールでのデプロイメントに使用した NIC テンプレートと一致していることを確認します。
- tcp 接続が、OpenDaylight サービスが実行されているところの IP に対応していることを確認します。
-
ブリッジ br-int に
is_connected: true
が表示され、OpenFlow プロトコルから OpenDaylight への接続が確立されていることを確認します。
補足情報
- OpenDaylight は、br-int のブリッジを自動的に作成します。
4.2.4. コンピュートノード上の Open vSwitch の設定の確認 リンクのコピーリンクがクリップボードにコピーされました!
- コンピュートノードに superuser として接続します。
Open vSwitch の設定を一覧表示します。
ovs-vsctl list open_vswitch
# ovs-vsctl list open_vswitch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力を確認します。以下の例と同様の内容が表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
other_config
オプションの値に、VXLAN トンネルを介してテナントネットワークに接続するローカルインターフェイスの適切なlocal_ip
が設定されていることを確認します。 -
other_config
のオプション下のprovider_mappings
の値が、OpenDaylightProviderMappings Heat テンプレートパラメーターで指定されている値と一致していることを確認します。この設定により、neutron の論理ネットワークが対応する物理インターフェイスにマッピングされます。
4.2.5. neutron の設定の確認 リンクのコピーリンクがクリップボードにコピーされました!
手順
- コントローラーロールのノードの 1 つの superuser アカウントに接続します。
-
/etc/neutron/neutron.conf
ファイルにservice_plugins=odl-router_v2,trunk
が含まれていることを確認します。 /etc/neutron/plugin.ini
ファイルに以下の ml2 設定が記載されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オーバークラウド のコントローラーの 1 つで、neutron エージェントが適切に稼働していることを確認します。
openstack network agent list
# openstack network agent list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow メタデータと DHCP エージェントの両方の
admin_state_up
値にTrue
が設定されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
補足情報
-
ステップ 3 の
plugin.ini
の IP は、InternalAPI の仮想 IP アドレス (VIP) である必要があります。 - ステップ 5 の出力には、Open vSwitch エージェントまたは L3 エージェントは記載されていません。これらはいずれも OpenDaylight によって管理されるようになったので、出力に含まれていないのは望ましい状態です。