logo资料库

RabbitMq+Haproxy.docx

第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
资料共12页,剩余部分请下载后查看
RabbitMQ 集群+haproxy高可用
1)添加用户
2)赋予其administrator角色:
3)创建和赋角色完成后查看并确认:
4)为用户赋权:
5)查看权限:
1.访问不了 
2.Warning: PID file not written; -detached was passe
3.如果写错了HOST的IP(如:factory.setHost("192.168.1.1"); )无此
4.如果写错端口PORT(如:factory.setPort(5678);) 报错:
5.如果写错用户名或者密码,报错: 
6.ODBC library - link check failed 需要安装 unixODBC
7.No usable OpenSSL found :需要安装 openssl
8.No C++ compiler found:需要安装gc c++ 编译器
9. wxWidgets not found, wx will NOT be usable :
10. fop is missing. 可忽略
11.参考资料:
RabbitMQ 集群+haproxy 高可用 序号 版本 修订人 修订时间 1 1 V1.0 V1.1 王威 王威 2018-09-25 2018-09-29 Reviewed 王威 王威
目 录 一、 系统参数..............................................................................................................1 二、 安装 erlang........................................................................................................ 1 1. 安装编译工具....................................................................................................1 2. erlang 下载....................................................................................................... 1 3. 解压....................................................................................................................1 4. 编译....................................................................................................................1 5. 编译安装............................................................................................................1 6. 配置环境变量....................................................................................................1 三、 安装 RabbitMQ................................................................................................ 2 1. 下载....................................................................................................................2 2. 安装 .................................................................................................................. 2 3. 启动....................................................................................................................2 4. 添加管理员账号................................................................................................3 5. 登录管理界面....................................................................................................3 四、 多台 MQ 安装.....................................................................................................3 五、 搭建 RabbitMQ 集群....................................................................................... 3 六、 安装 Haprox......................................................................................................5 1. 下载....................................................................................................................5 2. 解压....................................................................................................................5 3. 查看安装所需参数............................................................................................5 4. 查看主机内核版本............................................................................................5
5. 安装命令............................................................................................................6 6. 进行配置............................................................................................................6 7. 创建配置文件....................................................................................................6 8. 启动服务............................................................................................................6 七、 搭建过程中遇到问题..........................................................................................6
一、系统参数 系统版本:CentOS-6.8 RabbMq:rabbitmq_server-3.5.8 Erlang:otp_src_18.3 Haprox:haproxy-1.8.13 Hobbit1:192.168.0.1 Hobbit2:192.168.0.2 说明: Hobbit1、Hobbit2 分别安装 rabbitmq 并组成集群,因为虚拟机使用 Hobbit1 上安装 Haprox 作为高可用节点,实际应该采用新节点作为 Haprox 服务 器 二、安装 erlang 1. 安装编译工具(需配置 yum 源,本服务用阿里 yum 源) yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel glibc-devel autoconf 2. erlang 官方下载地址: Wget http://erlang.org/download/otp_src_18.3.tar.gz 3. 解压 tar xvf otp_src_18.3.tar.gz cd otp_src_18.3 4. 编译 ./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac 5. 编译安装 make && make install 6. 配置 erlang 环境变量 vim /etc/profile #在文件末尾添加下面代码 'ERLANG_HOME'等于上一步'--prefix'指定的 1
目录 ERLANG_HOME=/usr/local/erlang PATH=$ERLANG_HOME/bin:$PATH export ERLANG_HOME export PATH #使环境变量生效 source /etc/profile 三、安装 RabbitMQ 1. 官方下载地址: wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.8/rabbitmq-server-generic-unix-3.5.8.tar.gz 2. 安装 RabbitMQ3.5 版本无需 make、make install 解压可以适宜用 #用 tar 命令解压 tar -zxvf rabbitmq-server-generic-unix-3.5.8.tar.gz #移动目录看个人喜好 cp -rf ./rabbitmq_server-3.5.8 /usr/local/ cd /usr/local/ #开启管理页面插件 cd ./rabbitmq_server-3.5.8/sbin/ ./rabbitmq-plugins enable rabbitmq_management #设置镜像模式为做集只需在主机 hobbit1 上设置 ./rabbitmqctl set_policy -p / ha-allqueue "^rabbitmq" '{"ha-mode":"all"}' 设置配置文件 cd /home/trade/usr/local/rabbitmq/etc/rabbitmq cp rabbitmq.config.example rabbitmq.config 3. 启动 #启动命令,该命令 ctrl+c 后会关闭服务 ./rabbitmq-server #在后台启动 Rabbit 2
./rabbitmq-server & #关闭服务 ./rabbitmqctl stop #关闭服务(kill) 找到 rabbitmq 服务的 pid ps -ef|grep rabbitmq kill -9 **** 4. 添加管理员账号 #进入 RabbitMQ 安装目录 cd /usr/local/rabbitmq_server-3.5.8/sbin 1)添加用户 ./rabbitmqctl add_user admin 123456 2)赋予其 administrator 角色: ./rabbitmqctl set_user_tags admin administrator 3)创建和赋角色完成后查看并确认: ./rabbitmqctl list_users 4)为用户赋权: ./rabbitmqctl set_permissions -p / admin '.*' '.*' '.*' 5)查看权限: ./rabbitmqctl list_user_permissions admin 5. 登录管理界面 浏览器输入地址:http://服务器 IP 地址:15672/ 3
四、其余服务器安装 MQ 的方法和步骤同上(一至三)步骤 五、搭建 RabbitMQ 集群 Rabbitmq 的集群是依赖于 erlang 的集群来工作的,所以必须先构建起 erlang 的集群环境。Erlang 的集群中各节点是通过一个 magic cookie 来 实现的,这个 cookie 存放在.erlang.cookie 中,故必须保证各节点 cookie 保 持 一 致 , 否 则 节 点 之 间 就 无 法 通 信 。 建 议 在 做 下 列 操 作 前 , 关 闭 rabbitmq-server 服务。 1. 设置节点 cookie cookie 文件位于/root/下 将该节点的.erlang.cookie 文件内容(如下面的"XXXXXXXXXXXXX"字符 串)复制到其他所有节点的同文件中,记得要先赋予文件写权限,写完后再取消 写权限: chmod 700 .erlang.cookie echo -n "XXXXXXXXXXXXX" > .erlang.cookie chmod 400 .erlang.cookie 注意:复制字符串时,千万不要带上空格等无用信息 2. 确保节点间主机名称可以相互解析,将集群中全部机器的(ip 地址 主机名) 分别添加到每台机器的 hosts 文件中: vim /etc/hosts 127.0.0.1 192.168.0.1 192.168.0.2 hobbit1 hobbit1 hobbit2 3. 节点组成集群 首先启动 rabbitmq-server 的服务,运行各个机器的节点,并查看状态: service rabbitmq-server start rabbitmqctl stop rabbitmq-server -detached 4
rabbitmqctl status 4. 登录主机 hobbit2,组成集群如下操作: rabbitmqctl stop_app 注:如果报错连接不上请执行./rabbitmq-server & rabbitmqctl join_cluster rabbit@hobbit1 rabbitmqctl start_app 配置完成后, rabbitmqctl cluster_status 来查看是否集群配置成功 5. 节点退出集群 以 hobbit2 节点为例,如果需要将其退出集群 rabbitmqctl stop_app rabbitmqctl rest 六、安装 Haprox 1. 下载 (注:请浏览器打开点击进入下载页面) https://src.fedoraproject.org/repo/pkgs/haproxy/haproxy-1.8.13.tar.gz 2. 解压 tar -zxf haproxy-1.8.13.tar.gz cd haproxy-1.8.13 3. 查看安装所需参数 cat README 4. 查看主机内核版本 5
分享到:
收藏