rabbitmq 部署

安装依赖

yum -y install socat gcc gcc-c++ openssl openssl-devel perl ncurses-base ncurses-devel ncurses-bin 

unixODBC.x86_64 unixODBC-devel.x86_64 wxBase wxWidgets-devel

安装 Erlang

# 首先需对erlang对RabbitMQ的版本支持进行对比,因为它是由 erlang 编写的
https://www.rabbitmq.com/which-erlang.html

# -----------------------------------------------------------

# 安装 Erlang: https://www.erlang-solutions.com/resources/download.html
wget http://erlang.org/download/otp_src_23.2.tar.gz
tar -zxf otp_src_23.2.tar.gz -C ~
cd ~/otp_src_23.2
./configure --prefix=/usr/local/software/erlang 
--with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
make -j4
make install

# 环境变量
cat >> ~/.bash_profile <<'EOF'
# set erlang environment
export ERL_HOME=/usr/local/software/erlang
export PATH=$PATH:${ERL_HOME}/bin
EOF
source ~/.bash_profile
# 检查安装: erl -v

安装 RabbitMQ

cd /usr/local/software/
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.1/rabbitmq-server-generic-unix-3.9.1.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.9.1.tar.xz 
ln -sv rabbitmq_server-3.9.1 rabbitmq_server

# 环境变量
cat >> ~/.bash_profile <<'EOF'
# set RabbitMQ environment
export RABBITMQ_HOME=/usr/local/software/rabbitmq_server
export RABBITMQ_CONFIG_FILE=${RABBITMQ_HOME}/etc/rabbitmq/rabbitmq.conf
export RABBITMQ_ADVANCED_CONFIG_FILE=${RABBITMQ_HOME}/etc/rabbitmq/advanced.config
export RABBITMQ_CONF_ENV_FILE=${RABBITMQ_HOME}/etc/rabbitmq/rabbitmq-env.conf
export PATH=$PATH:${RABBITMQ_HOME}/sbin
EOF
source ~/.bash_profile

# 配置文件
# 在 3.7.0 之前 rabbitmq.conf 使用 Erlang 语法格式,新版本使用 sysctl 格式
# https://www.rabbitmq.com/configure.html#config-file
cat > $RABBITMQ_CONFIG_FILE <<'EOF'
listeners.tcp.default = 5672
management.listener.port = 15672
default_vhost = /
heartbeat = 60
log.file.level = info
num_acceptors.tcp = 10
num_acceptors.ssl = 10
ssl_options = none
EOF

# 该文件将与 rabbitmq.conf 合并 ...
# 当某些配置不可用或难以使用 sysctl 格式时可使用 Erlang 格式的配置文件: advanced.config
cat > $RABBITMQ_ADVANCED_CONFIG_FILE <<'EOF'
[
 {rabbitmq_shovel,
  [{shovels,
    [
    ]}
  ]},
  {rabbitmq_auth_backend_ldap, [
  ]}
].
EOF

mkdir -p /var/log/rabbitmq
cat > $RABBITMQ_CONF_ENV_FILE <<'EOF'
#!/bin/bash
RABBITMQ_NODE_IP_ADDRESS=0.0.0.0
RABBITMQ_NODE_PORT=5672
# RABBITMQ_NODENAME=<rabbitmq_nodename>
RABBITMQ_LOG_BASE=/var/log/rabbitmq/
# RABBITMQ_MNESIA_BASE=/data/rabbitmq/mnesia
EOF

# 开启WEB管理插件
rabbitmq-plugins enable rabbitmq_management

# 后台启动,停止服务: rabbitmqctl stop
rabbitmq-server -detached RABBITMQ_NODENAME=<rabbitmq_nodename>

# 新增用户 admin,密码为 123,并设置最高权限后加入管理员组
rabbitmqctl add_user admin 123
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
rabbitmqctl set_user_tags admin administrator

# 查看状态
rabbitmqctl -n rabbitmq1 status

# WEB地址: http://localhost:15672
# API文档: http://localhost:15672/api/
# 容器: docker run -it --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3.9-management

RabbitMQ 相关命令

# 新增用户 admin,密码为 123
rabbitmqctl add_user admin 123

# 更改密码
rabbitmqctl change_password admin 123456

# 查看用户列表
rabbitmqctl list_users

# 查看用户权限
rabbitmqctl list_user_permissions admin 

# 赋予用户全部操作权限(格式: -p 针对哪个虚拟机、哪个用户、哪个配置、是否可写、是否可读)
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

# 将 admin 用户加入管理员组
rabbitmqctl set_user_tags admin administrator

# (最后操作) 由于 RabbitMQ 默认的账号用户名和密码都是 guest,为安全起见需删除默认用户
rabbitmqctl delete_user guest

# 重置/初始化
rabbitmqctl reset

# 查看集群状态
rabbitmqctl cluster_status

# ----------------------------------------------------------- 

# 相关可执行文件 ...
# [root@localhost sbin]# ll -al
# -rwxr-xr-x 1 root root  1480 Jan 17  2018 rabbitmqctl
# -rwxr-xr-x 1 root root  1885 Jan 17  2018 rabbitmq-defaults
# -rwxr-xr-x 1 root root 12095 Jan 17  2018 rabbitmq-env
# -rwxr-xr-x 1 root root  1362 Jan 17  2018 rabbitmq-plugins
# -rwxr-xr-x 1 root root 10971 Jan 17  2018 rabbitmq-server
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值