k8s 使用普通用户部署kafka2.4.0集群思路整理

技术文章 2年前 (2020) 完美者
1,191 0

标签:contain   docke   http   alt   接管   进程   mount   链接   访问   

前言:开发人员需要使用kafka集群,且要求需要用普通用户启动,整理了一下部署思路,其他中间件部署也可参考此思路来部署。
前提条件:

  1. zookeeper 集群
    kafka启动需要连接,因为kafka集群和zookeeper部署在同一租户下,我这边部署的zk集群地址为zk-0:2181,zk-1:2181,zk-2:2181, 如果kafka和zookeeper不在一个租户下,跨租户访问,需要根据实际地址访问。
  2. openjdk version "1.8.0_242" kafka2.4.0 基础镜像Alpine Linux 3.11 这个是我kafka的镜像环境
    k8s 使用普通用户部署kafka2.4.0集群思路整理
  3. gosu命令 该命令需要安装到kafka镜像中,gosu命令用法和安装,可以找相关文章了解一下 ,地址链接:https://github.com/tianon/gosu
    用法:gosu kafka bash -c "cd /data/; sh run.sh"
  4. dump-init 该命令也需要安装到kafka镜像中,用于启动kafka,主要作用是向子进程代理发送信号和接管子进程
    参考链接:https://www.infoq.cn/article/2016/01/dumb-init-Docker
  5. kafka 启动用户的创建
  6. 编排文件 initContainers 镜像的使用,主要作用是修改kafka的数据和日志目录的权限,同一个pod的容器共享存储和网络。
  7. kafka的配置文件使用configmap管理,volumeMounts: subPath 形式挂载
  8. dockerfile 启动命令 CMD ["dumb-init","sh","run.sh"]
  9. run.sh 是kafka的启动命令

k8s 使用普通用户部署kafka2.4.0集群思路整理

标签:contain   docke   http   alt   接管   进程   mount   链接   访问   

原文地址:https://blog.51cto.com/guokang/2519546

版权声明:完美者 发表于 2020-08-13 12:31:17。
转载请注明:k8s 使用普通用户部署kafka2.4.0集群思路整理 | 完美导航

暂无评论

暂无评论...