AMQP ERROR

  1. AMQP server 無法連線,錯誤訊息中 user openstack 無法登入。
    [root@controller ~]# grep -i error /var/log/nova/nova-scheduler.log 
    
    MessageDeliveryFailure: Unable to connect to AMQP server on controller:5672 after 
    None tries: (0, 0): (403) ACCESS_REFUSED - Login was refused using authentication 
    mechanism AMQPLAIN. For details see the broker logfile.
    
    [root@controller ~]# tail /var/log/rabbitmq/rabbit@controller.log 
    
    =INFO REPORT==== 26-May-2018::20:18:00 ===
    Connection <0.3526.1> (163.17.10.112:45272 -> 163.17.10.112:5672) has a client-provided 
    name: nova-compute:99477:d58489ed-f453-4fc6-b3bb-60334e49cb87
    
    =ERROR REPORT==== 26-May-2018::20:18:00 ===
    Error on AMQP connection <0.3526.1> (163.17.10.112:45272 -> 163.17.10.112:5672, state: starting):
    AMQPLAIN login refused: user 'openstack' - invalid credentials
    
    =INFO REPORT==== 26-May-2018::20:18:00 ===
    closing AMQP connection <0.3526.1> (163.17.10.112:45272 -> 163.17.10.112:5672 - 
    nova-compute:99477:d58489ed-f453-4fc6-b3bb-60334e49cb87)
    
  2. rabbitmqctl 列出 user,只有 guest,沒有 openstack。
    [root@controller ~]# rabbitmqctl list_users
    Listing users ...
    guest	[administrator]
    
  3. rabbitmqctl 新增 user openstack。
    [root@controller ~]# rabbitmqctl add_user openstack 123qwe
    Creating user "openstack" ...
    [root@controller ~]# rabbitmq list_users
    -bash: rabbitmq: command not found
    [root@controller ~]# rabbitmqctl list_users
    Listing users ...
    openstack	[]
    guest	[administrator]
    
  4. 重新啟動 neutron-l3-agent,再查看 log,訊息是 user openstack 拒絕存取。
    [root@controller ~]# systemctl restart neutron-l3-agent.service 
    [root@controller ~]# tail /var/log/rabbitmq/rabbit@controller.log 
    
    =ERROR REPORT==== 26-May-2018::20:23:06 ===
    Error on AMQP connection <0.6189.1> (163.17.10.112:47618 -> 163.17.10.112:5672 - 
    nova-conductor:104133:d627cecc-52f8-47b8-a30c-41d37a474ebd, user: 'openstack', state: opening):
    access to vhost '/' refused for user 'openstack'
    [root@controller ~]# systemctl restart neutron-l3-agent.service 
    [root@controller ~]# tail /var/log/rabbitmq/rabbit@controller.log 
    
    =INFO REPORT==== 26-May-2018::20:23:06 ===
    Connection <0.6189.1> (163.17.10.112:47618 -> 163.17.10.112:5672) has a client-provided 
    name: nova-conductor:104133:d627cecc-52f8-47b8-a30c-41d37a474ebd
    
    =ERROR REPORT==== 26-May-2018::20:23:06 ===
    Error on AMQP connection <0.6189.1> (163.17.10.112:47618 -> 163.17.10.112:5672 - 
    nova-conductor:104133:d627cecc-52f8-47b8-a30c-41d37a474ebd, user: 'openstack', state: opening):
    access to vhost '/' refused for user 'openstack'
    
    =INFO REPORT==== 26-May-2018::20:23:06 ===
    closing AMQP connection <0.6189.1> (163.17.10.112:47618 -> 163.17.10.112:5672 - 
    nova-conductor:104133:d627cecc-52f8-47b8-a30c-41d37a474ebd)
    
  5. rabbitmqctl 新增 user openstack 存取權。
    [root@controller ~]# . admin.token 
    [root@controller ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
    Setting permissions for user "openstack" in vhost "/" ...
    
  6. 重新啟動 neutron-l3-agent,再查看 log,已正常連線。
    [root@controller ~]# systemctl restart neutron-l3-agent.service 
    [root@controller ~]# tail /var/log/rabbitmq/rabbit@controller.log 
    accepting AMQP connection <0.8705.1> (163.17.10.112:48866 -> 163.17.10.112:5672)
    
    =INFO REPORT==== 26-May-2018::20:25:39 ===
    Connection <0.8705.1> (163.17.10.112:48866 -> 163.17.10.112:5672) has a client-provided 
    name: nova-conductor:106769:310eab3b-768d-43df-981c-6af4d8286e88
    
    =INFO REPORT==== 26-May-2018::20:25:40 ===
    accepting AMQP connection <0.8723.1> (163.17.10.112:48870 -> 163.17.10.112:5672)
    
    =INFO REPORT==== 26-May-2018::20:25:40 ===
    Connection <0.8723.1> (163.17.10.112:48870 -> 163.17.10.112:5672) has a client-provided 
    name: nova-conductor:106771:046fa1d3-4c17-486c-8aed-5b26d84109ed