Kafka

使用Spring Boot开发Kafka的生产者和消费者,并理解Kafka Consumer Rebalance

2019-07-13
Kafka, Spring Boot

前面我们在k8s上部署了一个kafka集群,同时也部署了kafka-manager对kafka集群进行监控管理。 本篇将先基于spring boot框架编写一个简单的kafka的生产者和消费者的程序,并在此基础上理解kafka的相关组件。

1.使用Spring Boot开发Kafka的Producer和Consumer #

https://start.spring.io/创建一个名称为kafka-demo的spring boot工程,这里基于的是Spring Boot 2.1.6,依赖中选择添加Spring for Apache Kafka。项目创建完毕后,首先需要在spring boot的配置文件application.yml通过配置spring.kafka.bootstrap-servers指定kafka代理地址。

...

Kafka集群管理和监控方案之Kafka Manager

2019-07-12
Kafka

1.Kafka监控方案简介 #

前面我们已经在k8s上使用incubator/kafka chart部署了Kafka。本篇来聊聊kafka的管理和监控。 关于kafka的监控方案有很多:

  • Confluent Control Center是Confluent Kafka提供的监控和管理方案,但Confluent Control Center只能在CP Kafka收费的企业版中使用。
  • Kafka Offset Monitor是开源的监控方案,如果监控单个Kafka集群可以选择Kafka Offset Monitor,但从Kafka Offset Monitor的源码来看已经很久没有维护了
  • Prometheus + kafka-prometheus-jmx-exporter的监控方案,这个也是incubator/kafka中支持的监控方案,默认使用helm部署kafka是没有开启,可通过prometheus.kafka.enabled开启,这里先不开启,准备在之后的内容中介绍Prometheus + kafka-prometheus-jmx-exporter
  • Kafka Manager可以用来管理和监控多个Kafka集群,本篇将介绍Kafka Manager。

2.使用Helm部署Kafka Manager #

Helm的官方repo中已经提供了Kafka Manager的Chart

...

使用helm在k8s上部署kafka

2019-07-08
Kafka

1.配置helm chart repo #

kafka的helm chart还在孵化当中,使用前需要添加incubator的repo:helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator

肉身在国内需要设置azure提供的镜像库地址:

1helm repo add stable http://mirror.azure.cn/kubernetes/charts
2helm repo add incubator http://mirror.azure.cn/kubernetes/charts-incubator
3
4helm repo list
5NAME     	URL                                               
6stable   	http://mirror.azure.cn/kubernetes/charts          
7local    	http://127.0.0.1:8879/charts                      
8incubator	http://mirror.azure.cn/kubernetes/charts-incubator

2.创建Kafka和Zookeeper的Local PV #

2.1 创建Kafka的Local PV #

这里的部署环境是本地的测试环境,存储选择Local Persistence Volumes。首先,在k8s集群上创建本地存储的StorageClass local-storage.yaml

...

© 2024 青蛙小白