主な問題 |
Openstack のコマンドを実行時に、コマンドへの反応が遅延したり、コマンドの実行に失敗する場合があります。
各コンポーネントの API のログから、 API リクエストの処理が AMQP Server への接続不可でエラーとなっているログが確認できます。
>>>nova-api.log ERROR oslo.messaging._drivers.impl_rabbit Failed to publish message to topic 'openstack': 'NoneType' object has no attribute 'getitem' ERROR oslo.messaging._drivers.impl_rabbit Unable to connect to AMQP server on ipaddress:5672 after None tries: 'NoneType' object has no attribute 'getitem' INFO nova.api.openstack.wsgi HTTP exception thrown: Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible. DEBUG nova.api.openstack.wsgi Returning 500 to user: Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible. INFO nova.osapi_compute.wsgi.server "DELETE /v2.1/ProjectID/servers/UUID HTTP/1.1" status: 500 len: 631 time: 0.1957719
さらに rabbitmq のログから、「handshake_error」や「Unexpected frame」が発生していることが確認できます。
>>>rabbitmq.log =ERROR REPORT=== closing AMQP connection <0.1980.16> (ipaddress:38068-> ipaddres:5672 {handshake_error,starting,1, {amqp_error,unexpected_frame, "type 1, first 16 octets = <<0,60,0,40,0,0,9,111,112,101,110,115,116,97,99,107>>", none}}
事象発生時、 cluster-recovery を実施しても復旧しません。
|
解決策 |
【暫定対策】
以下の手順で復旧してください。
1. 任意の一台のコントローラノードで rabbit コンテナを落とします。
# systemctl stop docker-rabbitmq
2. マネジメントノードで cluster-recovery を実施します。
# ciscovim cluster-recovery
3. すべてのコントローラノードで nova-api のサービスを順次に再起動します。
# systemctl restart docker-novaapi.service
【恒久対策】
CVIM 3.4.6 に更新することで本事象が改善されます。
|