天天看點

Neutron DHCP-Agent問題分析定位(2)作者:闫興安

作者:闫興安

1.3.9  哪些網絡有問題

for ns in `ipnetns`; do echo $ns, `ip netns exec $ns ifconfig |grep tap`; done

隻要一個netns裡有超過一個tap口,就有問題。

可以看出很多網絡都有問題:

Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安

1.3.10           檢視binging_failed的端口

for port in`neutron port-list |grep 'fa:16' |awk -F '|' '{print $2}'`; do echo $port,`neutron port-show $port |grep 'binding:vif_type'`;done

3705a584-7eaa-40d9-b0fa-83bfe3aa5a76,| binding:vif_type | binding_failed |

409f5088-27c1-46cc-96c1-d070748909b1,| binding:vif_type | binding_failed |

62080981-f573-4f58-8f88-b6003115c344,| binding:vif_type | binding_failed |

eba62518-fc29-4105-8518-6097084aa358,| binding:vif_type | binding_failed |

Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安

1.3.11           檢視dhcp-agent的日志

日志中出現unable to enable/disable 某個網絡。

Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安
Neutron DHCP-Agent問題分析定位(2)作者:闫興安

從日志看,dhcp-agent中曾經通過Plugin往neutrondb中建立端口失敗。注意,這裡的OperationalError是遠端的,也就是Neutron-server中的報錯。

dhcp-agent最後的log提示同步成功了,之後就沒有再進行任何同步。

Neutron DHCP-Agent問題分析定位(2)作者:闫興安

從最後一句,"Synchronizing state compute"看出,dhcp-agent在這個時間點已經與neutron server完成了同步,此時狀态是正常的了。

DHCP agent還有如下的錯誤:

Neutron DHCP-Agent問題分析定位(2)作者:闫興安

這個日志的原因是neutron-server過忙,或者死了。

1.3.12           檢視neutron-server的日志

cat/var/log/neutron/server.log |grep rpc

Neutron DHCP-Agent問題分析定位(2)作者:闫興安

3705a584-7eaa-40d9-b0fa-83bfe3aa5a76, | binding:vif_type| binding_failed |

409f5088-27c1-46cc-96c1-d070748909b1, | binding:vif_type| binding_failed |

62080981-f573-4f58-8f88-b6003115c344, | binding:vif_type| binding_failed |

eba62518-fc29-4105-8518-6097084aa358, | binding:vif_type| binding_failed |

經對比,neutron server裡的這些device就是這幾個binding_failed的端口。

1.3.13           新建立網絡是否有問題

測試下新建立網絡時,DHCP功能是否正常。

建立網絡:

Neutron DHCP-Agent問題分析定位(2)作者:闫興安

網絡建立成功了,檢測namespace、tap、dnsmasq狀态都對。

在這個網絡裡建立虛機,虛機也能擷取IP位址。

1.3.14           總結問題現象

通過上面對環境的觀察,看到如下現象:

1)      某個網絡在某些網絡節點上,dhcp namespace裡存在兩個 tap口。

2)      每個dhcp節點上,一個網絡,dnsmasq程序隻有一個,但是有兩個節點用了相同的dhcp IP。

3)      不少網絡都有此問題。總共21個網絡,有18個網絡有這個問題。

4)      有4個port出現binding failed現象,都出現在9-74這台上。

5)      新建立網絡,沒有出現binding failed現象,而且dhcp狀态也都正确。

6)      dhcp-agent程序狀态為active。

7)      檢視dhcp-agent日志,發現日志在6天前開始就沒有更新。

8)      檢視dhcp-agent日志,發現日志停止前曾出現使能dhcp(建立dhcp port)失敗的現象。

9)      日志中24号前出現大量出現連mq連不上的問題,在8月24之後解決了,日志不再報此問題。

繼續閱讀