当前位置: 首页 > article >正文

828华为云征文|docker部署kafka及ui搭建

1.介绍

1.1 什么是华为云Flexus X实例

最近华为云828 B2B企业节正在举办,Flexus X实例的促销也非常给力,大家可以去看看。特别是对算力性能有要求,同时对自建MySQL、Redis、Nginx性能有要求的小伙伴,千万不要错过。Flexus云服务器X实例是新一代面向中小企业和开发者打的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

 1.2什么是kafka

Apache Kafka 是一个分布式流处理平台,它主要用于构建实时数据管道和流式应用。Kafka 以其高吞吐量、低延迟、可扩展性以及容错能力等优点而闻名。它通过发布订阅模式实现消息队列,其中生产者(Producer)发布消息到特定主题(Topic),消费者(Consumer)订阅主题并消费消息。Kafka 的架构包括多个组件,如生产者、消费者、Broker(Kafka 集群中的服务器)、Topic(消息的分类方式)、Partition(分区)、Replica(副本)等。Kafka 还使用 Zookeeper 来管理集群的元数据和分布式协调。

Kafka 的安装与配置通常涉及下载 Kafka、解压、启动 Zookeeper 和 Kafka 服务。使用 Java 编写 Kafka 生产者和消费者程序时,可以利用 Kafka 提供的客户端 API 来实现消息的发送和接收。

Kafka 的使用案例包括消息传递、网站活动跟踪、监控数据汇总、日志聚合和流处理等。它的高吞吐量和容错性使其成为大型消息处理应用的理想选择。Kafka 的未来趋势可能包括对新数据格式的支持、多云环境的兼容性改进以及大数据处理性能的优化。

2 准备华为云Flexus应用服务器X实例

注册并登录华为云找到华为云Flexus云服务

 选择合适的服务器进行购买

 选择相应的配置并购买

购买之后找到控制台进行密码修改和远程登陆

使用远程连接工具连接云服务器

 3 搭建kafka 及ui 

 这里采用docker 快速搭建

准备相关镜像

docker pull bitnami/kafka:3.4
docker pull provectuslabs/kafka-ui:latest

开放相关端口

这里主要开放9092 9094 及8080端口

可以采用docker compose一键部署

name: kafka-ui
services:
  kafka:
    image: bitnami/kafka:3.4
    ports:
      - '9092:9092'
      - '9094:9094'
    environment:
      - KAFKA_CFG_NODE_ID=0
      - KAFKA_CFG_PROCESS_ROLES=controller,broker
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093,EXTERNAL://0.0.0.0:9094
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092,EXTERNAL://<ip>:9094
      - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,EXTERNAL:PLAINTEXT,PLAINTEXT:PLAINTEXT
      - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
      - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
      - ALLOW_PLAINTEXT_LISTENER=yes
      - "KAFKA_HEAP_OPTS=-Xmx512m -Xms512m"
    volumes:
      - kafka_conf:/bitnami/kafka/config
      - kafka_data:/bitnami/kafka/data
      - /etc/localtime:/etc/localtime:ro
  kafka-ui:
    image: provectuslabs/kafka-ui:latest
    ports:
      - "8080:8080"
    environment:
      DYNAMIC_CONFIG_ENABLED: true
      KAFKA_CLUSTERS_0_NAME: kafka-dev
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:9092
    volumes:
      - kafka_ui_app:/etc/kafkaui
      - /etc/localtime:/etc/localtime:ro
volumes:
  kafka_conf: {}
  kafka_data: {}
  kafka_ui_app: {}

 记得将文件中的<ip>换成你的公网ip

最后可以登录网页查看

 不仅可以查看集群信息还可以添加集群配置

 这里通过一段Java代码测试链接

 也是成功连接上了,并且成功发送了消息。

    @Resource
    public KafkaTemplate<String ,String> kafkaTemplate;

    @Test
    public void KafkaTest() {
        kafkaTemplate.send("hello","hello");
    }


http://www.kler.cn/a/308867.html

相关文章:

  • 硬件工程师之电子元器件—二极管(4)之热量对二极管温度特性的影响
  • Linux系统编程多线程之条件变量和信号量讲解
  • docker构建jdk11
  • 高效稳定!新加坡服务器托管方案助力企业全球化布局
  • Lucene 和 Elasticsearch 中更好的二进制量化 (BBQ)
  • android dvr黑屏
  • VRRP 笔记
  • 认知小文3《打破桎梏,编程与人生的基本法则》
  • 抓机遇,创发展︱2025 第十二届广州国际汽车零部件加工技术及汽车模具展览会,零部件国产浪潮不可阻挡
  • Pillow:Python图像处理库详解
  • 计算机网络(网络层)
  • 系统架构设计师:系统质量属性与架构评估
  • 固态硬盘:量产、开卡、ROM短接是指什么?
  • 34.贪心算法1
  • 2024最新股票系统源码 附教程
  • Track 08:AIML
  • CTFHub技能树-信息泄露-HG泄漏
  • 医学数据分析实训 项目二 数据预处理作业
  • 在 React 中掌握 useImperativeHandle(使用 TypeScript)
  • visual prompt tuning和visual instruction tuning
  • 白话:大型语言模型中的幻觉(Hallucinations)
  • react hooks--useState
  • Spring Boot基础
  • 【C#生态园】虚拟现实与增强现实:C#开发库全面评估
  • 【C++】—— list 的了解与使用
  • 一天认识一个硬件之显示器