事象内容

/var/log/messages ログに ovs-vswitchd が crashes したといったメッセージが出力される。

Oct 12 23:20:22 localhost ovs-vswitchd: ovs|00164|daemon(monitor)|ERR|92 crashes: pid 24460 died, killed (Segmentation fault), core dumped, restarting
Oct 12 23:20:23 localhost kernel: ovs-vswitchd[25101]: segfault at 0 ip 000055a9d85dd670 sp 00007fff417395b8 error 4 in ovs-vswitchd[55a9d8575000+142000]
Oct 12 23:20:23 localhost abrt-hook-ccpp: Process 25101 (ovs-vswitchd) of user 0 killed by SIGSEGV - ignoring (repeated crash)

解決方法

古いバージョンのOpen vSwitch では、クラッシュするバグが発見されているため、新しいバージョンのOpen vSwitch をインストールする。

現在インストールされている Opne vSwtich のバージョンを確認する。バージョン 2.3.1 以降でバグ修正されているため、それ以前のバージョンの場合は、2.3.1 以降のバージョン にアップデートする。

$ sudo ovs-vsctl -V
ovs-vsctl (Open vSwitch) 2.0.0
DB Schema 7.15.1
$ 

現在インストールされている Open vSwitch をアンインストールする。

$ sudo yum remove -y openvswitch
読み込んだプラグイン:fastestmirror, langpacks
依存性の解決をしています
There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transaction --cleanup-only" and "yum history redo last", first to finish them. If those don't work you'll have to try removing/installing packages by hand (maybe package-cleanup can help).
--> トランザクションの確認を実行しています。
---> パッケージ openvswitch.x86_64 0:2.0.0-7.el7 を 削除
---> パッケージ openvswitch.x86_64 1:2.9.0-3.el7 を 削除
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package            アーキテクチャー
                                  バージョン             リポジトリー      容量
================================================================================
削除中:
 openvswitch        x86_64        2.0.0-7.el7            @base            6.3 M
 openvswitch        x86_64        1:2.9.0-3.el7          installed         21 M

トランザクションの要約
================================================================================
削除  2 パッケージ

インストール容量: 27 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
  削除中                  : openvswitch.x86_64                              1/2 
  削除中                  : openvswitch.x86_64                              2/2 
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-vsctl-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-ovsdb-dump: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-ovs-ofctl-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-ovs-ofctl-dump-flows: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-memory-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-list-dbs: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-lacp-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-coverage-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-cfm-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-bond-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/openvswitch/scripts/ovs-bugtool-bfd-show: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/man/man1/ovs-tcpundump.1.gz: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/man/man1/ovs-pcap.1.gz: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/man/man1/ovs-benchmark.1.gz: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/WHY-OVS: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/README.RHEL: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/README: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/NOTICE: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/INSTALL.SSL: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/DESIGN: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0/COPYING: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/share/doc/openvswitch-2.0.0: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/lib/systemd/system/openvswitch-nonetwork.service: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/bin/ovs-tcpundump: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/bin/ovs-pcap: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/bin/ovs-parse-backtrace: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/bin/ovs-benchmark: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: /etc/sysconfig/openvswitch は /etc/sysconfig/openvswitch.rpmsave として保存されました。
警告: /etc/logrotate.d/openvswitch は /etc/logrotate.d/openvswitch.rpmsave として保存されました。
  検証中                  : openvswitch-2.0.0-7.el7.x86_64                  1/2 
  検証中                  : 1:openvswitch-2.9.0-3.el7.x86_64                2/2 

削除しました:
  openvswitch.x86_64 0:2.0.0-7.el7       openvswitch.x86_64 1:2.9.0-3.el7      

完了しました!
$ 

下記のページを参考に、新しいバージョンの Open vSwitch をインストールする。

Open vSwitch をインストールする