首页 > 其他分享 >Strimzi-Kafka-Operator小记~1

Strimzi-Kafka-Operator小记~1

时间:2023-02-28 23:48:44浏览次数:36  
标签:tls name Strimzi kafka Operator Kafka type

Strimzi-Kafka-Operator

 

Kafka管理Operator-https://github.com/strimzi/strimzi-kafka-operator

部署安装Operator https://strimzi.io/downloads/

 

部署完成后生成一堆的CRD和一个Controller,基本Operator都是一样套路

此时strimzi-cluster-operator已具备了对以下CRD的操作监管

 

接下来就是部署Kafka集群了,当前是只能在内部访问的例子

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
  name: my-cluster
spec:
  kafka:
    version: 3.4.0
    replicas: 2
    listeners:
      - name: plain
        port: 9092
        type: internal
        tls: false
      - name: tls
        port: 9093
        type: internal
        tls: true
    config:
      offsets.topic.replication.factor: 1
      transaction.state.log.replication.factor: 1
      transaction.state.log.min.isr: 1
      default.replication.factor: 1
      min.insync.replicas: 1
      inter.broker.protocol.version: "3.4"
    storage:
      type: jbod
      volumes:
      - id: 0
        type: persistent-claim
        size: 10Gi
        class: disk
        deleteClaim: true
  zookeeper:
    replicas: 1
    storage:
      type: persistent-claim
      size: 10Gi
      class: disk
      deleteClaim: true
  entityOperator:
    topicOperator: {}
    userOperator: {}

创建完之后等一会儿,将会看到zk以及若干的容器、服务被创建

两个kafka分片

相关服务

 如果需要通过Nodeport访问,listeners修改为以下配置,增加external相关配置

    listeners:
      - name: plain
        port: 9092
        type: internal
        tls: false
      - name: tls
        port: 9093
        type: internal
        tls: true
      - name: external
        port: 9094
        type: nodeport
        tls: false
        configuration:
          bootstrap:
            nodePort: 32094

部署后看到相关服务变更

and

这里看到已经生成了对应的Nodeport类型的服务

查看创建的Kafka对象状态,可以看到具体的状态信息

 这里可以看到地址列表已经是NodeportIP地址了

-------

切换到Kafka容器内部看下,cat custom-config/server.config

通过advertised.listeners配置对外开放地址端口,这里Nodeport类型对外开放默认地址就是Nodeip

 

./bin/kafka-run-class.sh org.apache.zookeeper.ZooKeeperMainWithTlsSupportForKafka -server localhost:12181

查看zk broker监听,可以看到external

 Nodeport访问IP是通过Operator+kafka自身的advertised.listeners实现的,与前文中redis集群逻辑不同,已经从自身解决了podIP外部不可访问的问题

 

由于要有状态,所以需要先准备云盘,设置默认存储
kubectl patch storageclass alicloud-disk-ssd -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

其他好文

http://www.javajun.net/posts/55588/

https://blog.csdn.net/weixin_39766667/article/details/128177436

标签:tls,name,Strimzi,kafka,Operator,Kafka,type
From: https://www.cnblogs.com/it-worker365/p/17165378.html

相关文章

  • Kafka 消费者客户端
    消费者客户端开发在了解了消费者与消费组之间的概念之后,我们就可以着手进行消费者客户端的开发了。在Kafka的历史中,消费者客户端同生产者客户端一样也经历了两个大版本:......
  • librdkafka线程CPU百分百问题分析
    现象只有一个rdk:broker-1线程的cpu满,其它的都正常,另一个rdk:broker-1线程的PID为18。观察正常情况下两个rdk:broker-1线程的PID分别为16和17,问题发生......
  • Kafka简单介绍和安装
    1.什么是KafkaKafka传统定义:Kafka是一个分布式的基于发布/订阅模式的消息队列(MessageQueue),主要应用于大数据实时处理领域。**Kafka最新定义**:Kafka是一个开源的分布......
  • Kafka 消费组
    消费者与消费组与生产者对应的是消费者,应用程序可以通过KafkaConsumer来订阅主题,并从订阅的主题中拉取消息。不过在使用KafkaConsumer消费消息之前需要先了解消费者和......
  • Operator
    Kubernetes的Controller-manager集成了Kubernetes内置所有资源对象的控制器,而创建的CRD编写一个控制器的过程就是实现一个Operator。Operator是CoreOS开发的、特定的应用......
  • error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already def
    环境WIN10+VS2010。之前写代码时,需要调用windowsAPI,引用了#include<windows.h>。接下来为了返回CString,引用了#include<afxwin.h>。第一次报错:error :  Building ......
  • k8s operator添加webhook
    k8soperator添加webhookOperator中的webhook,其作用与过滤器类似,外部对CRD资源的变更,在Controller处理之前都会交给webhook提前处理,kubernetes官方博客明确指出webhoo......
  • 部署logstash收集daemonset filebeat发过去的kafka日志
    实现:部署如下图红框位置logstash架构:主机:10.0.7.56部署logstashyum-yinstalljava-1.8.0-openjdkyum-yinstallhttps://mirror.tuna.tsinghua.edu.cn/elasticstack/7......
  • k8s operator开发与使用
    k8soperator开发与使用本篇文章用于记录k8soperator的开发,此处以一个简单的demo来记录operator的开发过程及相关要点;本文中使用kubebuilder工具来生成相关代码一、......
  • Centos7 Kafka+zookeeper SASL认证实践
    一、概述上回已经完成kafka+zookeeper的基础功能的实现,但是因为默认不认证存在很大的安全风险,这次完成SASL_PLAINTEXT的认证类型实践。二、安全配置2.1zookeeperSASL配......