1. 安装erlang 安装依赖环境 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel 下载最新 Erlang 19.0 wget http://erlang.org/download/otp_src_19.0.tar.gz 解压 tar -xvzf otp_src_19.0.tar.gz 配置 ./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac make && make install 2. 安装 rabbitmq wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-generic-unix-3.6.5.tar.xz xz -d rabbitmq-server-generic-unix-3.6.5.tar.xz tar -xvf rabbitmq-server-generic-unix-3.6.5.tar mv rabbitmq_server-3.6.5/ /usr/local/rabbitmq 然后在配置rabbitmq环境变量,vi /etc/profile文件,增加下面的环境变量: export PATH=$PATH:/usr/local/erlang/bin export PATH=$PATH:/usr/local/rabbitmq/sbin source /etc/profile使得文件生效 以上就已经完成了RabbitMq的安装 3.RabbitMQ服务启动关闭 启动服务: cd /usr/local/rabbitmq/sbin/ [root@iZ25e3bt9a6Z sbin]# ./rabbitmq-server -detached 查看服务状态: [root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl status 关闭服务: [root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl stop Stopping and halting node rabbit@iZ25e3bt9a6Z ... 4. 配置网页插件   首先创建目录,否则可能报错: mkdir /etc/rabbitmq   然后启用插件(在rabbitmq启动的前提下): ./rabbitmq-plugins enable rabbitmq_management   配置linux 端口 15672 网页管理 5672 AMQP端口   然后访问http://localhost:15672即可   默认用户guest 密码guest 5. 远程访问配置 默认网页是不允许访问的,需要增加一个用户修改一下权限,代码如下:   添加用户:rabbitmqctl add_user damon 123456   添加权限:rabbitmqctl set_permissions -p "/" damon ".*" ".*" ".*" 修改用户角色:rabbitmqctl set_user_tags damon administrator #根据自己需要创建以下内容 创建虚拟主机:rabbitmqctl add_vhost vhost(vhost为虚拟主机名) 清理原始权限:rabbitmqctl clear_permissions -p / damon 授予新主机权限:rabbitmqctl set_permissions -p vhost damon ".*" ".*" ".*" 然后就可以远程访问了,然后可直接配置用户权限等信息。 6. Rabbitmq的集群配置 (1)在2台节点上分别部署同一版本Rabbitmq,使用以下命令两台主机名是否相同 rabbitmqctl status 如果两台主机名相同,就得修改这两台机器的hostname,要想配置成功集群,就必须保证这两个节点的主机名不同,且能互相ping通 vim /etc/sysconfig/network (centos7以上:vim /etc/hostname) 分别将HOSTNAME属性值改为rabbitmq_node1,rabbitmq_node2,并重启 (2)如果两台主机名不相同,如:分别为rabbit@rabbitmq_node1,rabbit@rabbitmq_node2,就在两台主机里的/etc/hosts文件中分别添加: 192.168.10.15 rabbitmq_node1 主节点 192.168.10.16 rabbitmq_node2 (3)设置每个节点Cookie Rabbitmq的集群是依赖于erlang的集群来工作的,所以必须先构建起erlang的集群环境。Erlang的集群中各节点是通过一个 magic cookie来实现的,这个cookie存放在 /root/.erlang.cookie 中,文件是400的权 限。所以必须保证各节点cookie保持一致,否则节点之间就无法通信. 建议在RabbitMQ服务启动前修改cookie,如果RabbitMQ服务已经启动,修改cookie值后,必须重启RabbitMQ服务,这步很关键 # chmod 700 /root/.erlang.cookie # echo -n "AZVOCZYZZBVFLBPTBXU" > /root/.erlang.cookie # chmod 400 /root/.erlang.cookie # ps -ef | grep ^rabbitmq | awk '{print $2}' | xargs kill -9 #rabbitmq-server -detached (4) 设192.168.10.15 (rabbitmq_node1)为主节点,在192.168.10.15机器中执行 #rabbitmqctl stop_app #rabbitmqctl reset (这一步会重置,请备份数据) #rabbitmqctl start_app 在192.168.10.16 (rabbitmq_node2)机器中 #rabbitmqctl stop_app #停止rabbitmq_node2节点 #rabbitmqctl join_cluster rabbit@rabbitmq_node1 # 将testNod2节点添加进主节点 #rabbitmqctl start_app #启动rabbitmq_node2节点 (5)设置镜像策略 使用Rabbit镜像功能,需要基于rabbitmq策略来实现,策略是用来控制和修改群集范围的某个vhost队列行为和Exchange行为 在cluster中任意节点启用策略,策略会自动同步到集群节点 # rabbitmqctl set_policy -p hrsystem ha-allqueue"^" '{"ha-mode":"all"}' 这行命令在vhost名称为hrsystem创建了一个策略,策略名称为ha-allqueue,策略模式为 all 即复制到所有节点,包含新增节点, 策略正则表达式为 “^” 表示所有匹配所有队列名称。 例如rabbitmqctl set_policy -p hrsystem ha-allqueue "^message" '{"ha-mode":"all"}' 注意:"^message" 这个规则要根据自己修改,这个是指同步"message"开头的队列名称,我们配置时使用的应用于所有队列,所以表达式为"^" 官方set_policy说明参见 set_policy [-p vhostpath] {name} {pattern} {deFinition} [priority] (http://www.rabbitmq.com/man/rabbitmqctl.1.man.html) (6)查看 至此,Rabbitmq的集群配置已经完成。在这2台机器中,执行以下命令: /usr/sbin/rabbitmqctl cluster_status 就可以看到集群配置的效果,分别如下所示:(切记:在任何情况下,集群中必须至少有一个节点是disk类型的,所以如果集群是3台机器的话,就需要有2台机器的节点是disk类型的) 7. rabbitmq常用命令   add_user <UserName> <Password>   delete_user <UserName>   change_password <UserName> <NewPassword>   list_users   add_vhost <VHostPath>   delete_vhost <VHostPath>   list_vhostsset_permissions [-p <VHostPath>] <UserName> <Regexp> <Regexp> <Regexp>   clear_permissions [-p <VHostPath>] <UserName>   list_permissions [-p <VHostPath>]   list_user_permissions <UserName>   list_queues [-p <VHostPath>] [<QueueInfoItem> ...]   list_exchanges [-p <VHostPath>] [<ExchangeInfoItem> ...]   list_bindings [-p <VHostPath>] list_connections [<ConnectionInfoItem> ...]

