在 Windows 7、Winodws 10、Windows Server 2016 上安裝 RabbitMQ

公司既有專案在實際 production 環境上有效能瓶頸,雖然有 load balance 搭配 cluster 架構,但 load balance 設定方式使得 cluster 中的各 server 間 流量分配不均,所以想透過 message queue 來分配工作的想法,原本屬意效能極佳的 kafka,但同事因為訊息健全性建議使用相對成熟的 RabbitMQ

RabbitMQ 是一款基於 AMQP - Advanced Message Queuing Protocol(訊息佇列協定),使用 Erlang 開發的 open ource 訊息佇列系統。是套優秀的訊息佇列系統,主要由兩部分組成:服務端和客戶端,客戶端支持多種語言,如:.Net、JAVA、Erlang 等。為了要比對兩者差異,當然就得來架設環境囉

Windows 7

  1. 安裝 Erlang

  2. 設定 Erlang 環境變數

    • Computer 上按滑鼠右鍵 –> Properties

      2properties

    • 點擊 Advenced system settings –> 點擊 Environment Varialbes

      3envvariable

    • 新增系統變數 (New..)

      4new

    • Variable name –> ERL_HOME; Variable value –> Erlang 安裝路徑

      5erlpath

    • 修改 Path 變數 (點選 Path –> Edit)

      6editpath

    • %ERL_HOME%\bin; 加到 Variable value 最後

      7addpath

  3. 測試是否成功安裝 Erlang

    • 開啟 command prompt or Windows PowerShell 執行 erl (ctrl+c 可以跳出)

      8erl

      9erl

  4. 安裝 RabbitMQ

  5. 確認是否安裝並順利啟動

    • 開啟 command prompt 輸入 sc query "RabbitMQ" (state - RUNNING 代表執行中)

      11servicestate

  6. 安裝 RabbitMQ 管理套件

    • 開啟 RabbitMQ Command Prompt(sbin dir)(安裝 RabbitMQ 時順便安裝的 command prompt) 執行 rabbitmq-plugins.bat enable rabbitmq_management
    • 也可以開啟一般的 command prompt 進到 {RabbitMQ 安裝路徑}/sbin 下執行 rabbitmq-plugins.bat enable rabbitmq_management

      12mqmanageplugin

  7. 登入RabbitMQ 管理介面

    • 成功安裝後,可以使用 http://localhost:15672/ 開啟管理介面

      13manageui

    • 預設帳號密碼是:guest/guest

      14managelogin

Windows 10

  1. 安裝 Erlang

  2. 設定 Erlang 環境變數

    • 按下鍵盤 windows 圖示鍵 or 放大鏡,搜尋 environment

      14win10

    • 點擊 Edit the system environment

      15editenv

    • 點擊 Environment Varialbes

      16envvar

    • 新增 System variables (New..)

      17newvar

    • Variable name –> ERL_HOME; Variable value –> Erlang 安裝路徑

      18varsetting

    • 修改 Path 變數 (點選 Path –> Edit)

      19editpath

    • New –> %ERL_HOME%\bin;

      20addtopath

  3. 測試是否成功安裝 Erlang

    • 開啟 command prompt or Windows PowerShell 執行 erl (ctrl+c 可以跳出)

      8erl

      9erl

  4. 安裝 RabbitMQ

  5. 確認是否安裝並順利啟動

    • 開啟 command prompt 輸入 sc query "RabbitMQ" (state - RUNNING 代表執行中)

      11servicestate

  6. 安裝 RabbitMQ 管理套件

    • 開啟 RabbitMQ Command Prompt(sbin dir)(安裝 RabbitMQ 時順便安裝的 command prompt) 執行 rabbitmq-plugins.bat enable rabbitmq_management
    • 也可以開啟一般的 command prompt 進到 {RabbitMQ 安裝路徑}/sbin 下執行 rabbitmq-plugins.bat enable rabbitmq_management

      12mqmanageplugin

    • 如果出現錯誤訊息

      • 錯誤訊息

        Plugin configuration unchanged.
                    
        Applying plugin configuration to rabbit@SC-201607101239... failed.
            * Could not contact node rabbit@SC-201607101239.
                Changes will take effect at broker restart.
            * Options: --online  - fail if broker cannot be contacted.
                        --offline - do not try to contact broker.
        
      • 錯誤截圖

        23manageerror

      • 解決方式可以參考 Windows搭建測試RabbitMq遇到的問題Run 「rabbitmq-plugins enable rabbitmq_management」 .. failed

        • %SystemRoot%\.erlang.cookie 複製到 %HOMEDRIVE%%HOMEPATH%\.erlang.cookie , 並重新執行 rabbitmq-plugins.bat enable rabbitmq_management 即可
  7. 登入RabbitMQ 管理介面

    • 成功安裝後,可以使用 http://localhost:15672/ 開啟管理介面

      13manageui

    • 預設帳號密碼是:guest/guest

      14managelogin

Windows Server 2016

  1. 安裝 Erlang

  2. 設定 Erlang 環境變數

    • 按下鍵盤 windows 圖示鍵 or 放大鏡,搜尋 environment

      21env

    • 點擊 Edit the system environment

      22endedit

    • 點擊 Environment Varialbes

      16envvar

    • 新增 System variables (New..)

      17newvar

    • Variable name –> ERL_HOME; Variable value –> Erlang 安裝路徑

      18varsetting

    • 修改 Path 變數 (點選 Path –> Edit)

      19editpath

    • New –> %ERL_HOME%\bin;

      20addtopath

  3. 測試是否成功安裝 Erlang

    • 開啟 command prompt or Windows PowerShell 執行 erl (ctrl+c 可以跳出)

      8erl

      9erl

  4. 安裝 RabbitMQ

  5. 確認是否安裝並順利啟動

    • 開啟 command prompt 輸入 sc query "RabbitMQ" (state - RUNNING 代表執行中)

      11servicestate

  6. 安裝 RabbitMQ 管理套件

    • 開啟 RabbitMQ Command Prompt(sbin dir)(安裝 RabbitMQ 時順便安裝的 command prompt) 執行 rabbitmq-plugins.bat enable rabbitmq_management
    • 也可以開啟一般的 command prompt 進到 {RabbitMQ 安裝路徑}/sbin 下執行 rabbitmq-plugins.bat enable rabbitmq_management

      12mqmanageplugin

  7. 登入RabbitMQ 管理介面

    • 成功安裝後,可以使用 http://localhost:15672/ 開啟管理介面

      13manageui

    • 預設帳號密碼是:guest/guest

      14managelogin

參考資訊

  1. window7下面rabbitMQ安裝配置過程詳解
  2. Installing on Windows Guideline
  3. Windows搭建測試RabbitMq遇到的問題
  4. Run 「rabbitmq-plugins enable rabbitmq_management」 .. failed