Neutron@CentOS7のはまったところ
備忘録のため、事実のみを簡潔に記載します。
CentOS7でIcehouseに含まれるNeutronの導入を行うと、ルーターのゲートウェイを設定しても、正確に反映されない事象が発生する。
どうやらnet-toolsパッケージに依存するっぽい現象が見受けられる感じだ。
net-tools未導入時にルータのルーティング情報を確認したとき、以下のように表示されるとする。
# ip netns exec qrouter-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ip route
172.168.0.0/20 dev qg-xxxxxxxx-xx proto kernel scope link src 172.168.1.1
192.168.1.0/24 dev qr-yyyyyyyy-yy proto kernel scope link src 192.168.1.101
net-toolsを導入した後、L3エージェントの再起動を行い、ルータのルーティング情報を確認すると、デフォルトゲートウェイの設定がなされていることが確認できる。
# yum install net-tools
# systemctl restart neutron-l3-agent.service
# ip netns exec qrouter-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ip route
default via 172.168.0.1 dev qg-xxxxxxxx-xx
172.168.0.0/20 dev qg-xxxxxxxx-xx proto kernel scope link src 172.168.1.1
192.168.1.0/24 dev qr-yyyyyyyy-yy proto kernel scope link src 192.168.1.101
Neutronのコードの問題なのか、Pythonのコマンドの呼び出しの問題なのかの切り分けはついていないが、これでとりあえずは回避できていそうだ。