Rocketmq、Rabbitmq、Kafka、Mongo、Elasticsearch、Logstash、Kibana、Nacos、Skywalking、Seata、Spark、Zookeeper安装

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: Rocketmq、Rabbitmq、Kafka、Mongo、Elasticsearch、Logstash、Kibana、Nacos、Skywalking、Seata、Spark、Zookeeper安装

文章目录


前言

已经安装好了宝塔面板、并且可以在Docker栏目,选择docker安装,会把docker和docker-compose都安装好了


一、docker-compose.yml配置

在任意一个目录下创建并编辑

vim docker-compose.yml

配置粘贴

version: '3.8'
services:
  rabbitmq:
    image: rabbitmq:3.7.25-management
    container_name: rabbitmq
    volumes:
      - /mydata/rabbitmq/data:/var/lib/rabbitmq
      - /mydata/rabbitmq/log:/var/log/rabbitmq
    ports:
      - 5672:5672
      - 15672:15672

编辑好后,直接执行以下命令:

docker-compose -f  docker-composer-env.yml up  -d

安装好后,这里就会出现如下页面


二、安全组规则添加端口



三、通过浏览器访问rabbitmq的管控页面


校验是否正常

四、提供其他项目依赖

替换docker-composer-env.yml文件内容

version: '3.8'
services:
  nacos:
    restart: always  
    image: nacos/nacos-server:1.4.2
    container_name: nacos
    environment:
      - MODE=standalone
    volumes:
      - /mydata/nacos/logs/:/home/nacos/logs
    ports:
      - 8848:8848
  spark-master:
    restart: always
    image: bitnami/spark:2.4.3
    container_name: spark-master
    user: root
    environment:
      - "SPARK_MODE=master"
      - "SPARK_RPC_AUTHENTICATION_ENABLED=no"
      - "SPARK_RPC_ENCRYPTION_ENABLED=no"
      - "SPARK_LOCAL_STORAGE_ENCRYPTION_ENABLED=no"
      - "SPARK_SSL_ENABLED=no"
    ports:
      - 8180:8080
      - 7077:7077
    volumes:
      - /mydata/python:/python
  spark-worker1:
    restart: always
    image: bitnami/spark:2.4.3
    container_name: spark-worker1
    user: root
    environment:
      - "SPARK_MODE=worker"
      - "SPARK_MASTER_URL=spark://master:7077"
      - "SPARK_WORKER_MEMORY=1G"
      - "SPARK_WORKER_CORES=1"
      - "SPARK_RPC_AUTHENTICATION_ENABLED=no"
      - "SPARK_RPC_ENCRYPTION_ENABLED=no"
      - "SPARK_LOCAL_STORAGE_ENCRYPTION_ENABLED=no"
      - "SPARK_SSL_ENABLED=no"
  spark-worker2:
    restart: always  
    image: bitnami/spark:2.4.3
    container_name: spark-worker2
    user: root
    environment:
      - "SPARK_MODE=worker"
      - "SPARK_MASTER_URL=spark://master:7077"
      - "SPARK_WORKER_MEMORY=1G"
      - "SPARK_WORKER_CORES=1"
      - "SPARK_RPC_AUTHENTICATION_ENABLED=no"
      - "SPARK_RPC_ENCRYPTION_ENABLED=no"
      - "SPARK_LOCAL_STORAGE_ENCRYPTION_ENABLED=no"
  seata-server:
    container_name: seata-server
    restart: always
    image: seataio/seata-server:1.4.0
    environment:
     - "SEATA_IP=106.14.132.94"
     - "SEATA_CONFIG_NAME=file:/root/seata-config/registry"
    volumes:
      - /mydata/seataServer/conf:/root/seata-config
      - /mydata/seataServer/logs:/root/logs
    ports:
      - 8091:8091
  oap:
    image: apache/skywalking-oap-server:8.1.0-es7
    container_name: oap
    depends_on:
      - elasticsearch
    links:
      - elasticsearch
    restart: always
    ports:
      - 11800:11800
      - 12800:12800
    environment:
      - "SW_STORAGE=elasticsearch7"
      - "SW_STORAGE_ES_CLUSTER_NODES=elasticsearch:9200"
      - "TZ=Asia/Shanghai"
  ui:
    image: apache/skywalking-ui:8.1.0
    container_name: ui
    depends_on:
      - oap
    links:
      - oap
    restart: always
    ports:
      - 8280:8080
    environment:
      - "SW_OAP_ADDRESS=oap:12800"
      - "TZ=Asia/Shanghai"
  kafka:
    restart: always
    image: wurstmeister/kafka
    container_name: kafka
    volumes:
      - /etc/localtime:/etc/localtime
    ports:
      - 9092:9092
    environment:
    - "KAFKA_ADVERTISED_HOST_NAME=106.14.132.94"
    - "KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181"
    - "KAFKA_ADVERTISED_PORT=9092"
    - "KAFKA_LOG_RETENTION_HOURS=120"
    - "KAFKA_MESSAGE_MAX_BYTES=10000000"
    - "KAFKA_REPLICA_FETCH_MAX_BYTES=10000000"
    - "KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS=60000"
    - "KAFKA_NUM_PARTITIONS=3"
    - "KAFKA_DELETE_RETENTION_MS=1000"
  kafka-manager:
    restart: always  
    image: sheepkiller/kafka-manager
    container_name: kafka-manager
    environment:
      ZK_HOSTS: 106.14.132.94
    ports:
      - 9009:9000
  rabbitmq:
    restart: always  
    image: rabbitmq:3.7.25-management
    container_name: rabbitmq
    volumes:
      - /mydata/rabbitmq/data:/var/lib/rabbitmq
      - /mydata/rabbitmq/log:/var/log/rabbitmq
    ports:
      - 5672:5672
      - 15672:15672   
  elasticsearch:
    restart: always  
    image: elasticsearch:7.9.0
    container_name: elasticsearch
    environment:
      - "cluster.name=elasticsearch"
      - "discovery.type=single-node"
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    volumes:
      - /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins
      - /mydata/elasticsearch/data:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
      - 9300:9300
  kibana:
    restart: always  
    image: kibana:6.4.0
    container_name: kibana
    links:
      - elasticsearch:es
    depends_on:
      - elasticsearch
    environment:
      - "elasticsearch.hosts=http://es:9200"
    ports:
      - 5601:5601
  logstash:
    restart: always  
    image: logstash:6.4.0
    container_name: logstash
    volumes:
      - /mydata/logstash/filebeat-filter-console.conf:/usr/share/logstash/pipeline/filebeat-filter-console.conf
      - /mydata/logstash/filebeat-filter-es.conf:/usr/share/logstash/pipeline/filebeat-filter-es.conf
      - /mydata/logstash/filebeat-filter-print.conf:/usr/share/logstash/pipeline/filebeat-filter-print.conf
    depends_on:
      - elasticsearch
    links:
      - elasticsearch:es
    ports:
      - 4560:4560
  mongo:
    restart: always  
    image: mongo:3.2
    container_name: mongo
    volumes:
      - /mydata/mongo/db:/data/db
    ports:
      - 27017:27017
  zookeeper:
    restart: always  
    image: zookeeper:3.5
    container_name: zookeeper
    ports:
      - 2181:2181 
    volumes:
      - /mydata/zookeeper/data:/data
      - /mydata/zookeeper/conf:/conf
  rocketmq:
    image: rocketmqinc/rocketmq
    container_name: rocketmq
    restart: always    
    ports:
      - 9876:9876
    volumes:
      - /mydata/rocketmq/logs:/home/rocketmq/logs
      - /mydata/rocketmq/store:/home/rocketmq/store
    command: sh mqnamesrv
  broker:
    image: rocketmqinc/rocketmq
    container_name: rmqbroker
    restart: always    
    ports:
      - 10909:10909
      - 10911:10911
      - 10912:10912
    volumes:
      - /mydata/rocketmq/logs:/home/rocketmq/logs
      - /mydata/rocketmq/store:/home/rocketmq/store
      - /mydata/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
    command: sh mqbroker -n namesrv:9876 -c ../conf/broker.conf
    depends_on:
      - rocketmq
    environment:
      - JAVA_HOME=/usr/lib/jvm/jre
  console:
    image: styletang/rocketmq-console-ng
    container_name: rocketmq-console-ng
    restart: always    
    ports:
      - 8076:8080
    depends_on:
      - rocketmq
    environment:
      - JAVA_OPTS= -Dlogging.level.root=info -Drocketmq.namesrv.addr=rocketmq:9876 
      - Dcom.rocketmq.sendMessageWithVIPChannel=false

