2017年5月16日 星期二

Reinstall RabbitMQ & ACCESS_REFUSED

Reinstall RabbitMQ


* Starting message broker rabbitmq-server * FAILED - check /var/log/rabbitmq/startup_\{log, _err\}

安裝 RabbitMQ 的時候碰到無法啟動的問題,嘗試下面的步驟把它刪除重新安裝時,
發現 hosts 設定是有問題的,於是重新設定後再整個移除安裝就能執行了

  1. Stop RabbitMQ: rabbitmqctl stop
  2. Change /etc/hosts  

/etc/hosts

127.0.0.1 localhost
127.0.0.1(or my ip) MYHOSTNAME


  1. Change /etc/hostname

/etc/hostname

MYHOSTNAME


  1. Uninstall old RabbitMQ: dpkg -P rabbitmq-server
  2. Remove RabbitMQ’s database: rm -rf /var/lib/rabbitmq
  3. Find erlang’s process that is running rabbit: ps ax | grep rabbit
    找看看有沒有rabbitmq的程序,有的話殺掉
  4. Kill the listed process (sudo kill -9 pid )
  5. Reinstall RabbitMQ: apt-get install rabbitmq-server
    or sudo dpkg -i rabbitmq-server.deb




ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN



再安裝完成RabbitMQ後 執行 Spring 噴出下面的錯誤,主要原因是帳號認証問題

org.springframework.amqp.AmqpAuthenticationException: com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.

Create admin account myadmin/mypassword

[~]$ sudo rabbitmqctl add_user myadmin mypassword
[~]$ sudo rabbitmqctl set_user_tags myadmin administrator
[~]$ sudo rabbitmqctl set_permissions -p "/" myadmin ".*" ".*" ".*"

去網頁( http://127.0.0.1:15672 )檢查帳號的權限或再按一次 Set permission



搜尋此網誌