`

RabbitMQ开机自启动

 
阅读更多
如通过yum安装的话直接通过chkconfig rabbitmq-server on 就可以设置为开机自启动,但公司这边是通过源代码进行安装,如何也通过系统服务来自启动呢?

步骤:

1.增加自启动脚本:
在/etc/init.d目录下新建一个rabbitmq-server文件,内容如下:

#!/bin/sh 

# rabbitmq-server RabbitMQ broker 

# chkconfig: - 80 05 
# description: Enable AMQP service provided by RabbitMQ 

 
### BEGIN INIT INFO 
# Provides:          rabbitmq-server 
# Required-Start:    $remote_fs $network 
# Required-Stop:     $remote_fs $network 
# Description:       RabbitMQ broker 
# Short-Description: Enable AMQP service provided by RabbitMQ broker 
### END INIT INFO 
 
# Source function library. 
. /etc/init.d/functions 
export HOME=/root 
PATH=/sbin:/usr/sbin:/bin:/usr/bin 
NAME=rabbitmq-server 
#DAEMON=/usr/sbin/${NAME} 
#CONTROL=/usr/sbin/rabbitmqctl 
DAEMON=/server/rabbitmq/sbin/${NAME} 
CONTROL=/server/rabbitmq/sbin/rabbitmqctl 
DESC=rabbitmq-server 
USER=root 
ROTATE_SUFFIX= 
INIT_LOG_DIR=/var/log/rabbitmq 
PID_FILE=/var/run/rabbitmq/pid 
 
START_PROG="daemon" 
LOCK_FILE=/var/lock/subsys/$NAME 
 
test -x $DAEMON || exit 0 
test -x $CONTROL || exit 0 
 
RETVAL=0 
set -e 
 
[ -f /etc/default/${NAME} ] && . /etc/default/${NAME} 
 
ensure_pid_dir () { 
    PID_DIR=`dirname ${PID_FILE}` 
    if [ ! -d ${PID_DIR} ] ; then 
        mkdir -p ${PID_DIR} 
        chown -R ${USER}:${USER} ${PID_DIR} 
        chmod 755 ${PID_DIR} 
    fi 

 
remove_pid () { 
    rm -f ${PID_FILE} 
    rmdir `dirname ${PID_FILE}` || : 

 
start_rabbitmq () { 
    status_rabbitmq quiet 
    if [ $RETVAL = 0 ] ; then 
        echo RabbitMQ is currently running 
    else 
        RETVAL=0 
        ensure_pid_dir 
        set +e 
        RABBITMQ_PID_FILE=$PID_FILE $START_PROG $DAEMON \ 
            > "${INIT_LOG_DIR}/startup_log" \ 
            2> "${INIT_LOG_DIR}/startup_err" \ 
            0<&- & 
        $CONTROL wait $PID_FILE >/dev/null 2>&1 
        RETVAL=$? 
        set -e 
        case "$RETVAL" in 
            0) 
                echo SUCCESS 
                if [ -n "$LOCK_FILE" ] ; then 
                    touch $LOCK_FILE 
                fi 
                ;; 
            *) 
                remove_pid 
                echo FAILED - check ${INIT_LOG_DIR}/startup_\{log, _err\} 
                RETVAL=1 
                ;; 
        esac 
    fi 

 
stop_rabbitmq () { 
    status_rabbitmq quiet 
    if [ $RETVAL = 0 ] ; then 
        set +e 
        $CONTROL stop ${PID_FILE} > ${INIT_LOG_DIR}/shutdown_log 2> ${INIT_LOG_DIR}/shutdown_err 
        RETVAL=$? 
        set -e 
        if [ $RETVAL = 0 ] ; then 
            remove_pid 
            if [ -n "$LOCK_FILE" ] ; then 
                rm -f $LOCK_FILE 
            fi 
        else 
            echo FAILED - check ${INIT_LOG_DIR}/shutdown_log, _err 
        fi 
    else 
        echo RabbitMQ is not running 
        RETVAL=0 
    fi 

 
status_rabbitmq() { 
    set +e 
    if [ "$1" != "quiet" ] ; then 
        $CONTROL status 2>&1 
    else 
        $CONTROL status > /dev/null 2>&1 
    fi 
    if [ $? != 0 ] ; then 
        RETVAL=3 
    fi 
    set -e 

 
rotate_logs_rabbitmq() { 
    set +e 
    $CONTROL rotate_logs ${ROTATE_SUFFIX} 
    if [ $? != 0 ] ; then 
        RETVAL=1 
    fi 
    set -e 

 
restart_running_rabbitmq () { 
    status_rabbitmq quiet 
    if [ $RETVAL = 0 ] ; then 
        restart_rabbitmq 
    else 
        echo RabbitMQ is not runnning 
        RETVAL=0 
    fi 

 
restart_rabbitmq() { 
    stop_rabbitmq 
    start_rabbitmq 

 
case "$1" in 
    start) 
        echo -n "Starting $DESC: " 
        start_rabbitmq 
        echo "$NAME." 
        ;; 
    stop) 
        echo -n "Stopping $DESC: " 
        stop_rabbitmq 
        echo "$NAME." 
        ;; 
    status) 
        status_rabbitmq 
        ;; 
    rotate-logs) 
        echo -n "Rotating log files for $DESC: " 
        rotate_logs_rabbitmq 
        ;; 
    force-reload|reload|restart) 
        echo -n "Restarting $DESC: " 
        restart_rabbitmq 
        echo "$NAME." 
        ;; 
    try-restart) 
        echo -n "Restarting $DESC: " 
        restart_running_rabbitmq 
        echo "$NAME." 
        ;; 
    *) 
        echo "Usage: $0 {start|stop|status|rotate-logs|restart|condrestart|try-restart|reload|force-reload}" >&2 
        RETVAL=1 
        ;; 
esac 
 
exit $RETVAL 

根据实际情况修改上面内容中的:
DAEMON=/server/rabbitmq/sbin/${NAME}
CONTROL=/server/rabbitmq/sbin/rabbitmqctl
DESC=rabbitmq-server
USER=root

2.保存上面的文件并设置执行权限

chmod u+x /etc/init.d/rabbitmq-server

3.配置为开机自启动服务

ln -s $(which erl) /usr/bin/erl && chkconfig rabbitmq-server on


原文出自:
https://blog.csdn.net/weiguang1017/article/details/79065486
分享到:
评论

相关推荐

    llnux Rabbitmq下设置开机启动方式

    以上就是关于在Linux环境下设置Rabbitmq开机启动的详细步骤。通过这些操作,你可以确保RabbitMQ在系统启动时自动运行,从而提供持续的消息队列服务。如果需要进一步了解RabbitMQ的使用和管理,可以查阅官方文档或者...

    rabbitMQ安装部署.docx

    4. 设置RabbitMQ开机自启动: ``` [root@localhost sbin]# chkconfig rabbitmq-server on ``` 5. 启动、停止和重启RabbitMQ服务: - 启动:`[root@localhost sbin]# systemctl start rabbitmq-server.service` ...

    rabbitmq在Centos7.6的安装

    将rabbitmq安装后执行 启动rabbitmq systemctl start rabbitmq-server ...设置rabbitmq服务开机自启动 systemctl enable rabbitmq-server 打开RabbitMQWeb管理界面插件 rabbitmq-plugins enable rabbitmq_management

    RabbitMQ-RPM安装包

    - 设置RabbitMQ服务开机启动,以便于系统重启后自动启动服务: ``` sudo systemctl enable rabbitmq-server ``` 3. **RabbitMQ的配置与管理** - 默认情况下,RabbitMQ会监听在`localhost`上的`5672`端口。可以...

    麒麟v10系统Rabbitmq3.6.10安装包

    为了确保RabbitMQ服务在每次系统启动时自动运行,可以设置开机启动: ```bash sudo systemctl enable rabbitmq-server ``` 接下来,我们需要对RabbitMQ进行基本的配置。默认情况下,RabbitMQ的管理界面是关闭的,...

    rabbitmq-linux安装包1.zip

    7. **设置RabbitMQ开机启动**:确保RabbitMQ在系统启动时自动启动: ``` sudo systemctl enable rabbitmq-server ``` 8. **设置管理界面**:默认情况下,RabbitMQ的Web管理界面是关闭的。要启用它,执行: ``` ...

    RabbitMq安装教程.pdf

    接下来,配置RabbitMQ服务为开机自启动,并启动RabbitMQ服务。 为了方便管理RabbitMQ,可以启用RabbitMQ Management插件,该插件提供了一个基于Web的用户界面。通过firewalld添加管理端口15672的访问权限,并重新...

    rabbitmq在线安装.zip

    5. **设置开机启动**:为了确保RabbitMQ在系统重启后自动启动,执行: ``` sudo systemctl enable rabbitmq-server ``` 6. **验证安装**:通过检查RabbitMQ的状态来确认安装是否成功: ``` sudo systemctl ...

    RabbitMQ3.7.17版本安装包

    - **配置开机启动**:使用`systemctl enable rabbitmq-server`让RabbitMQ在系统启动时自动启动。 4. **RabbitMQ管理界面**:默认情况下,RabbitMQ提供了一个Web管理界面,可以在`http://localhost:15672`访问(需...

    rabbit&redis自启动 linux脚本

    在Linux系统中,为了确保服务如RabbitMQ和Redis能够在系统启动时自动运行,通常我们会创建自启动脚本。RabbitMQ是一个开源的消息代理和队列服务器,常用于处理异步任务和消息传递。而Redis则是一个高性能的键值...

    linux 7.4 离线安装rabbitmq

    7. **设置开机启动**: 若要让RabbitMQ在系统启动时自动运行,执行: ``` sudo systemctl enable rabbitmq-server ``` 8. **管理RabbitMQ**: 默认情况下,RabbitMQ的管理界面位于`...

    rabbitmq快速安装自定义脚本

    该资源是自定义的脚本快速安装erlang19.3+rabbitmq3.6,将rabbitmq的安装配置、开机自启动等繁杂操作写成自定义脚本,rabbitmq安装位置:/usr/local/rabbitmq,erlang安装位置:/usr/local/erlang

    rabbitmq-server-3.8.3安装包

    - 在Linux上,通过`systemctl start rabbitmq-server`启动服务,`systemctl enable rabbitmq-server`使其开机自启。 - Windows用户需运行`rabbitmq_server-3.8.3\sbin\rabbitmq-server.bat`启动服务。 4. **插件...

    rabbitmq-server-windows-3.9.13

    如果需要设置为开机自启,可以使用`rabbitmq-service install`命令。 5. **验证安装**:打开浏览器访问`http://localhost:15672`,默认情况下,你可以看到RabbitMQ的管理界面。首次登录使用默认凭据:guest/guest,...

    rabbitmq.rar

    若要设置为开机自启动,可以输入`rabbitmq-service.bat enable`。 5. **管理插件**:RabbitMQ的管理界面默认是关闭的,需要开启。在命令提示符中输入`rabbitmq-plugins enable rabbitmq_management`来启用管理插件...

    rabbitmq-server资源安装包

    - **CentOS 7安装**:使用`rpm`命令安装`rabbitmq-server-3.7.9-1.el7.noarch.rpm`,并启动服务,设置开机启动。 - **Windows安装**:双击`rabbitmq-server-3.7.9.exe`进行安装,配置环境变量,启动服务。 3. **...

    RabbitMQ包以及依赖包

    安装完成后,需要启动RabbitMQ服务,并确保其在开机时自动启动: ```bash sudo systemctl start rabbitmq-server sudo systemctl enable rabbitmq-server ``` 为了能够通过Web界面管理RabbitMQ,还需要启用并启动`...

    32-CentOS7安装Docker并配置国内镜像并构建RabbitMQ镜像1

    这将让 Docker 服务在开机时自动启动。 解决网络问题 在执行 `docker run hello-world` 命令时,我们可能会遇到 “WARNING: IPv4 forwarding is disabled. Networking will not work.” 的错误。这是因为 IPv4 ...

    RabbitMq 集群搭建linux

    - **设置开机自启动**: ```bash systemctl enable rabbitmq-server ``` #### 五、集群配置 为了将这些节点配置为集群,还需要进行以下步骤: - **在每个节点上启动RabbitMQ服务**。 - **在第一个节点上(例如...

    rabbitmq-server-3.5.4.tar.gz

    6. **服务化管理**:为了方便管理和开机自启,你可以将RabbitMQ作为服务注册: ``` sudo cp /usr/local/rabbitmq_server-3.5.4/sbin/rabbitmq-server /etc/init.d/ sudo chkconfig --add rabbitmq-server ``` 7...

Global site tag (gtag.js) - Google Analytics