自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在CentOS 7部署RabbitMQ服務(wù)

系統(tǒng) Linux 系統(tǒng)運維
MQ全稱為Message Queue, 消息隊列(MQ)是一種應(yīng)用程序?qū)?yīng)用程序的通信方法。

MQ全稱為Message Queue, 消息隊列(MQ)是一種應(yīng)用程序?qū)?yīng)用程序的通信方法。應(yīng)用程序通過讀寫出入隊列的消息(針對應(yīng)用程序的數(shù)據(jù))來通信,而無需專用連接來鏈接它們。消息傳遞指的是程序之間通過在消息中發(fā)送數(shù)據(jù)進(jìn)行通信,而不是通過直接調(diào)用彼此來通信,直接調(diào)用通常是用于諸如遠(yuǎn)程過程調(diào)用的技術(shù)。排隊指的是應(yīng)用程序通過 隊列來通信。隊列的使用除去了接收和發(fā)送應(yīng)用程序同時執(zhí)行的要求。其中較為成熟的MQ產(chǎn)品有IBM WEBSPHERE MQ等等。

RabbitMQ 簡介

安裝RabbitMQ的消息代理軟件,實現(xiàn)了AMQP(高級消息隊列協(xié)議)

RabbitMQ 教程: http://www.rabbitmq.com/getstarted.html

RabbitMQ 安裝:http://www.rabbitmq.com/download.html

RabbitMQ 安裝

  1. # Install from EPEL 
  2. [root@vdevops~]# yum --enablerepo=epel -y install rabbitmq-server 
  3. [root@vdevops~]# systemctl start rabbitmq-server 
  4. [root@vdevops /]# journalctl -xe 
  5. Nov 12 01:30:01 vdevops.org CROND[3856]: (root) CMD (/usr/lib64/sa/sa1 1 1) 
  6. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: DIAGNOSTICS 
  7. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: =========== 
  8. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: attempted to contact: [rabbit@vdevops] 
  9. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: rabbit@vdevops: 
  10. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: * unable to connect to epmd (port 4369) on vdevops: timeout (timed out
  11. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: current node details: 
  12. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - node name: rabbitmqctl3831@vdevops 
  13. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - home dir: /var/lib/rabbitmq 
  14. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - cookie hash: s++dDMtIhAufFItw+ercBw== 
  15. Nov 12 01:30:04 vdevops.org polkitd[1007]: Unregistered Authentication Agent for unix-process:3798:36632 (system bus name :1.23, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected f 
  16. Nov 12 01:30:04 vdevops.org systemd[1]: rabbitmq-server.service: control process exited, code=exited status=2 
  17. Nov 12 01:30:04 vdevops.org systemd[1]: Failed to start RabbitMQ broker. 
  18. -- Subject: Unit rabbitmq-server.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit rabbitmq-server.service has failed. --  -- The result is failed. Nov 12 01:30:04 vdevops.org systemd[1]: Unit rabbitmq-server.service entered failed state. Nov 12 01:30:04 vdevops.org systemd[1]: rabbitmq-server.service failed. Nov 12 01:30:42 vdevops.org systemd[1]: Got automount request for /proc/sys/fs/binfmt_misc, triggered by 3860 (find) Nov 12 01:30:42 vdevops.org systemd[1]: Mounting Arbitrary Executable File Formats File System... -- Subject: Unit proc-sys-fs-binfmt_misc.mount has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit proc-sys-fs-binfmt_misc.mount has begun starting up. Nov 12 01:30:42 vdevops.org systemd[1]: Mounted Arbitrary Executable File Formats File System. -- Subject: Unit proc-sys-fs-binfmt_misc.mount has finished start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit proc-sys-fs-binfmt_misc.mount has finished starting up. --  -- The start-up result is done.  

rabbitmq-server啟動報錯:Failed to start RabbitMQ broker

度娘解析:主機(jī)hostname配置錯誤,原本hostname為vdevops.org,更改為vdevops,修改hosts文件中hostname設(shè)置

  1. # Install from EPEL 
  2. [root@vdevops~]# yum --enablerepo=epel -y install rabbitmq-server 
  3. [root@vdevops~]# systemctl start rabbitmq-server 
  4. [root@vdevops /]# journalctl -xe 
  5. Nov 12 01:30:01 vdevops.org CROND[3856]: (root) CMD (/usr/lib64/sa/sa1 1 1) 
  6. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: DIAGNOSTICS 
  7. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: =========== 
  8. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: attempted to contact: [rabbit@vdevops] 
  9. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: rabbit@vdevops: 
  10. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: * unable to connect to epmd (port 4369) on vdevops: timeout (timed out
  11. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: current node details: 
  12. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - node name: rabbitmqctl3831@vdevops 
  13. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - home dir: /var/lib/rabbitmq 
  14. Nov 12 01:30:04 vdevops.org rabbitmqctl[3831]: - cookie hash: s++dDMtIhAufFItw+ercBw== 
  15. Nov 12 01:30:04 vdevops.org polkitd[1007]: Unregistered Authentication Agent for unix-process:3798:36632 (system bus name :1.23, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected f 
  16. Nov 12 01:30:04 vdevops.org systemd[1]: rabbitmq-server.service: control process exited, code=exited status=2 
  17. Nov 12 01:30:04 vdevops.org systemd[1]: Failed to start RabbitMQ broker. 
  18. -- Subject: Unit rabbitmq-server.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit rabbitmq-server.service has failed. --  -- The result is failed. Nov 12 01:30:04 vdevops.org systemd[1]: Unit rabbitmq-server.service entered failed state. Nov 12 01:30:04 vdevops.org systemd[1]: rabbitmq-server.service failed. Nov 12 01:30:42 vdevops.org systemd[1]: Got automount request for /proc/sys/fs/binfmt_misc, triggered by 3860 (find) Nov 12 01:30:42 vdevops.org systemd[1]: Mounting Arbitrary Executable File Formats File System... -- Subject: Unit proc-sys-fs-binfmt_misc.mount has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit proc-sys-fs-binfmt_misc.mount has begun starting up. Nov 12 01:30:42 vdevops.org systemd[1]: Mounted Arbitrary Executable File Formats File System. -- Subject: Unit proc-sys-fs-binfmt_misc.mount has finished start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel --  -- Unit proc-sys-fs-binfmt_misc.mount has finished starting up. --  -- The start-up result is done.  

防火墻設(shè)置

  1. [root@linuxprobe~]# firewall-cmd --add-port=5672/tcp --permanent success [root@linuxprobe~]# firewall-cmd --reload success 

要使用RabbitMQ,請先添加用戶

  1. [root@vdevops ~]# rabbitmqctl add_user linuxprobe password 
  2. Creating user "linuxprobe" ... 
  3. ...done. 
  4. [root@vdevops ~]# rabbitmqctl list_users 
  5. Listing users ... 
  6. guest   [administrator] 
  7. linuxprobe  [] 
  8. ...done. 
  9. # granting admin role to a user is like follows 
  10. [root@vdevops ~]# rabbitmqctl change_password linuxprobe strongpassword 
  11. Changing password for user "linuxprobe" ... 
  12. ...done. 
  13. # granting admin role to a user is like follows 
  14. [root@vdevops ~]# rabbitmqctl set_user_tags linuxprobe administrator 
  15. Setting tags for user "linuxprobe" to [administrator] ... 
  16. ...done. 
  17. # deleting a user is like follows 
  18. [root@vdevops ~]# rabbitmqctl delete_user linuxprobe  
  19. Deleting user "linuxprobe " ... 
  20. ...done. 

要使用RabbitMQ,也要添加虛擬主機(jī)

  1. [root@vdevops ~]# rabbitmqctl add_vhost /my_vhost 
  2. Creating vhost "/my_vhost" ... 
  3. ...done. 
  4. [root@vdevops ~]# rabbitmqctl list_vhosts  
  5. Listing vhosts ... 
  6. /my_vhost 
  7. ...done. 
  8. [root@vdevops ~]# rabbitmqctl delete_vhost /my_vhost 
  9. Deleting vhost "/my_vhost" ... 
  10. ...done. 

給虛擬主機(jī)的用戶授予權(quán)限,請如下配置

  1. # rabbitmqctl set_permissions [-p vhost] [user] [permission ? (modify) (write) (read)] 
  2. [root@vdevops ~]# rabbitmqctl set_permissions -p /my_vhost linuxprobe ".*" ".*" ".*" 
  3. Setting permissions for user "linuxprobe" in vhost "/my_vhost" ... 
  4. ...done. 
  5. #  
  6. [root@vdevops ~]#  rabbitmqctl list_user_permissions linuxprobe 
  7. Listing permissions for user "linuxprobe" ... 
  8. /my_vhost   .*  .*  .* 
  9. ...done. 
  10. # deleting permission of a specific user is like follows 
  11. [root@vdevops ~]# rabbitmqctl clear_permissions -p /my_vhost linuxprobe 
  12. Clearing permissions for user "linuxprobe" in vhost "/my_vhost" ... 
  13. ...done. 

RabbitMQ:使用Web UI

  1. [root@vdevops ~]# rabbitmq-plugins enable rabbitmq_management 
  2. The following plugins have been enabled:   mochiweb   webmachine   rabbitmq_web_dispatch   amqp_client   rabbitmq_management_agent   rabbitmq_management Plugin configuration has changed. Restart RabbitMQ for changes to take effect. [root@vdevops ~]# systemctl restart rabbitmq-server 

客戶端訪問

http://vdevops:15672/

rabbitmqadmin使用

可以配置RabbitMQ使用rabbitmqadmin命

在Web UI上下載rabbitmqadmin。 登錄到Web UI并移動到“http://(主機(jī)名或IP地址):15672 / cli”,然后顯示以下屏幕,您可以在這里下載rabbitmqadmin,點擊here右鍵保存rabbitmqadmin.txt,然后上傳到服務(wù)器上面更改為rabbitmqadmin,并添加執(zhí)行權(quán)限

將rabbitmqadmin上傳到RabbitMQ服務(wù)器并設(shè)置合適的權(quán)限,此示例顯示如下設(shè)置

  1. [root@localhost ~]# ll /usr/local/bin/rabbitmqadmin  
  2. -rwxr-xr-x. 1 root root 36112 Nov 11 17:23 /usr/local/bin/rabbitmqadmin 
  3. [root@vdevops bin]# rabbitmqadmin list users 
  4. +------------+------------------------------+---------------+ |    name    |        password_hash         |     tags      | +------------+------------------------------+---------------+ | guest      | k2rhpzCrZBKkY5WRhUWrGm5DCkg= | administrator | | linuxprobe | P+YxK1QXIYrJpek5i//rPjn5SME= | administrator | +------------+------------------------------+---------------+ [root@vdevops bin]# cd [root@vdevops ~]# rabbitmqadmin list users +------------+------------------------------+---------------+ |    name    |        password_hash         |     tags      | +------------+------------------------------+---------------+ | guest      | k2rhpzCrZBKkY5WRhUWrGm5DCkg= | administrator | | linuxprobe | P+YxK1QXIYrJpek5i//rPjn5SME= | administrator | +------------+------------------------------+---------------+ [root@vdevops ~]# rabbitmqadmin list vhosts +-----------+---------+ |   name    | tracing | +-----------+---------+ | /         | False   | | /my_vhost | False   | +-----------+---------+ 
  5. rabbitmqadmin 更多使用教程參考:http://www.rabbitmq.com/management-cli.html 
  6.  
  7. [root@vdevops ~]# rabbitmqadmin declare user name=centos password=password tags=administrator  
  8. user declared 
  9. [root@vdevops ~]# rabbitmqadmin declare permission vhost=/vhost01 user=centos configure=".*" write=".*" read=".*"  
  10. *** vhost_or_user_not_found 
  11. [root@vdevops ~]# rabbitmqadmin declare vhost name=/vhost01  
  12. vhost declared 
  13. [root@vdevops ~]# rabbitmqadmin declare permission vhost=/vhost01 user=centos configure=".*" write=".*" read=".*"  
  14. permission declared 
  15. [root@vdevops ~]# rabbitmqadmin -V /vhost01 -u centos -p password declare queue name=my_queue01  
  16. queue declared 
  17. [root@vdevops ~]# rabbitmqadmin -V /vhost01 -u centos -p password publish routing_key=my_queue01 payload='Hello RabbitMQ World!' exchange=amq.default  
  18. Message published 
  19. [root@vdevops ~]# rabbitmqadmin -V /vhost01 -u centos -p password get queue=my_queue01 requeue=false 
  20. +-------------+----------+---------------+-----------------------+---------------+------------------+------------+-------------+ 
  21. <>| routing_key | exchange | message_count |        payload        | payload_bytes | payload_encoding | properties | redelivered | 
  22. +-------------+----------+---------------+-----------------------+---------------+------------------+------------+-------------+ 
  23. | my_queue01  |          | 0             | Hello RabbitMQ World! | 21            | string           |            | False       | 
  24. +-------------+----------+---------------+-----------------------+---------------+------------------+------------+-------------+ 
  25. [root@vdevops ~]# rabbitmqadmin -V /vhost01 -u centos -p password publish routing_key=my_queue01 payload='Hello LinuxProbe!' exchange=amq.default  
  26. Message published 
  27. [root@vdevops ~]# rabbitmqadmin -V /vhost01 -u centos -p password get queue=my_queue01 requeue=false 
  28. +-------------+----------+---------------+-------------------+---------------+------------------+------------+-------------+ 
  29. | routing_key | exchange | message_count |      payload      | payload_bytes | payload_encoding | properties | redelivered | 
  30. +-------------+----------+---------------+-------------------+---------------+------------------+------------+-------------+ 
  31. | my_queue01  |          | 0             | Hello LinuxProbe! | 17            | string           |            | False       | 
  32. +-------------+----------+---------------+-------------------+---------------+------------------+------------+-------------+ 
責(zé)任編輯:武曉燕 來源: Linux就該這么學(xué)
相關(guān)推薦

2009-09-11 08:12:36

Windows 7企業(yè)部署網(wǎng)絡(luò)部署

2009-09-18 08:40:56

Windows 7企業(yè)部署VHD

2010-02-24 08:11:59

Windows 7企業(yè)部署

2009-09-15 08:30:36

Windows 7系統(tǒng)部署系統(tǒng)遷移

2010-01-13 08:52:21

Windows 7系統(tǒng)部署

2010-03-23 08:45:00

Windows 7企業(yè)部署安全性

2021-11-12 08:21:25

SQL ServerLinux數(shù)據(jù)庫

2014-07-17 14:09:31

Spark

2010-03-12 08:55:48

Windows 7企業(yè)部署

2012-12-27 09:46:12

2015-12-11 13:16:10

CentOS 7Redis服務(wù)器

2010-05-28 12:33:11

IPv6部署

2009-08-04 09:32:27

部署Silverlig

2010-06-07 15:21:00

hadoop-0.20

2024-04-17 08:00:00

2010-01-08 14:29:08

2014-12-01 11:27:54

CentOS 7Docker

2023-11-09 07:44:21

2010-06-07 16:34:07

Hadoop0.20.

2011-01-12 11:56:36

Visual Stud
點贊
收藏

51CTO技術(shù)棧公眾號