java进阶(8)之阿里云 安装单机版rocketmq并躺坑

PS: 本人是阿里云服务器裸机实践

安装准备

安装jdk

下载

选择合适的jdk版本进行下载,我是选择的清华大学开源软件镜像站,oracle官网还得账号登录才能下载,比较麻烦,我选择的是jdk1.8:

wget https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/8/jdk/x64/linux/OpenJDK8U-jdk_x64_linux_openj9_linuxXL_8u242b08_openj9-0.18.1.tar.gz

解压

使用tar命令解压到你选择的目录.

配置环境变量

使用vim /etc/profile命令打开此文件,并添加jdk环境变量到文件末尾(需要root权限)

#java
export JAVA_HOME=yourPath/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

安装RocketMQ

安装RocketMQ server

下载

wget https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.7.0/rocketmq-all-4.7.0-bin-release.zip

使用zip命令解压到指定目录

启动服务

cdrocketmq-all-4.7.0-bin-release

nohup sh bin/mqnamesrv 公网IP:9876 &

这里必须用公网IP,不能用localhost或者127.0.0.1这种,否则会报超时异常,端口可自行更改,我这里选择默认的端口

验证服务是否启动正常

cd到最外层目录,然后:

tail -f logs/rocketmqlogs/namesrv.log

看到boot success即表示启动成功

启动代理

conf/broker.conf 中加入配置:

brokerIP1=你的公网IP

然后执行启动命令:

nohup sh bin/mqbroker -n 你的公网IP:9876 -c conf/broker.conf autoCreateTopicEnable=true &

这里的IP和端口,要与启动服务中的IP和端口,一一对应,并且,脚本中的参数比较带上。

验证代理是否正常启动

cd到最外层目录,然后:

tail -f logs/rocketmqlogs/broker.log

如果看到register broker[0]to name server IP OK表示启动成功

安装RocketMQ 控制台

  • 安装git
sudo yum install -y git
  • 克隆github上的rocketmq-console源码:
git clone https://github.com/apache/rocketmq-externals.git
  • cd到rocketmq-console目录中的resources,编辑application.properties,并修改配置:
rocketmq.config.namesrvAddr=公网IP:9876
  • 安装mvn命令
wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
  • rocketmq-console项目根目录编译项目
mvn clean package
  • 执行安装脚本
java -jar target/rocketmq-console-ng-1.0.1.jar &

配置端口

在阿里云控制台,将987610911, 10909, 8080四个端口都配置能用外网访问。

控制台默认端口是8080,你也可以在application.properties中修改,执行安装脚本后,就可以在网页端打开RocketMQ的控制台页面了。

遇到的异常

MQClientException: No route info of this topic:RemotingTooMuchRequestException: sendDefaultImpl call timeout是遇到的问题最多的了,都是因为配置的原因,按照我上面的配置一步步来,就不会有问题了!

你可能感兴趣的:(java进阶)