Menu Close
Settings Close

Language and Page Formatting Options

6.13. エッジサイトへの登録に失敗する OVN コントローラーの修正

問題

Red Hat OpenStack Platform (RHOSP) エッジサイトの OVN コントローラーが登録に失敗します。

注記

このエラーは、以前の RHOSP バージョン (RHOSP 16.1.7 以前または RHOSP 16.2.0) から更新された RHOSP 16.1 ML2/OVN デプロイメントで発生する可能性があります。

サンプルエラー

発生したエラーは次のようなものです。

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 を参照してください。
解決策

問題を解決するには、次の手順に従います。

  1. OVN コンテナーにアクセスするために必要な権限を持つユーザーとしてコントローラーホストにログインします。

    $ ssh heat-admin@controller-0.ctlplane

  2. /var/log/containers/openvswitch/ovn-controller.log から IP アドレスを取得します。
  3. IP アドレスが正しいことを確認します。

    ovn-sbctl list encap |grep -a3 <IP address from ovn-controller.log>
  4. IP アドレスを含むシャーシを削除します。

    ovn-sbctl chassis-del <chassis-id>
  5. Chassis_Private テーブルをチェックして、シャーシが削除されたことを確認します。

    ovn-sbctl find Chassis_private chassis="[]"
  6. エントリーが報告された場合は、次のコマンドでそれらを削除します。

    $ ovn-sbctl destroy Chassis_Private <listed_id>
  7. 次のコンテナーを再起動します。

    • 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             |
    +------------------------------+-------+----------------------------+