您的位置:首页 > 数据库 > Redis

linux下postgresql 一主多从、redis集群、rabbitmq等环境搭建 (十二) rabbitmq

2020-02-12 15:59 621 查看

rabbitmq 安装

准备工作

mkdir -p /xa-rdmp/program/rabbitmq

mkdir -p /xa-rdmp/program/erlang

mkdir -p /xa-rdmp/user/data/rabbitmq/etc/rabbitmq/rabbitmq
mkdir -p /xa-rdmp/user/data/rabbitmq/var/log/rabbitmq
mkdir -p /xa-rdmp/user/data/rabbitmq/var/lib/rabbitmq/mnesia

cd /xa-rdmp/temp

下载 erlang 源代包

wget -O /xa-rdmp/temp/otp_src_21.1.tar.gz  http://erlang.org/download/otp_src_21.1.tar.gz

解压 erlang 源代包

tar xzvf /xa-rdmp/temp/otp_src_21.1.tar.gz -C /xa-rdmp/temp

安装 erlang

yum -y install gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf git

cd /xa-rdmp/temp/otp_src_21.1

./otp_build autoconf

./configure --prefix=/xa-rdmp/program/erlang -with-ssl -enable-rhreads -enable-smp-support -enable-kernel-poll -enable-hipe -without-javac

make && make install

下载 rabbitmq 二进制包

wget -O /xa-rdmp/temp/rabbitmq-server-generic-unix-3.6.15.tar.xz  http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unix-3.6.15.tar.xz

解压

cd /xa-rdmp/temp

yum -y install xz

xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz

tar -xvf rabbitmq-server-generic-unix-3.6.15.tar

mv /xa-rdmp/temp/rabbitmq_server-3.6.15/ /xa-rdmp/program/rabbitmq

修改 /xa-rdmp/program/rabbitmq/sbin/rabbitmq-defaults 内容为如下

#!/bin/sh -e
##  The contents of this file are subject to the Mozilla Public License
##  Version 1.1 (the "License"); you may not use this file except in
##  compliance with the License. You may obtain a copy of the License
##  at http://www.mozilla.org/MPL/
##
##  Software distributed under the License is distributed on an "AS IS"
##  basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
##  the License for the specific language governing rights and
##  limitations under the License.
##
##  The Original Code is RabbitMQ.
##
##  The Initial Developer of the Original Code is GoPivotal, Inc.
##  Copyright (c) 2012-2015 Pivotal Software, Inc.  All rights reserved.
##

export HOME=/xa-rdmp/program/rabbitmq/

### next line potentially updated in package install steps
SYS_PREFIX=${RABBITMQ_HOME}

### next line will be updated when generating a standalone release
ERL_DIR=/xa-rdmp/program/erlang/bin/

CLEAN_BOOT_FILE=start_clean
SASL_BOOT_FILE=start_sasl

if [ -f "${RABBITMQ_HOME}/erlang.mk" ]; then
# RabbitMQ is executed from its source directory. The plugins
# directory and ERL_LIBS are tuned based on this.
RABBITMQ_DEV_ENV=1
fi

## Set default values

BOOT_MODULE="rabbit"

CONFIG_FILE=/xa-rdmp/user/data/rabbitmq/etc/rabbitmq/rabbitmq
LOG_BASE=/xa-rdmp/user/data/rabbitmq/var/log/rabbitmq
MNESIA_BASE=/xa-rdmp/user/data/rabbitmq/var/lib/rabbitmq/mnesia
ENABLED_PLUGINS_FILE=${SYS_PREFIX}/etc/rabbitmq/enabled_plugins

PLUGINS_DIR="${RABBITMQ_HOME}/plugins"

# RABBIT_HOME can contain a version number, so default plugins
# directory can be hard to find if we want to package some plugin
# separately. When RABBITMQ_HOME points to a standard location where
# it's usually being installed by package managers, we add
# "/usr/lib/rabbitmq/plugins" to plugin search path.
case "$RABBITMQ_HOME" in
/usr/lib/rabbitmq/*)
PLUGINS_DIR="/usr/lib/rabbitmq/plugins:$PLUGINS_DIR"
;;
esac

CONF_ENV_FILE=${SYS_PREFIX}/etc/rabbitmq/rabbitmq-env.conf
/xa-rdmp/program/rabbitmq/sbin/rabbitmq-server start

配置帐号

/xa-rdmp/program/rabbitmq/sbin/rabbitmq-plugins enable rabbitmq_management
sleep 5
/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl change_password guest guest.123
sleep 5
/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl add_user cardone cardone.123
sleep 5
/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl set_user_tags cardone administrator
sleep 5
/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl add_vhost cardone
sleep 5
/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl set_permissions -p cardone cardone ".*" ".*" ".*"

把以下内容 存入 /usr/lib/systemd/system/rabbitmq-server.service

[Unit]
Description=RabbitMQ broker
After=syslog.target network.target

[Service]
Type=notify
NotifyAccess=all
TimeoutStartSec=3600
# The following setting will automatically restart RabbitMQ
# in the event of a failure. systemd service restarts are not a
# replacement for service monitoring. Please see
# http://www.rabbitmq.com/monitoring.html
Restart=on-failure
RestartSec=10
WorkingDirectory=/xa-rdmp/program/rabbitmq/var/lib/rabbitmq
ExecStart=/xa-rdmp/program/rabbitmq/sbin/rabbitmq-server
ExecStop=/xa-rdmp/program/rabbitmq/sbin/rabbitmqctl stop
ExecStop=/bin/sh -c "while ps -p $MAINPID >/dev/null 2>&1; do sleep 1; done"
# See rabbitmq/rabbitmq-server-release#51
SuccessExitStatus=69

[Install]
WantedBy=multi-user.target

修改权限并设置为自启动

chmod u+x /usr/lib/systemd/system/rabbitmq-server.service

systemctl enable rabbitmq-server.service

转载于:https://my.oschina.net/cmsmis/blog/1824565

  • 点赞
  • 收藏
  • 分享
  • 文章举报
chutao7052 发布了0 篇原创文章 · 获赞 0 · 访问量 61 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: