阿里云Linux系统(CentOS)安装rocketmq,控制台

本例使用阿里云 CentOS系统

安装rocketmq前需要安装jdk

# 通过官网下载jdk jdk-8u211-linux-x64.tar.gz 
# 解压
$ tar -zxvf jdk-8u211-linux-x64.tar.gz

# 配置环境变量
$ vi /etc/profile

# 打开后添加
JAVA_HOME={
    
    jdk解压位置}/jdk1.8.0_221
JRE_HOME={
    
    jdk解压位置}/jdk1.8.0_221/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

# 使配置文件生效
$ source /etc/profile

# 查看是否安装成功
$ java -version

安装rocketmq前需要安装maven

# 下载:
$ wget http://mirror.bit.edu.cn/apache/maven/binaries/apache-maven-3.2.2-bin.tar.gz

# 解压:
$ tar -zxvf apache-maven-3.2.2-bin.tar.gz

# 配置环境变量:
$ vi /etc/profile
#配置maven环境变量
export MAVEN_HOME=/usr/local/apache-maven-3.2.2
export MAVEN_HOME
export PATH=$PATH:$MAVEN_HOME/bin

查看maven 是否安装成功:mvn -v 能正常看见版本号表示成功。
  • 修改maven的setting.xml文件
cd {
    
    安装路径}/apache-maven-3.2.2/conf
vi setting.xml
  • setting.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>/path/to/local/repo</localRepository>
  <mirrors>
        <mirror>
            <id>alimaven</id>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>*</mirrorOf>       
        </mirror>
  </mirrors>
</settings>

安装rocketmq

$ wget http://mirrors.hust.edu.cn/apache/rocketmq/4.7.1/rocketmq-all-4.7.1-source-release.zip
$ unzip rocketmq-all-4.3.1-source-release.zip
$ cd rocketmq-all-4.3.1
$ mvn -Prelease-all -DskipTests clean install -U

# 以上执行成功后,找到

# 启动
$ cd {
    
    安装目录}/rocketmq-all-4.7.1/distribution/target/rocketmq-4.7.1/rocketmq-4.7.1
# 启动NameServer
$ nohup sh bin/mqnamesrv &
# 启动Broker
$ nohup sh bin/mqbroker -n localhost:9876 &
# 查看是否启动成功
$ netstat -ano | grep 9876
  • 坑一:注意,默认情况下rocketmq启动需要的内存比较大,当服务器内存不够时可能会启动失败。如果在测试环境中我们可以修改参数,减少使用的内存
$ cd {
    
    安装目录}/rocketmq-all-4.7.1/distribution/target/rocketmq-4.7.1/rocketmq-4.7.1
$ vi ./bin/runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms8G -Xmx8G -Xmn4G -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
# 修改为>>
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

$ vi ./bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms8G -Xmx4G -Xmn4G"
# 修改为>>
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m"

# 关闭namesrv服务:
$ sh bin/mqshutdown namesrv
# 关闭broker服务:
$ sh bin/mqshutdown broker

# 再次尝试启动
# 启动NameServer
$ nohup sh bin/mqnamesrv &
# 启动Broker
$ nohup sh bin/mqbroker -n localhost:9876 &
# 查看是否启动成功
$ netstat -ano | grep 9876
  • 坑二:这个时候启动的rocketmq有可能在外网情况下是无法访问的,所以我们还需要修改配置文件
$ cd {
    
    安装目录}/rocketmq-all-4.7.1/distribution/target/rocketmq-4.7.1/rocketmq-4.7.1
$ echo 'brokerIP1={本机外网IP}' > conf/broker.properties
# 添加配置文件后启动
$ nohup sh bin/mqnamesrv -n ip:9876 &
$ nohup sh bin/mqbroker -n ip:9876 -c conf/broker.properties autoCreateTopicEnable=true &

# 这样启动之后外网可以正常访问了

安装rocketmq的控制台界面

  • 下载开源的rocketmq-externals项目 https://github.com/apache/rocketmq-externals
# 下载完成后,找到控制台代码源文件
$ cd {
    
    安装路径}/rocketmq-externals-master/rocketmq-console/src/main/resources
  • vi application.properties
server.address=0.0.0.0
server.port=9000    #### 在这里指定端口,任意写,如果是云服务器记得打开安全组

### SSL setting
#server.ssl.key-store=classpath:rmqcngkeystore.jks
#server.ssl.key-store-password=rocketmq
#server.ssl.keyStoreType=PKCS12
#server.ssl.keyAlias=rmqcngkey

#spring.application.index=true
spring.application.name=rocketmq-console
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
logging.level.root=INFO
logging.config=classpath:logback.xml
#if this value is empty,use env value rocketmq.config.namesrvAddr  NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876
rocketmq.config.namesrvAddr=xxx.xxx.xxx.xxx:9876         #### 这里需要填写本机的IP地址和mq的端口默认9876  
#if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true
rocketmq.config.isVIPChannel=
#rocketmq-console's data path:dashboard/monitor
rocketmq.config.dataPath=/data/rocketmq-console/data    #### 消息队列的存放位置
#set it false if you don't want use dashboard.default true
rocketmq.config.enableDashBoardCollect=true
#set the message track trace topic if you don't want use the default one
rocketmq.config.msgTrackTopicName=
rocketmq.config.ticketKey=ticket

#Must create userInfo file: ${rocketmq.config.dataPath}/users.properties if the login is required
rocketmq.config.loginRequired=false
  • 编译项目
$ cd {
    
    安装路径}/rocketmq-externals-master/rocketmq-console
$ mvn clean package -Dmaven.test.skip=true

# 执行成功的jar包在target下面,启动项目
$ nohup java -jar rocketmq-console-ng-1.0.0.jar &
  • http://ip:9000/#/ 即可访问

最后

  • 如果在这里获得过启发和思考,希望点赞支持!对于内容有不同的看法欢迎来信交流。
  • 技术栈 >> java
  • 邮箱 >> [email protected]

おすすめ

転載: blog.csdn.net/qq_39529562/article/details/108454131
おすすめ