strimzi实战之一:简介和准备

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码):github.com/zq2599/blog...

关于strimzi

  • strimzi是一个开源项目,已加入了CNCF,官网地址:strimzi.io/
  • 借助strimzi,既能快速部署kafka服务,又能对kafka服务进行细致的调节,还能扩展出更多的能力,典型的扩展能力如下:
  1. 监控(基于prometheus+grafana)
  2. 安全(基于TLS)
  3. 用户管理
  4. topic管理
  5. 机架感知
  6. Restful接口
  7. 消息镜像
  8. 消息来源
  9. 消息去向
  • 官方给出的组件架构图如下,可见比起单纯的kafka,strimzi的功能更加丰富,很多与消息有关的场景都能通过strimzi组件来实现

  • strmzi在GitHub已开源,地址是:github.com/strimzi/str...

为什么是strimzi?

  • 原因很简单:欣宸是一位Java程序员,又对云原生技术非常感兴趣

  • 在强者如云的CNCF项目中,以java作为开发语言的项目非常稀少,strimzi就是其中一个(项目的语言构成如下图),再加上其实用的功能,于是,strimzi在我眼中就成了一个宝藏级别的项目:它就是深入学习云原生的捷径,通过它去窥探云原生开发的奥秘

  • 令人开心的是java也能在CNCF占据一席之地,遗憾的是strimzi现在只是Sandbox阶段,希望它能越来越好吧(Sandbox阶段:是指项目还未大规模在生产环境被验证过)

  • 尽管strimzi还只是Sandbox阶段,但是对于爱学习,却又只会java的我来说,真的足够了,那么多强大的功能,再配上开放的源码,令人着迷!

关于《strimzi实战》系列

  • 欣宸喜欢写系列文章,此风格在其他作品中已显露无疑,《strimzi实战》亦是如此,通过这个系列,除了掌握strimzi的各种功能,更是要深入学习strimzi的源码,我就想知道,kubernetes环境提供的各种能力,如何用java去控制!
  • 写作过程也是学习的过程,自然不会一开始就扎入源码的汪洋中,整个系列会谨慎控制节奏,从最基本的体验出发,将strimzi的功能都玩个遍,再去研究它的源码,窥探云原生开发的奥秘

本篇概览

  • 本篇是 《strimzi实战》系列的开篇,难度自然是入门级别,主要内容如下
  1. strmzi简介,就是前面唠唠叨叨那一段...
  2. 实战环境的准备工作
  • 接下来,咱们把整个实战系列要用到的环境准备好,接下来的文章,就在这套环境上操作了

实战环境的准备工作(版本信息)

  • 首先介绍一下环境信息,列出各个版本号给您做个参考
  1. 操作系统:CentOS 7.6 (腾讯云轻应用服务器,4核8G)
  2. kubernetes:1.22 (底层容器服务是docker)
  3. prometheus:2.32.1
  4. grafana:8.3.3
  5. strimzi:0.32.0
  6. kafka:3.3.1(pod的环境变量)
  7. zookeeper:3.6.3 (进入容器,查找jar包,发现是zookeeper-3.6.3.jar)
  • 另外需要注意的是,本系列使用的strimzi版本是0.32.0,该版本对kubernetes的最低要求是1.19,请不要使用低于此版本的kubernetes

实战环境的准备工作(安装操作系统、kubernetes、pv、prometheus、grafana)

  • 先盘点有哪些是在实战前必须准备好的:
  1. kubernetes是必要的
  2. pv即外部存储,有了它,kafka和zookeeper的数据就可以永久保存起来,要是没有pv,那些数据就只能保存在pod内部,一旦pod被删除,数据就丢失了,所以pv还是挺重要的
  3. prometheus+grafana,这一对组合,一个负责采集数据,一个负责展示数据,strimzi的监控就就指望它们了
  • 所以,咱们需要将kubernetes、pv、prometheus、grafana全部装好才能顺利开启strimzi实战,为此,我专门另写了一篇文章,详细记录了这些软件的安装和验证过程,您可以作为参考:《快速搭建云原生开发环境(k8s+pv+prometheus+grafana)》
  • 至此,《strimzi实战》系列的开篇就算完成了,神秘的云原生世界,熟悉的java代码,现在,爱学习的您是否已经心动了呢?接下来,请允许欣宸原创陪伴您渡过一段愉快的时光,咱们一起揭开迷雾,掌握云原生应用开发

欢迎关注掘金:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...

相关推荐
菠萝崽.6 分钟前
springboot中测试python脚本:ProcessBuilder
java·开发语言·spring boot·python·processbuilder
CsharpDev-奶豆哥8 分钟前
在 ASP.NET Web 应用中解析 JSON 数据实例
后端·json·asp.net
哪吒编程21 分钟前
从0.031秒优化0.018秒,JEP 483为Java应用带来的启动加速黑科技
java·后端
努力的搬砖人.27 分钟前
nacos配置达梦数据库驱动源代码步骤
java·服务器·数据库·经验分享·后端
朱啸毅28 分钟前
Tomcat
java·tomcat
风象南1 小时前
SpringBoot中3种条件装配技术
java·spring boot·后端
Java小白中的菜鸟1 小时前
深入理解Java反射
java·开发语言
自由与自然1 小时前
乐观锁与悲观锁的使用场景
java·服务器·数据库
爱的叹息4 小时前
spring mvc 中 RestTemplate 全面详解及示例
java·spring·mvc
.生产的驴7 小时前
SpringBoot 接口限流Lua脚本接合Redis 服务熔断 自定义注解 接口保护
java·大数据·数据库·spring boot·redis·后端·lua