CentOS7下RocketMQ开机自启
1. 创建 RocketMQ 服务单元文件
在 /etc/systemd/system/
目录下创建一个新的服务文件,例如 rocketmq.service
。
sudo vi /etc/systemd/system/rocketmq.service
将以下内容粘贴到文件中,并根据你的实际路径和配置进行调整:
[Unit]
Description=rocketmq-nameserver
Documentation=http://mirror.bit.edu.cn/apache/rocketmq/
After=network.target
[Service]
Type=sample
User=root
ExecStart=/home/opt/rocketmq-all-5.1.3-bin-release/bin/mqnamesrv
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=0
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
2. 创建 Broker 服务单元文件
同样地,创建一个 Broker 的服务文件,例如 rocketmq-broker.service
。
sudo vi /etc/systemd/system/rocketmq-broker.service
[Unit]
Description=rocketmq-broker
Documentation=http://mirror.bit.edu.cn/apache/rocketmq/
After=network.target
[Service]
Type=sample
User=root
ExecStart=/home/opt/rocketmq-all-5.1.3-bin-release/bin/mqbroker -n 127.0.0.1:9876 autoCreateTopicEnable=true
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=0
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
3. 重新加载 systemd 配置
创建完服务文件后,需要重新加载 systemd 配置以使新服务生效:
sudo systemctl daemon-reload
4. 启用并启动 RocketMQ 服务
使用以下命令将 RocketMQ Name Server 和 Broker 设置为开机自启:
sudo systemctl enable rocketmq.service
sudo systemctl enable rocketmq-broker.service
然后,你可以手动启动服务以测试它们是否能正常运行:
sudo systemctl start rocketmq.service
sudo systemctl start rocketmq-broker.service
5. 检查服务状态
可以使用以下命令检查服务是否正常运行:
sudo systemctl status rocketmq.service
sudo systemctl status rocketmq-broker.service
如果一切正常,你应该看到服务的状态是 "active (running)"。
journalctl -u rocketmq.service
journalctl -u rocketmq-broker.service

0 评论