centos7.1 RabbitMQ安装配置的更多相关文章

  1. HTML5 Web缓存和运用程序缓存(cookie,session)

    这篇文章主要介绍了HTML5 Web缓存和运用程序缓存(cookie,session),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  2. 关于h5中的fetch方法解读(小结)

    这篇文章主要介绍了关于h5中的fetch方法解读(小结),fetch身为H5中的一个新对象,他的诞生,是为了取代ajax的存在而出现,有兴趣的可以了解一下

  3. ios – 如何在Swift中手动为UIWebView设置Cookie

    我需要在swift中为webview设置一个cookie.我找到了一个解决方案,但它是针对objective-c的.如何在Swift中做到这一点?

  4. 通过在iOS中处理cookie来维护会话信息

    我是iOS开发的新手.我正在使用NSURLSession来管理会话信息.下面是我用来调用任何服务器API的示例代码,我的申请流程是,如果没有登录–>登录(呼叫登录api)Else转到主屏幕并调用其他API.我的问题是,一旦从内存中删除应用程序,会话信息就不会被维护,我不得不再次调用Login.我的要求就像Facebook一样,用户只需登录一次,并且在下次应用程序启动时保持会话.编辑:我想我必须通过

  5. ios – 以http无效的自定义URL方案开头

    我在应用程序中使用了自定义URL方案.我成功地从safari重定向到我的应用程序.就像我已经制作了URL方案“appname”.请检查http://prntscr.com/2cjx0p.我需要使用像iosurlredirectfrommailtoapp这样的解决方案,但我不确定如何设置cookie.我发现我必须首先在我的应用程序中为服务器“http://myappname.com”设置一个cook

  6. 在iOS 8.4上清除WKWebView的Cookie

    另一个想法是使用自定义的WKProcesspool子类手动管理cookie.我相信这是Firefox如何管理任何cookie问题.

  7. ios – 在302重定向之后,AVPlayer无法为同一个域发送cookie

    有没有办法解决这个问题?请分享你的想法.解决方法制作一个演示该问题的示例,提交错误报告.然后创建一个提到雷达的DTS事件,并且您正在寻找一个解决方案,以便您认为是一个错误.这打开了两种可能性:>工程师可以确认错误–如果不知道他们会修复它,如果它是重复的,您可以请求原始状态信息>DTS具有足够的知识,有能力查询实际的AV工程师如何解决这个问题这样你就可以花更少的时间找到可能不会得到任何其他答案的地方.

  8. ios – AFNetworking自动持久化Cookie

    在ThisQuestion中说,AFNetworking在后台自动处理cookies,但是在Previous问题中,我遇到麻烦,在登录时在PHP服务器上保持会话.一旦关闭的应用程序,并回到会议已经没了.答案是保持像这样的cookie来解决问题:当我尝试做这样的事情时,这给我一个应用程序崩溃.当我登录时,我设置了NSUserDefault:这是错误的使用方法吗?谢谢.解决方法使用以下内容,这是保存和加载适用于我的Cookie的正确方法:希望有帮助!

  9. ios – WKWebView Cookie存储位置

    希望苹果能够在最新的更新中解决这个问题.

  10. ios – SFSafariViewController cookie

    据我所知,从iOS9开始,您应该能够使用SFSafariViewController读取cookie.如果我使用以下内容在JS中的页面上设置cookie:如果我做:cookiesArray总是空的.如果我使用传统的UIWebView我得到了我期待的cookie.我有什么想法可能做错了吗?解决方法SFSafariViewController基本上是一个Safari进程,在你的应用程序之外运行.您的应

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部