启动成功之后如下图示例:


总结

提示:宝塔面板安装docker/docker-compose,一条命令搞定rabbitmq的安装与配置。

相关文章
|
3月前
|
消息中间件 Java Kafka
消息传递新纪元:探索RabbitMQ、RocketMQ和Kafka的魅力所在
【8月更文挑战第29天】这段内容介绍了在分布式系统中起到异步通信与解耦作用的消息队列,并详细探讨了三种流行的消息队列产品:RabbitMQ、RocketMQ 和 Kafka。其中,RabbitMQ 是一个基于 AMQP 协议的开源消息队列系统,支持多种消息模型;RocketMQ 则是由阿里巴巴开源的具备高性能、高可用性和高可靠性的分布式消息队列,支持事务消息等多种特性;而 Kafka 作为一个由 LinkedIn 开源的分布式流处理平台,以高吞吐量和良好的可扩展性著称。此外,还提供了使用这三种消息队列发送和接收消息的代码示例。总之,这三种消息队列各有优势,适用于不同的业务场景。
65 3
|
10天前
|
消息中间件 存储 监控
ActiveMQ、RocketMQ、RabbitMQ、Kafka 的区别
【10月更文挑战第24天】ActiveMQ、RocketMQ、RabbitMQ 和 Kafka 都有各自的特点和优势,在不同的应用场景中发挥着重要作用。在选择消息队列时,需要根据具体的需求、性能要求、扩展性要求等因素进行综合考虑,选择最适合的消息队列技术。同时,随着技术的不断发展和演进,这些消息队列也在不断地更新和完善,以适应不断变化的应用需求。
55 1
|
27天前
|
消息中间件 存储 监控
说说如何解决RocketMq消息积压?为什么Kafka性能比RocketMq高?它们区别是什么?
【10月更文挑战第8天】在分布式系统中,消息队列扮演着至关重要的角色,它不仅能够解耦系统组件,还能提供异步处理、流量削峰和消息持久化等功能。在众多的消息队列产品中,RocketMQ和Kafka无疑是其中的佼佼者。本文将围绕如何解决RocketMQ消息积压、为什么Kafka性能比RocketMQ高以及它们之间的区别进行深入探讨。
63 1
|
3月前
|
安全 Nacos 数据安全/隐私保护
升级指南:从Nacos 1.3.0 到 2.3.0,并兼容 Seata 的鉴权配置
本文详细介绍了如何在微服务环境下从 Nacos 1.3.0 升级到 2.3.0,并确保 Seata 各版本的兼容性。作者小米分享了升级过程中的关键步骤,包括备份配置、更新鉴权信息及验证测试等,并解答了常见问题。通过这些步骤,可以帮助读者顺利完成升级并提高系统的安全性与一致性。
115 8
升级指南:从Nacos 1.3.0 到 2.3.0,并兼容 Seata 的鉴权配置
|
3月前
|
消息中间件 存储 监控
RabbitMQ、Kafka对比(超详细),Kafka、RabbitMQ、RocketMQ的区别
RabbitMQ、Kafka对比(超详细),Kafka、RabbitMQ、RocketMQ的区别,设计目标、适用场景、吞吐量、消息存储和持久化、可靠性、集群负载均衡
RabbitMQ、Kafka对比(超详细),Kafka、RabbitMQ、RocketMQ的区别
|
3月前
|
消息中间件 Kafka Apache
kafka vs rocketmq: 不要只顾着吞吐量而忘了延迟这个指标
这篇文章讨论了Apache RocketMQ和Kafka的对比,强调RocketMQ在低延迟、消息重试与追踪、海量Topic、多租户等方面进行了优化,特别是在小包非批量和大量分区场景下的吞吐量超越Kafka,适合电商和金融领域等高并发、高可靠和高可用场景。
86 0
|
3月前
|
Java Nacos Docker
"揭秘!Docker部署Seata遇上Nacos,注册成功却报错?这些坑你不得不防!一网打尽解决秘籍,让你的分布式事务稳如老狗!"
【8月更文挑战第15天】在微服务架构中,Nacos搭配Seata确保数据一致性时,Docker部署Seata后可能出现客户端连接错误,如“can not connect to services-server”。此问题多由网络配置不当、配置文件错误或版本不兼容引起。解决策略包括:调整Docker网络设置确保可达性;检查并修正`file.conf`和`registry.conf`中的Nacos地址和端口;验证Seata与Nacos版本兼容性;修改配置后重启服务;参考官方文档和最佳实践进行配置。通过这些步骤,能有效排除故障,保障服务稳定运行。
231 0
|
23天前
|
消息中间件 存储 运维
为什么说Kafka还不是完美的实时数据通道
【10月更文挑战第19天】Kafka 虽然作为数据通道被广泛应用,但在实时性、数据一致性、性能及管理方面存在局限。数据延迟受消息堆积和分区再平衡影响;数据一致性难以达到恰好一次;性能瓶颈在于网络和磁盘I/O;管理复杂性涉及集群配置与版本升级。
|
1月前
|
消息中间件 Java Kafka
Flink-04 Flink Java 3分钟上手 FlinkKafkaConsumer消费Kafka数据 进行计算SingleOutputStreamOperatorDataStreamSource
Flink-04 Flink Java 3分钟上手 FlinkKafkaConsumer消费Kafka数据 进行计算SingleOutputStreamOperatorDataStreamSource
42 1
|
3月前
|
消息中间件 Java Kafka
Kafka不重复消费的终极秘籍!解锁幂等性、偏移量、去重神器,让你的数据流稳如老狗,告别数据混乱时代!
【8月更文挑战第24天】Apache Kafka作为一款领先的分布式流处理平台,凭借其卓越的高吞吐量与低延迟特性,在大数据处理领域中占据重要地位。然而,在利用Kafka进行数据处理时,如何有效避免重复消费成为众多开发者关注的焦点。本文深入探讨了Kafka中可能出现重复消费的原因,并提出了四种实用的解决方案:利用消息偏移量手动控制消费进度;启用幂等性生产者确保消息不被重复发送;在消费者端实施去重机制;以及借助Kafka的事务支持实现精确的一次性处理。通过这些方法,开发者可根据不同的应用场景灵活选择最适合的策略,从而保障数据处理的准确性和一致性。
233 9