(十五)从零开始搭建k8s集群——使用KubeSphere管理平台搭建一个EFAK服务平台管理kafka集群
Posted 北溟溟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(十五)从零开始搭建k8s集群——使用KubeSphere管理平台搭建一个EFAK服务平台管理kafka集群相关的知识,希望对你有一定的参考价值。
前言
本节内容我们主要是介绍一下关于kafka集群的一个视图界面管理平台的搭建,便于kafka集群的一些基本信息的监控,能够直观的看到kafka的一些工作信息。话不多说,开始使用我们的kubesphere平台搭建k8s环境下的kafka集群管理平台EFAK。
正文
- 创建efak配置文件
-点击配置中心-配置-创建-填写efak配置基本信息 ,点击下一步
-点击添加数据
-efak的配置信息system-config.properties
###################################### # multi zookeeper & kafka cluster list # Settings prefixed with 'kafka.eagle.' will be deprecated, use 'efak.' instead ###################################### efak.zk.cluster.alias=cluster1 cluster1.zk.list=app-zk.app:2181/kafka ###################################### # zookeeper enable acl ###################################### cluster1.zk.acl.enable=false cluster1.zk.acl.schema=digest cluster1.zk.acl.username=test cluster1.zk.acl.password=test123 ###################################### # broker size online list ###################################### cluster1.efak.broker.size=20 ###################################### # zk client thread limit ###################################### kafka.zk.limit.size=16 ###################################### # EFAK webui port ###################################### efak.webui.port=8048 ###################################### # EFAK enable distributed ###################################### efak.distributed.enable=false efak.cluster.mode.status=master efak.worknode.master.host=localhost efak.worknode.port=8085 ###################################### # kafka jmx acl and ssl authenticate ###################################### cluster1.efak.jmx.acl=false cluster1.efak.jmx.user=keadmin cluster1.efak.jmx.password=keadmin123 cluster1.efak.jmx.ssl=false cluster1.efak.jmx.truststore.location=/data/ssl/certificates/kafka.truststore cluster1.efak.jmx.truststore.password=ke123456 ###################################### # kafka offset storage ###################################### cluster1.efak.offset.storage=kafka cluster2.efak.offset.storage=zk ###################################### # kafka jmx uri ###################################### cluster1.efak.jmx.uri=service:jmx:rmi:///jndi/rmi://%s/jmxrmi ###################################### # kafka metrics, 15 days by default ###################################### efak.metrics.charts=true efak.metrics.retain=15 ###################################### # kafka sql topic records max ###################################### efak.sql.topic.records.max=5000 efak.sql.topic.preview.records.max=10 ###################################### # delete kafka topic token ###################################### efak.topic.token=keadmin ###################################### # kafka sasl authenticate ###################################### cluster1.efak.sasl.enable=false cluster1.efak.sasl.protocol=SASL_PLAINTEXT cluster1.efak.sasl.mechanism=SCRAM-SHA-256 cluster1.efak.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle"; cluster1.efak.sasl.client.id= cluster1.efak.blacklist.topics= cluster1.efak.sasl.cgroup.enable=false cluster1.efak.sasl.cgroup.topics= cluster2.efak.sasl.enable=false cluster2.efak.sasl.protocol=SASL_PLAINTEXT cluster2.efak.sasl.mechanism=PLAIN cluster2.efak.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle"; cluster2.efak.sasl.client.id= cluster2.efak.blacklist.topics= cluster2.efak.sasl.cgroup.enable=false cluster2.efak.sasl.cgroup.topics= ###################################### # kafka ssl authenticate ###################################### cluster3.efak.ssl.enable=false cluster3.efak.ssl.protocol=SSL cluster3.efak.ssl.truststore.location= cluster3.efak.ssl.truststore.password= cluster3.efak.ssl.keystore.location= cluster3.efak.ssl.keystore.password= cluster3.efak.ssl.key.password= cluster3.efak.ssl.endpoint.identification.algorithm=https cluster3.efak.blacklist.topics= cluster3.efak.ssl.cgroup.enable=false cluster3.efak.ssl.cgroup.topics= ###################################### # kafka sqlite jdbc driver address ###################################### efak.driver=org.sqlite.JDBC efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db efak.username=root efak.password=www.kafka-eagle.org ###################################### # kafka mysql jdbc driver address ###################################### #efak.driver=com.mysql.cj.jdbc.Driver #efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull #efak.username=root #efak.password=123456
ps:需要修改的几处配置说明,其它配置的修改根据实际情况参考官方说明修改,一般选择默认就好
#1.此处配置zk的集群,可配置多个,这里以一个为例 efak.zk.cluster.alias=cluster1 #2.此处配置zookeeper集群的地址,填写zookeeper客户端访问的集群地址 cluster1.zk.list=app-zk.app:2181/kafka #3.关于数据库的连接,我们为了简单演示直接选择sqlite数据库,将此部分注解打开 #如果需要使用mysql数据库,可根据实际情况填写mysql的数据库配置,将sqlite数据库的注解关闭 ###################################### # kafka sqlite jdbc driver address ###################################### efak.driver=org.sqlite.JDBC efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db efak.username=root efak.password=www.kafka-eagle.org ###################################### # kafka mysql jdbc driver address ###################################### #efak.driver=com.mysql.cj.jdbc.Driver #efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull #efak.username=root #efak.password=123456
-填写efak配置信息,点击对号
-点击创建,完成efak配置文件的创建
- 部署一个无状态的efak服务
-点击应用负载-服务-创建-无状态服务-填写基本信息-点击下一步
-点击添加容器镜像 ,填写ydockerp/efak:2.1.0镜像,加载efak镜像,点击使用默认端口,勾选同步主机时区,点击对号,点击下一步
-点击挂载配置文件或密钥,关联efak配置文件,填写基本配置信息
-勾选选择特定的键和路径,填写配置文件映射,点对号添加,点击下一步
-勾选外网访问,NodePort方式访问,点击创建
-完成efak服务创建
- 验证
-查看服务日志
-通过外网端口访问该服务,端口30537
-输入用户名(admin)和密码(123456),登录efak
-监控页面
结语
至此,关于kafka的管理工具efak搭建到此就结束了,创作不易,欢迎一键三连,关注、收藏加点赞。我们下期见。。。
以上是关于(十五)从零开始搭建k8s集群——使用KubeSphere管理平台搭建一个EFAK服务平台管理kafka集群的主要内容,如果未能解决你的问题,请参考以下文章
从零开始搭建k8s集群——使用KubeSphere管理平台搭建链路追踪组件zipkin服务端
从零开始搭建k8s集群——使用KubeSphere管理平台搭建一个高可用的zookeeper集群服务
(四)从零开始搭建k8s集群—— 使用KubeKey一键式搭建高可用k8s集群