6.13. エッジサイトへの登録に失敗する OVN コントローラーの修正
- 問題
Red Hat OpenStack Platform (RHOSP) エッジサイトの OVN コントローラーが登録に失敗します。
注記このエラーは、以前の RHOSP バージョンから更新された RHOSP 17.0 ML2/OVN デプロイメントで発生する可能性があります。RHOSP 16.1.7 以前または RHOSP 16.2.0。
- サンプルエラー
発生したエラーは次のようなものです。
2021-04-12T09:14:48.994Z|04754|ovsdb_idl|WARN|transaction error: {"details":"Transaction causes multiple rows in \"Encap\" table to have identical values (geneve and \"10.14.2.7\") for index on columns \"type\" and \"ip\". First row, with UUID 3973cad5-eb8a-4f29-85c3-c105d861c0e0, was inserted by this transaction. Second row, with UUID f06b71a8-4162-475b-8542-d27db3a9097a, existed in the database before this transaction and was not modified by the transaction.","error":"constraint violation"}
- 原因
-
ovn-controller
プロセスがホスト名を置き換える場合は、別の encap エントリーを含む別のシャーシエントリーを登録します。詳細は、BZ#1948472 を参照してください。 - 解決方法
問題を解決するには、次の手順に従います。
まだ作成していない場合は、この手順で、後で使用する必要な OVN データベースコマンドのエイリアスを作成します。
詳細については、OVN トラブルシューティングコマンドのエイリアスの作成 を参照してください。
OVN コンテナーにアクセスするために必要な権限を持つユーザーとしてコントローラーホストにログインします。
例
$ ssh tripleo-admin@controller-0.ctlplane
-
/var/log/containers/openvswitch/ovn-controller.log
から IP アドレスを取得します。 IP アドレスが正しいことを確認します。
ovn-sbctl list encap |grep -a3 <IP address from ovn-controller.log>
IP アドレスを含むシャーシを削除します。
ovn-sbctl chassis-del <chassis-id>
Chassis_Private
テーブルをチェックして、シャーシが削除されたことを確認します。ovn-sbctl find Chassis_private chassis="[]"
エントリーが報告された場合は、次のコマンドでそれらを削除します。
$ ovn-sbctl destroy Chassis_Private <listed_id>
次のコンテナーを再起動します。
-
tripleo_ovn_controller
tripleo_ovn_metadata_agent
$ sudo systemctl restart tripleo_ovn_controller $ sudo systemctl restart tripleo_ovn_metadata_agent
-
検証
OVN エージェントが実行していることを確認します。
$ openstack network agent list -c "Agent Type" -c State -c Binary
出力例
+------------------------------+-------+----------------------------+ | Agent Type | State | Binary | +------------------------------+-------+----------------------------+ | OVN Controller Gateway agent | UP | ovn-controller | | OVN Controller Gateway agent | UP | ovn-controller | | OVN Controller agent | UP | ovn-controller | | OVN Metadata agent | UP | neutron-ovn-metadata-agent | | OVN Controller Gateway agent | UP | ovn-controller | +------------------------------+-------+----------------------------+