隨筆 - 41  文章 - 7  trackbacks - 0
          <2016年6月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          一.安裝Erlang

          1、下載推薦的安裝包

          2、安裝

          安裝依賴包

          yum install unixODBC unixODBC-devel wxBase wxGTK SDL wxGTK-gl

          #rpm -ivh esl-erlang_18.3-1~centos~7_amd64.rpm

          二.安裝RabbitMQ
          下載RabbitMQ
          # wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-3.6.1-1.noarch.rpm
          # rpm -ivh rabbitmq-server-3.6.1-1.noarch.rpm

          安裝rabbitmq-server的過程中遇到了一個問題:

          Error: Package: rabbitmq-server-3.6.1-1.noarch (/rabbitmq-server-3.6.1-1.noarch) 
          Requires: erlang >= R16B-3 
          You could try using --skip-broken to work around the problem 
          You could try running: rpm -Va --nofiles --nodigest

          這是由于erlang的版本問題,其實是沒有影響的,你可以使用下面的命令進行安裝:

          #rpm -ivh --nodeps rabbitmq-server-3.6.1-1.noarch.rpm


          啟動

          #service rabbitmq-server start --后臺方式運行

          #service rabbitmq-server stop  --停止運行

          #service rabbitmq-server status --查看狀態

          #rabbitmq-server start 

          可以看到使用的日志文件

          日志目錄

          /var/log/rabbitmq

          #cat /var/log/rabbitmq/rabbit@iZ94nxslz66Z.log 可以看到下面的日志記錄

          ...................................................................................................................................................................................................................................................

          =INFO REPORT==== 28-Apr-2016::04:20:10 ===
          node           : rabbit@iZ94nxslz66Z
          home dir       : /var/lib/rabbitmq
          config file(s) : /etc/rabbitmq/rabbitmq.config (not found)
          cookie hash    : fisYwC976M1LblhTfYslpg==
          log            : /var/log/rabbitmq/rabbit@iZ94nxslz66Z.log
          sasl log       : /var/log/rabbitmq/rabbit@iZ94nxslz66Z-sasl.log
          database dir   : /var/lib/rabbitmq/mnesia/rabbit@iZ94nxslz66Z
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Memory limit set to 397MB of 992MB total.
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Disk free limit set to 50MB
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Limiting to approx 65435 file handles (58889 sockets)
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          FHC read buffering:  OFF
          FHC write buffering: ON
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Database directory at /var/lib/rabbitmq/mnesia/rabbit@iZ94nxslz66Z is empty. Initialising from scratch...
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Priority queues enabled, real BQ is rabbit_variable_queue
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Adding vhost '/'
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Creating user 'guest'
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Setting user tags for user 'guest' to [administrator]
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Setting permissions for 'guest' in '/' to '.*', '.*', '.*'
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          msg_store_transient: using rabbit_msg_store_ets_index to provide index
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          msg_store_persistent: using rabbit_msg_store_ets_index to provide index
          =WARNING REPORT==== 28-Apr-2016::04:20:11 ===
          msg_store_persistent: rebuilding indices from scratch
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          started TCP Listener on [::]:5672
          =INFO REPORT==== 28-Apr-2016::04:20:11 ===
          Server startup complete; 0 plugins started.
          =INFO REPORT==== 28-Apr-2016::04:21:52 ===
          Management plugin: using rates mode 'basic'
          =INFO REPORT==== 28-Apr-2016::04:21:52 ===
          Management plugin started. Port: 15672
          =INFO REPORT==== 28-Apr-2016::04:21:52 ===
          Statistics database started.
          =INFO REPORT==== 28-Apr-2016::04:21:52 ===
          Plugins changed; enabled [mochiweb,webmachine,rabbitmq_web_dispatch,
                                    amqp_client,rabbitmq_management_agent,
                                    rabbitmq_management], disabled []
          =INFO REPORT==== 28-Apr-2016::04:23:01 ===
          Stopping RabbitMQ
          =INFO REPORT==== 28-Apr-2016::04:23:01 ===
          stopped TCP Listener on [::]:5672
          =INFO REPORT==== 28-Apr-2016::04:23:01 ===
          Stopped RabbitMQ application
          =INFO REPORT==== 28-Apr-2016::04:23:01 ===
          Halting Erlang VM
          =INFO REPORT==== 28-Apr-2016::04:23:29 ===
          Starting RabbitMQ 3.6.1 on Erlang 18.3
          Copyright (C) 2007-2016 Pivotal Software, Inc.
          Licensed under the MPL.  See http://www.rabbitmq.com/
          ...................................................................................................................................................................................................................................................


          卸載

          #rpm -qa|grep rabbitmq
          rabbitmq-server-3.6.1-1.noarch
          #rpm -e --nodeps rabbitmq-server-3.6.1-1.noarch
          #rpm -qa|grep erlang
          esl-erlang-18.3-1.x86_64
          #rpm -e --nodeps esl-erlang-18.3-1.x86_64

          管理

          Rabbitmq服務器的主要通過rabbitmqctl和rabbimq-plugins兩個工具來管理,以下是一些常用功能。

          1). 服務器啟動與關閉

                啟動: rabbitmq-server –detached

                關閉:rabbitmqctl stop

                若單機有多個實例,則在rabbitmqctlh后加–n 指定名稱

          2). 插件管理

                開啟某個插件:rabbitmq-pluginsenable xxx

                關閉某個插件:rabbitmq-pluginsdisablexxx

                注意:重啟服務器后生效。

          3).virtual_host管理

                新建virtual_host: rabbitmqctladd_vhost  xxx

                撤銷virtual_host:rabbitmqctl  delete_vhost xxx

          4). 用戶管理

                新建用戶:rabbitmqctl add_user xxxpwd

                刪除用戶:   rabbitmqctl delete_user xxx

                改密碼: rabbimqctlchange_password {username} {newpassword}

                設置用戶角色:rabbitmqctlset_user_tags {username} {tag ...}

                        Tag可以為 administrator,monitoring, management

          5). 權限管理

                權限設置:set_permissions [-pvhostpath] {user} {conf} {write} {read}

                         Vhostpath

                         Vhost路徑

                         user

                用戶名

                        Conf

                一個正則表達式match哪些配置資源能夠被該用戶訪問。

                        Write

                一個正則表達式match哪些配置資源能夠被該用戶讀。

                         Read

                一個正則表達式match哪些配置資源能夠被該用戶訪問。

          6). 獲取服務器狀態信息

                 服務器狀態:rabbitmqctl status

                 隊列信息:rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...]

                          Queueinfoitem可以為:name,durable,auto_delete,arguments,messages_ready,

                          messages_unacknowledged,messages,consumers,memory

                 Exchange信息:rabbitmqctllist_exchanges[-p vhostpath] [exchangeinfoitem ...]

                           Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments.

                 Binding信息:rabbitmqctllist_bindings[-p vhostpath] [bindinginfoitem ...]       

                           Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments

                 Connection信息:rabbitmqctllist_connections [connectioninfoitem ...]

                 Connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。

                 Channel信息:rabbitmqctl  list_channels[channelinfoitem ...]

                Channelinfoitem有consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked

           

           

          常用命令:

          查看所有隊列信息

          # rabbitmqctl list_queues

          關閉應用

          # rabbitmqctl stop_app

          啟動應用,和上述關閉命令配合使用,達到清空隊列的目的

          # rabbitmqctl start_app

          清除所有隊列

          # rabbitmqctl reset

          更多用法及參數,可以執行如下命令查看

          # rabbitmqctl

           

           

          rabbitmq常用命令

          rabbitmq-server start  或者   service rabbitmq-server start     #啟動rabbitmq

          rabbitmqctl list_exchanges 

          rabbitmqctl list_bindings

          rabbitmqctl list_queues #分別查看當前系統種存在的Exchange和Exchange上綁定的Queue信息。

          rabbitmqctl status  #查看運行信息

          rabbitmqctl stop     #停止運行rabbitmq

          rabbitmq-plugins enable rabbitmq_management  

          #啟動rabbitmq的圖形管理界面,這個操作必須重啟rabbitmq, 然后在web中 http://127.0.0.1:15672 用戶名和密碼都是guest guest。如果局域網無法訪問設置防火墻過濾規則或關閉防火墻。


          posted on 2016-06-05 20:08 胡小軍 閱讀(3192) 評論(0)  編輯  收藏 所屬分類: RabbitMQ
          主站蜘蛛池模板: 梁山县| 小金县| 丹凤县| 元氏县| 卢龙县| 江安县| 玉屏| 民权县| 军事| 湖州市| 龙里县| 依安县| 乐安县| 平原县| 巨鹿县| 惠安县| 莱芜市| 昂仁县| 中卫市| 普兰县| 格尔木市| 定安县| 内黄县| 池州市| 伊春市| 讷河市| 阿尔山市| 清涧县| 余干县| 巴林右旗| 忻州市| 陆良县| 上饶市| 本溪| 田林县| 吉林市| 万州区| 花垣县| 昌江| 尉氏县| 潮州市|