知识库

标准化实施手册及常见错误


linux系统安装

<p>[TOC]</p> <p>RabbitMQ 它依赖于Erlang,需要先安装Erlang。以下的安装以centos7举例</p> <h2>一、安装erlang(版本根据情况自行选择)</h2> <p><strong>1.下载地址:</strong> <a href="http://www.erlang.org/downloads">http://www.erlang.org/downloads</a> <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/fabb28bb0898cab48cd00d66f1559367" alt="" /> <strong>2.创建路径、安装相关依赖</strong></p> <pre><code class="language-shell">mkdir -p /risen/soft/rabbitmq/erl</code></pre> <p><strong>erlang的依赖</strong></p> <pre><code class="language-shell">#yum源 yum -y install make gcc gcc-c++ automake openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel #apt源 apt-get install make gcc gcc-c++ automake openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel</code></pre> <p><strong>3.解压编译erlang包</strong> 上传到服务器并解压: [otp_src_24.1.7.tar.gz](<a href="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/08f660891dbfc6bb4b104788f3a28fd4">http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/08f660891dbfc6bb4b104788f3a28fd4</a> &quot;[otp_src_24.1.7.tar.gz&quot;)</p> <pre><code class="language-shell">tar -zxvf otp_src_24.1.7.tar.gz</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/7c4dcdbc3320c4846bad9b80013d49a8" alt="" /> <strong>4.编译安装erlang</strong></p> <pre><code class="language-shell">cd /risen/soft/workspace/otp_src_24.1.7 #编译 ./configure --prefix=/risen/soft/rabbitmq/erl --without-javac #安装 make &amp;amp;&amp;amp; make install</code></pre> <p><strong>5.添加环境变量</strong></p> <pre><code class="language-shell">vi /etc/profile #最后一行加入以下内容: export ERL_HOME=/risen/soft/rabbitmq/erl export PATH=$PATH:$ERL_HOME/bin</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/99729df6983751ec118dd37866640c4f" alt="" /> 重载生效</p> <pre><code class="language-shell">source /etc/profile</code></pre> <p>检查是否安装成功:</p> <pre><code class="language-shell">erl -version</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/e5a33a14382deaba30ca20afa95b9c95" alt="" /></p> <h2>二、安装RabbitMQ Server(版本根据情况自行选择)</h2> <p><strong>1.下载地址:</strong> <a href="https://www.rabbitmq.com/ec2.html">https://www.rabbitmq.com/ec2.html</a> <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/102b686f495c07613e8f64eda044bb2d" alt="" /> <strong>2.创建路径</strong></p> <pre><code class="language-shell">mkdir -p /risen/soft/rabbitmq/data</code></pre> <p><strong>3.解压rabbitmq包</strong> 上传到服务器并解压:[rabbitmq-server-generic-unix-3.9.11.tar.xz](<a href="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/a08c744653885d462d6b01af508e1ad3">http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/a08c744653885d462d6b01af508e1ad3</a> &quot;[rabbitmq-server-generic-unix-3.9.11.tar.xz&quot;)</p> <pre><code class="language-shell">tar -xvf rabbitmq-server-generic-unix-3.9.11.tar.xz #移动到我们创建好的路径 mv rabbitmq_server-3.9.11 /risen/soft/rabbitmq/mq</code></pre> <p><strong>4.添加环境变量</strong></p> <pre><code class="language-shell">vi /etc/profile #最后一行加入以下内容: export RABBITMQ_HOME=/risen/soft/rabbitmq/mq export PATH=$PATH:$RABBITMQ_HOME/sbin</code></pre> <p>重载生效</p> <pre><code class="language-shell">source /etc/profile</code></pre> <p><strong>5.创建数据储存路径</strong></p> <pre><code class="language-shell">chmod -R 755 /risen/soft/rabbitmq/ mkdir -p /risen/soft/rabbitmq/data/mnesia mkdir -p /risen/soft/rabbitmq/data/log</code></pre> <p><strong>6.创建rabbitmq配置文件,指定数据和日志存储路径</strong></p> <pre><code class="language-shell">vim /risen/soft/rabbitmq/mq/etc/rabbitmq/rabbitmq-env.conf #添加如下配置 RABBITMQ_MNESIA_BASE=/risen/soft/rabbitmq/data/mnesia RABBITMQ_LOG_BASE=/risen/soft/rabbitmq/data/log</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/f8fc032c22a7ad5261de935092e95b8a" alt="" /> <strong>7.启动rabbitmq server</strong> 停止rabbitmq服务</p> <pre><code class="language-shell">rabbitmq-server stop</code></pre> <p>启动RabbitMQ服务并在后台运行</p> <pre><code class="language-shell">rabbitmq-server start -detached</code></pre> <p>安装web管理插件</p> <pre><code class="language-shell">rabbitmq-plugins enable rabbitmq_management rabbitmq-plugins enable rabbitmq_consistent_hash_exchange</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/30fa14596f42c51d08e65864253290d7" alt="" /> 查看进程是否启动</p> <pre><code class="language-shell">netstat -nlpt</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/c9f5e99d37991539102ffa7ad639f144" alt="" /> <strong>8.如果未启动成功,需要重置mq再启动管理插件</strong></p> <pre><code class="language-shell">rabbitmqctl stop_app rabbitmqctl reset rabbitmq-plugins enable rabbitmq_management rabbitmq-plugins enable rabbitmq_consistent_hash_exchange rabbitmqctl start_app</code></pre> <p><strong>9.查看数据是否存到指定目录</strong></p> <pre><code class="language-shell">ls -l /risen/soft/rabbitmq/data/mnesia/</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/9347ff4d57baa6bf187316c30ed07654" alt="" /></p> <h2>三、创建新用户</h2> <pre><code class="language-shell">#创建用户 rabbitmqctl add_user admin {your password} #管理员权限 rabbitmqctl set_user_tags admin administrator #远程访问权限 rabbitmqctl set_permissions -p / admin &amp;quot;.*&amp;quot; &amp;quot;.*&amp;quot; &amp;quot;.*&amp;quot;</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/fa8c0da7880ea395ba295148d333932d" alt="" /></p> <h2>四、注册服务,设置开机自启</h2> <p><strong>1.创建rabbitmq-server.service 文件</strong></p> <pre><code class="language-shell">vi /usr/lib/systemd/system/rabbitmq-server.service</code></pre> <p>填加如下内容:</p> <pre><code class="language-shell">[Unit] Description=RabbitMQ broker After=syslog.target network.target [Service] #Type=notify User=root Group=root WorkingDirectory=/risen/soft/rabbitmq/mq ExecStart=/risen/soft/rabbitmq/mq/sbin/rabbitmq-server ExecStop=/risen/soft/rabbitmq/mq/sbin/rabbitmqctl stop [Install] WantedBy=multi-user.target</code></pre> <p>注:请替换成自己的rabbitmq安装目录 <strong>2.启动rabbitmq服务报错</strong></p> <pre><code class="language-shell">systemctl start rabbitmq-server systemctl status rabbitmq-server</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/79fd1a16c79cb6b442f7db1793f67064" alt="" /> 解决方法: 在rabbitmq-server的第 74 行加上erlang的环境变量</p> <pre><code class="language-shell">vi /risen/soft/rabbitmq/mq/sbin/rabbitmq-server</code></pre> <p>添加如下内容:</p> <pre><code class="language-shell"> export ERL_HOME=/risen/soft/rabbitmq/erl export PATH=$PATH:$ERL_HOME/bin</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/9731615020d884a81d348fef52b2fdd2" alt="" /> 在rabbitmq-env的第 182 行加上erlang的环境变量</p> <pre><code class="language-shell">vi /risen/soft/rabbitmq/mq/sbin/rabbitmq-server</code></pre> <p>添加如下内容:</p> <pre><code class="language-shell"> export ERL_HOME=/risen/soft/rabbitmq/erl export PATH=$PATH:$ERL_HOME/bin</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/937e2bb70ba9b23013b62509d3db0fda" alt="" /> <strong>3.再次关闭启动验证rabbitmq服务</strong> 关闭</p> <pre><code class="language-shell">systemctl stop rabbitmq-server systemctl status rabbitmq-server</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/eb47b945bfd03a046b8d2e6d732ff0cb" alt="" /> <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/425218a438421d5cca2dc4a1ca5b444e" alt="" /> 启动</p> <pre><code class="language-shell">systemctl start rabbitmq-server systemctl status rabbitmq-server</code></pre> <p><img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/ebd02ad742903d21c918dfc8a22660ba" alt="" /> <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/ca58d6a94c9ac07663866fa136b19dd7" alt="" /> 服务启动成功 <strong>4.设置开机自启</strong></p> <pre><code class="language-shell">systemctl enable rabbitmq-server</code></pre> <h2>五、验证</h2> <p><strong>1.浏览器输入:ip:15672 访问验证</strong> 输入用户名和密码,初始化的默认用户名和密码是:guest/guest <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/6e43c8bb95706fb3cb2e9ecd45fc2a2e" alt="" /> 我们发现默认用户是禁止用ip远程登录的 <strong>2.使用新建用户访问</strong> admin/risen@2021 <img src="http://60.191.64.5:16100/server/index.php?s=/api/attachment/visitFile/sign/3ec1abd40811481e40d927ba7b610219" alt="" /> 新建授权的用户可以正常访问 <strong>安装完成</strong></p>

页面列表

ITEM_HTML