linux系统消息中间件安装配置负载均衡器

负载均衡器

安装并配置负载均衡器

注意:如果使用阿里云,可以使用阿里云的内网slb来实现负载均衡,不用自己搭建负载均衡。

安装并配置负载均衡器HA

在其中一台服务器安装HAProxy
shell 复制代码
yum -y install haproxy
修改 /etc/haproxy/haproxy.cfg
shell 复制代码
cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

vim /etc/haproxy/haproxy.cfg
global
    log         127.0.0.1 local2

    chroot      /var/lib/haproxy
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    user        haproxy
    group       haproxy
    nbproc      4
    daemon
    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats
#---------------------------------------------------------------------
defaults
    mode                    http
    log                     global
    retries                 3
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout check           10s
    maxconn                 2048
#---------------------------------------------------------------------
##监控查看本地状态#####
listen admin_stats
        bind *:80
    mode http
    option httplog
    option httpclose
    log 127.0.0.1 local0 err
    stats uri  /haproxy
    stats auth newrain:123456
    stats refresh 30s
####################################
###反代监控
frontend server
    bind *:5670
    log global
    mode tcp
    #option forwardfor
    default_backend rabbitmq
    maxconn 3
backend rabbitmq
    mode        tcp
    log         global
    balance     roundrobin
    server      rabbitmq1 192.168.50.138:5672 check inter 2000s rise 2 fall 3
    server      rabbitmq2 192.168.50.139:5672 check inter 2000s rise 2 fall 3
    server      rabbitmq3 192.168.50.140:5672 check inter 2000s rise 2 fall 3


#重启服务
systemctl start haproxy
复制代码
浏览器输入:http://192.168.50.138/haproxy
查看rabbitmq的状态。

常见命令

插件管理
复制代码
开启某个插件:rabbitmq-plugins enable  xxx
关闭某个插件:rabbitmq-plugins disable xxx
注意:重启服务器后生效。
virtual_host管理
复制代码
新建virtual_host:rabbitmqctl add_vhost  xxx
撤销virtual_host:rabbitmqctl  delete_vhost xxx 
用户管理
shell 复制代码
新建用户:rabbitmqctl add_user xxxpwd
删除用户: rabbitmqctl delete_user xxx
查看用户:rabbitmqctl list_users
改密码: rabbimqctl change_password {username} {newpassword}
设置用户角色:rabbitmqctlset_user_tags {username} {tag ...}
Tag可以为 administrator,monitoring, management
其他使用命令:
shell 复制代码
rabbitmq使用命令:
rabbitmq-plugins list    ----查看安装的插件
rabbitmq-server -detached  -----------启动RabbitMQ节点
rabbitmqctl start_app ----------启动RabbitMQ应用,而不是节点
rabbitmqctl stop_app  ------停止
rabbitmqctl status  ------查看状态
rabbitmqctl add_user mq 123456    -------设置用户和密码
rabbitmqctl set_user_tags mq administrator ------------------新增账户并设置为管理员
rabbitmq-plugins enable rabbitmq_management  --------------------启用RabbitMQ_Management
rabbitmqctl cluster_status -------------------集群状态
rabbitmqctl forget_cluster_node rabbit@rabbit3 -------------------节点摘除 
rabbitmqctl reset application----------------------重置
rabbitmqctl set_permissions -p "/" 用户名  ".*" ".*" ".*"    --------------授权
--------------------- 查看Connection,Queue,Channel,User

rabbitmqctl list_connections  #列出所有连接
rabbitmqctl list_queues  #列出所有队列
rabbitmqctl list_channels #列出所有通道
rabbitmqctl list_users   #列出所有用户
shell 复制代码
设置节点类型
如果你想更换节点类型可以通过命令修改,如下:

rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type dist
rabbitmqctl change_cluster_node_type ram
rabbitmqctl start_app
===================================================

移除节点
如果想要把节点从集群中移除,可使用如下命令实现:

rabbitmqctl stop_app
rabbitmqctl restart
rabbitmqctl start_app
=============================================

集群重启顺序
集群重启的顺序是固定的,并且是相反的。如下所述:

启动顺序:磁盘节点 => 内存节点
关闭顺序:内存节点 => 磁盘节点

最后关闭必须是磁盘节点,不然可能回造成集群启动失败、数据丢失等异常情况。
RabbitMQ 错误处理
复制代码
returned an error: shutdown: failed to  start child: Logger.ErrorHandler
原因:erlang版本与RabbitMQ的版本不对应
解决:根据 RabbitMQ Erlang Version Requirements 这个网页检查版本 https://www.rabbitmq.com/which-erlang.html
相关推荐
秋风&萧瑟2 分钟前
ubuntu安装git及使用(本地git)
linux·git·ubuntu
福理原乡大王15 分钟前
Linux环境变量
linux·运维·服务器·数据结构·算法
qq_5260991321 分钟前
PLC与工业电脑:有什么区别?
服务器·电脑·负载均衡
NicOym24 分钟前
进程、线程、进程间通信Unix Domain Sockets (UDS)
linux·c++·unix
runing_an_min31 分钟前
centos升级glibc
linux·centos·glibc
serve the people32 分钟前
centos上安装python的3.13版本
linux·python·centos
cykaw25901 小时前
Linux网络编程
linux
chunfeng—1 小时前
纯C协程框架NtyCo
linux·c++·后端·协程·ntyco
南川琼语1 小时前
TIME_WAIT状态+UDP概念及模拟实现服务器和客户端收发数据
linux·服务器·udp
杨航 AI2 小时前
服务器频繁重启日志分析与诊断
运维·服务器·chrome