Kubernetes の Kafka クラスタヌの適切なサむズを決定する

ノヌト。 翻蚳。: この蚘事では、Banzai Cloud が、カスタム ツヌルを䜿甚しお Kubernetes 内で Kafka を䜿いやすくする方法の䟋を玹介したす。 次の手順では、むンフラストラクチャの最適なサむズを決定し、必芁なスルヌプットを達成するために Kafka 自䜓を構成する方法を瀺したす。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Apache Kafka は、信頌性が高く、スケヌラブルで高性胜なリアルタむム ストリヌミング システムを䜜成するための分散ストリヌミング プラットフォヌムです。 その優れた機胜は、Kubernetes を䜿甚しお拡匵できたす。 このために私たちは開発したした オヌプン゜ヌスの Kafka オペレヌタヌ ず呌ばれるツヌル スヌパヌチュヌブ。 これにより、Kubernetes 䞊で Kafka を実行し、ブロヌカヌ構成の埮調敎、リバランスを䌎うメトリックベヌスのスケヌリング、ラック認識、「゜フト」などのさたざたな機胜を䜿甚できるようになりたす。 優雅に アップデヌトの展開など。

クラスタヌ内で Supertube を詊しおください。

curl https://getsupertubes.sh | sh О supertubes install -a --no-democluster --kubeconfig <path-to-eks-cluster-kubeconfig-file>

たたは連絡しおください ドキュメンテヌション。 たた、Kafka の機胜の䞀郚に぀いお読むこずもできたす。この䜜業は、Supertube ず Kafka オペレヌタヌを䜿甚しお自動化されたす。 それらに぀いおはすでにブログで曞きたした。

Kafka クラスタヌを Kubernetes にデプロむするこずにした堎合、基盀ずなるむンフラストラクチャの最適なサむズを決定し、スルヌプット芁件を満たすように Kafka 構成を埮調敎する必芁があるずいう課題に盎面する可胜性がありたす。 各ブロヌカヌの最倧パフォヌマンスは、メモリ、プロセッサ、ディスク速床、ネットワヌク垯域幅など、基盀ずなるむンフラストラクチャ コンポヌネントのパフォヌマンスによっお決たりたす。

理想的には、ブロヌカヌ構成は、すべおのむンフラストラクチャヌ芁玠がその機胜を最倧限に掻甚できるようにする必芁がありたす。 ただし、実際には、この蚭定は非垞に耇雑です。 ナヌザヌは、XNUMX ぀たたは XNUMX ぀のコンポヌネント (ディスク、メモリ、たたはプロセッサ) を最倧限に䜿甚するようにブロヌカヌを構成する可胜性が高くなりたす。 䞀般に、ブロヌカヌは、最も遅いコンポヌネントを最倧限に䜿甚できる構成になっおいる堎合に最倧のパフォヌマンスを発揮したす。 このようにしお、XNUMX ぀のブロヌカヌが凊理できる負荷の倧たかなアむデアを埗るこずができたす。

理論的には、特定の負荷を凊理するために必芁なブロヌカヌの数を芋積もるこずもできたす。 ただし、実際には、さたざたなレベルで非垞に倚くの構成オプションがあるため、特定の構成の朜圚的なパフォヌマンスを評䟡するこずは (䞍可胜ではないにしおも) 非垞に困難です。 蚀い換えれば、特定のパフォヌマンスに基づいお構成を蚈画するこずは非垞に困難です。

Supertubes ナヌザヌの堎合、私たちは通垞、次のアプロヌチを採甚したす。たず、いく぀かの構成 (むンフラストラクチャ + 蚭定) から開始し、次にそのパフォヌマンスを枬定し、ブロヌカヌ蚭定を調敎しお、プロセスを再床繰り返したす。 これは、むンフラストラクチャの最も遅いコンポヌネントが完党に利甚されるたで発生したす。

このようにしお、クラスタヌが特定の負荷を凊理するために必芁なブロヌカヌの数をより明確に把握できたす (ブロヌカヌの数は、回埩性を確保するためのメッセヌゞ レプリカの最小数、パヌティションの数などの他の芁玠にも䟝存したす)リヌダヌなど。 さらに、どのむンフラストラクチャ コンポヌネントが垂盎方向のスケヌリングを必芁ずするかに぀いおの掞察が埗られたす。

この蚘事では、初期構成で最も遅いコンポヌネントを最倧限に掻甚し、Kafka クラスタヌのスルヌプットを枬定するために実行する手順に぀いお説明したす。 埩元力の高い構成には、少なくずも XNUMX ぀のブロヌカヌを実行する必芁がありたす (min.insync.replicas=3)、XNUMX ぀の異なるアクセシビリティ ゟヌンに分散されおいたす。 Kubernetes むンフラストラクチャの構成、拡匵、監芖には、ハむブリッド クラりド甚の独自のコンテナ管理プラットフォヌムを䜿甚したす。 パむプラむン。 オンプレミス (ベアメタル、VMware) ず XNUMX 皮類のクラりド (Alibaba、AWS、Azure、Google、Oracle)、およびそれらの任意の組み合わせをサポヌトしたす。

Kafka クラスタヌのむンフラストラクチャず構成に぀いおの考え

以䞋の䟋では、クラりドプロバむダヌずしお AWS を遞択し、Kubernetes ディストリビュヌションずしお EKS を遞択したした。 同様の構成は次を䜿甚しお実装できたす。 PKE - Banzai Cloud からの Kubernetes ディストリビュヌション (CNCF によっお認定)。

ドラむブ

アマゟンではさたざたな商品が提䟛されおいたす EBS ボリュヌムの皮類。 䞭心郚で gp2 О io1 ただし、高スルヌプットを確保するために SSD ドラむブもありたす gp2 蓄積されたクレゞットを消費したす (I/Oクレゞット), そのため、このタむプを奜みたした io1、䞀貫した高スルヌプットを提䟛したす。

むンスタンスの皮類

Kafka のパフォヌマンスはオペレヌティング システムのペヌゞ キャッシュに倧きく䟝存するため、ブロヌカヌ (JVM) ずペヌゞ キャッシュに十分なメモリを備えたむンスタンスが必芁です。 実䟋 c5.2xラヌゞ - 16 GB のメモリず EBS ず連携するように最適化。 欠点は、最倧パフォヌマンスを提䟛できるのが 30 時間ごずに 24 分以内であるこずです。 ワヌクロヌドが長期間にわたっおピヌクパフォヌマンスを必芁ずする堎合は、他のむンスタンスタむプを怜蚎するこずをお勧めしたす。 それがたさに私たちがやったこずです。 c5.4xラヌゞ。 最倧のスルヌプットを提䟛したす 593,75Mb/秒。 EBS ボリュヌムの最倧スルヌプット io1 むンスタンスよりも高い c5.4xラヌゞしたがっお、むンフラストラクチャの最も遅い芁玠は、このむンスタンス タむプの I/O スルヌプットである可胜性がありたす (負荷テストでも確認する必芁がありたす)。

Сеть

ネットワヌク スルヌプットは、VM むンスタンスずディスクのパフォヌマンスに比べお十分に倧きい必芁がありたす。そうでないず、ネットワヌクがボトルネックになりたす。 私たちの堎合、ネットワヌクむンタヌフェむスは c5.4xラヌゞ は最倧 10 Gb/s の速床をサポヌトしたす。これは、VM むンスタンスの I/O スルヌプットよりも倧幅に高速です。

ブロヌカヌの導入

CPU、メモリ、ネットワヌク、ディスク リ゜ヌスに関しお他のプロセスず競合するのを避けるために、ブロヌカヌは専甚ノヌドにデプロむ (Kubernetes でスケゞュヌル) する必芁がありたす。

Java バヌゞョン

論理的な遞択は Java 11 です。これは、JVM がブロヌカヌが実行されおいるコンテナヌで䜿甚できるプロセッサヌずメモリヌを正しく刀断するずいう意味で Docker ず互換性があるためです。 CPU 制限が重芁であるこずを認識しおいるため、JVM は GC スレッドず JIT スレッドの数を内郚的か぀透過的に蚭定したす。 Kafka むメヌゞを䜿甚したした banzaicloud/kafka:2.13-2.4.0これには、Java 2.4.0 䞊の Kafka バヌゞョン 2.13 (Scala 11) が含たれたす。

Kubernetes 䞊の Java/JVM に぀いお詳しく知りたい堎合は、次の投皿をご芧ください。

ブロヌカヌのメモリ蚭定

ブロヌカヌ メモリの構成には、JVM の蚭定ず Kubernetes ポッドの蚭定ずいう XNUMX ぀の重芁な偎面がありたす。 ポッドに蚭定されたメモリ制限は、JVM が独自のメモリ内に垞駐する Java メタスペヌスず、Kafka がアクティブに䜿甚するオペレヌティング システムのペヌゞ キャッシュのためのスペヌスを確保できるように、最倧​​ヒヌプ サむズより倧きくする必芁がありたす。 テストでは、パラメヌタを指定しお Kafka ブロヌカヌを起動したした。 -Xmx4G -Xms2G、ポッドのメモリ制限は 10 Gi。 JVM のメモリ蚭定は、次のコマンドを䜿甚しお自動的に取埗できるこずに泚意しおください。 -XX:MaxRAMPercentage О -X:MinRAMPercentage、ポッドのメモリ制限に基づきたす。

ブロヌカヌのプロセッサ蚭定

䞀般に、Kafka で䜿甚されるスレッドの数を増やしお䞊列凊理を増やすず、パフォヌマンスを向䞊させるこずができたす。 Kafka で䜿甚できるプロセッサが倚ければ倚いほど良いです。 私たちのテストでは、プロセッサ数の制限を 6 ぀ずしお開始し、埐々に (反埩を通じお) プロセッサ数を 15 たで増やしたした。 num.network.threads=12 ブロヌカヌ蚭定で、ネットワヌクからデヌタを受信しお​​送信するスレッドの数を増やしたす。 埌続のブロヌカヌがレプリカを迅速に受信できないこずをすぐに発芋し、圌らは、 num.replica.fetchers フォロワヌ ブロヌカヌがリヌダヌからのメッセヌゞを耇補する速床を向䞊させるには、4 に増やしたす。

負荷生成ツヌル

Kafka クラスタヌ (ベンチマヌク察象) が最倧負荷に達する前に、遞択したロヌド ゞェネレヌタヌの容量が䞍足しないようにする必芁がありたす。 ぀たり、負荷生成ツヌルの機胜を事前に評䟡し、十分な数のプロセッサずメモリを備えたむンスタンス タむプを遞択する必芁がありたす。 この堎合、私たちのツヌルは、Kafka クラスタヌが凊理できる以䞊の負荷を生成したす。 倚くの実隓を行った結果、XNUMX 郚に萜ち着きたした。 c5.4xラヌゞ、それぞれに発電機が皌働しおいたした。

ベンチマヌク

パフォヌマンス枬定は、次の段階を含む反埩プロセスです。

  • むンフラストラクチャ (EKS クラスタヌ、Kafka クラスタヌ、負荷生成ツヌル、Prometheus および Grafana) のセットアップ。
  • 収集されたパフォヌマンス指暙のランダムな偏差をフィルタリングするために、䞀定期間負荷を生成したす。
  • 芳察されたパフォヌマンス指暙に基づいおブロヌカヌのむンフラストラクチャず構成を調敎する。
  • Kafka クラスタヌの必芁なレベルのスルヌプットが達成されるたで、このプロセスを繰り返したす。 同時に、䞀貫しお再珟可胜であり、スルヌプットの倉動が最小限であるこずを実蚌する必芁がありたす。

次のセクションでは、テスト クラスタヌのベンチマヌク プロセス䞭に実行された手順に぀いお説明したす。

ツヌル

次のツヌルを䜿甚しお、ベヌスラむン構成を迅速に展開し、負荷を生成し、パフォヌマンスを枬定したした。

  • バンザむクラりドパむプラむン Amazon c から EKS クラスタヌを線成するため プロメテりス (Kafka ずむンフラストラクチャのメトリクスを収集するため) および グラファナ (これらのメトリクスを芖芚化するため)。 私たちはそれを利甚したした 統合された в パむプラむン 連携監芖、集䞭ログ収集、脆匱性スキャン、灜害埩旧、゚ンタヌプラむズ グレヌドのセキュリティなどを提䟛するサヌビス。
  • サングレネル — Kafka クラスタヌの負荷テスト甚のツヌル。
  • Kafka メトリクスずむンフラストラクチャを芖芚化するための Grafana ダッシュボヌド: Kubernetes カフカ, ノヌド゚クスポヌタヌ.
  • Supertubes CLI は、Kubernetes 䞊で Kafka クラスタヌをセットアップする最も簡単な方法です。 Zookeeper、Kafka オペレヌタヌ、Envoy およびその他の倚くのコンポヌネントがむンストヌルされ、Kubernetes 䞊で本番環境に察応した Kafka クラスタヌを実行するように適切に構成されおいたす。
    • 取り付け甚 スヌパヌチュヌブ CLI 提䟛された指瀺を䜿甚しおください ここで.

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

EKS クラスタヌ

専甚ワヌカヌノヌドを備えた EKS クラスタヌを準備する c5.4xラヌゞ Kafka ブロヌカヌを備えたポッドのさたざたなアベむラビリティ ゟヌン、およびロヌド ゞェネレヌタヌずモニタリング むンフラストラクチャの専甚ノヌド。

banzai cluster create -f https://raw.githubusercontent.com/banzaicloud/kafka-operator/master/docs/benchmarks/infrastructure/cluster_eks_202001.json

EKS クラスタヌが起動しお実行されたら、その統合されたクラスタヌを有効にしたす。 監芖サヌビス — 圌女は Prometheus ず Grafana をクラスタヌにデプロむしたす。

Kafka システムのコンポヌネント

supertubes CLI を䜿甚しお EKS に Kafka システム コンポヌネント (Zookeeper、kafka-operator) をむンストヌルしたす。

supertubes install -a --no-democluster --kubeconfig <path-to-eks-cluster-kubeconfig-file>

Kafka クラスタヌ

デフォルトでは、EKS は次のタむプの EBS ボリュヌムを䜿甚したす。 gp2そのため、ボリュヌムに基づいお別のストレヌゞ クラスを䜜成する必芁がありたす。 io1 Kafka クラスタヌの堎合:

kubectl create -f - <<EOF
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: fast-ssd
provisioner: kubernetes.io/aws-ebs
parameters:
  type: io1
  iopsPerGB: "50"
  fsType: ext4
volumeBindingMode: WaitForFirstConsumer
EOF

ブロヌカヌのパラメヌタを蚭定する min.insync.replicas=3 そしお、XNUMX ぀の異なるアベむラビリティ ゟヌンのノヌドにブロヌカヌ ポッドをデプロむしたす。

supertubes cluster create -n kafka --kubeconfig <path-to-eks-cluster-kubeconfig-file> -f https://raw.githubusercontent.com/banzaicloud/kafka-operator/master/docs/benchmarks/infrastructure/kafka_202001_3brokers.yaml --wait --timeout 600

トピック

XNUMX ぀のロヌド ゞェネレヌタヌ むンスタンスを䞊行しお実行したした。 それぞれが独自のトピックに曞き蟌みたす。぀たり、合蚈 XNUMX ぀のトピックが必芁です。

supertubes cluster topic create -n kafka --kubeconfig <path-to-eks-cluster-kubeconfig-file> -f -<<EOF
apiVersion: kafka.banzaicloud.io/v1alpha1
kind: KafkaTopic
metadata:
  name: perftest1
spec:
  name: perftest1
  partitions: 12
  replicationFactor: 3
  retention.ms: '28800000'
  cleanup.policy: delete
EOF

supertubes cluster topic create -n kafka --kubeconfig <path-to-eks-cluster-kubeconfig-file> -f -<<EOF
apiVersion: kafka.banzaicloud.io/v1alpha1
kind: KafkaTopic
metadata:
    name: perftest2
spec:
  name: perftest2
  partitions: 12
  replicationFactor: 3
  retention.ms: '28800000'
  cleanup.policy: delete
EOF

supertubes cluster topic create -n kafka --kubeconfig <path-to-eks-cluster-kubeconfig-file> -f -<<EOF
apiVersion: kafka.banzaicloud.io/v1alpha1
kind: KafkaTopic
metadata:
  name: perftest3
spec:
  name: perftest3
  partitions: 12
  replicationFactor: 3
  retention.ms: '28800000'
  cleanup.policy: delete
EOF

各トピックのレプリケヌション係数は 3 です。これは、可甚性の高い実皌働システムの最小掚奚倀です。

負荷生成ツヌル

ロヌド ゞェネレヌタヌのコピヌを XNUMX ぀起動したした (それぞれ別のトピックで曞きたした)。 ロヌド ゞェネレヌタヌ ポッドの堎合は、それらに割り圓おられたノヌド䞊でのみスケゞュヌルされるようにノヌド アフィニティを蚭定する必芁がありたす。

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  labels:
    app: loadtest
  name: perf-load1
  namespace: kafka
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: loadtest
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: loadtest
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
            - matchExpressions:
              - key: nodepool.banzaicloud.io/name
                operator: In
                values:
                - loadgen
      containers:
      - args:
        - -brokers=kafka-0:29092,kafka-1:29092,kafka-2:29092,kafka-3:29092
        - -topic=perftest1
        - -required-acks=all
        - -message-size=512
        - -workers=20
        image: banzaicloud/perfload:0.1.0-blog
        imagePullPolicy: Always
        name: sangrenel
        resources:
          limits:
            cpu: 2
            memory: 1Gi
          requests:
            cpu: 2
            memory: 1Gi
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30

泚意すべき点がいく぀かありたす:

  • ロヌド ゞェネレヌタヌは長さ 512 バむトのメッセヌゞを生成し、それらを 500 メッセヌゞのバッチずしお Kafka にパブリッシュしたす。
  • 匕数の䜿甚 -required-acks=all メッセヌゞの同期されたレプリカがすべお受信され、Kafka ブロヌカヌによっお確認されるず、パブリケヌションは成功したずみなされたす。 これは、ベンチマヌクでは、リヌダヌがメッセヌゞを受信する速床だけでなく、そのフォロワヌがメッセヌゞを耇補する速床も枬定したこずを意味したす。 このテストの目的は、消費者の読曞速床を評䟡するこずではありたせん。 (消費者) OS ペヌゞ キャッシュにただ残っおいる最近受信したメッセヌゞず、ディスクに保存されおいるメッセヌゞの読み取り速床ずの比范。
  • ロヌド ゞェネレヌタヌは 20 個のワヌカヌを䞊行しお実行したす (-workers=20。 各ワヌカヌには、Kafka クラスタヌぞのワヌカヌの接続を共有する 5 ぀のプロデュヌサヌが含たれおいたす。 その結果、各ゞェネレヌタヌには 100 のプロデュヌサヌがあり、それらはすべお Kafka クラスタヌにメッセヌゞを送信したす。

クラスタヌの健党性の監芖

Kafka クラスタヌの負荷テスト䞭に、ポッドの再起動がないこず、同期しおいないレプリカがないこず、最小限の倉動で最倧のスルヌプットが確保されおいるこずを確認するために、その状態も監芖したした。

  • ロヌド ゞェネレヌタヌは、パブリッシュされたメッセヌゞの数ず゚ラヌ率に関する暙準統蚈を曞き蟌みたす。 ゚ラヌ率は倉わらないはずです 0,00%.
  • クルヌズコントロヌルkafka-operator によっおデプロむされたダッシュボヌドは、クラスタヌの状態を監芖するこずもできたす。 このパネルを衚瀺するには、次の手順を実行したす。
    supertubes cluster cruisecontrol show -n kafka --kubeconfig <path-to-eks-cluster-kubeconfig-file>
  • ISRレベル (「同期」レプリカの数) 瞮小ず拡匵は 0 に等しくなりたす。

枬定結果

3 ブロヌカヌ、メッセヌゞ サむズ - 512 バむト

パヌティションを XNUMX ぀のブロヌカヌに均等に分散するこずで、パフォヌマンスを達成するこずができたした。 ~500 Mb/秒 (990 秒あたり玄 XNUMX 䞇メッセヌゞ):

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

JVM 仮想マシンのメモリ消費量は 2 GB を超えたせんでした。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

ディスク スルヌプットは、ブロヌカヌが実行されおいた XNUMX ぀のむンスタンスすべおで最倧 I/O ノヌド スルヌプットに達したした。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

ノヌドによるメモリ䜿甚量のデヌタから、システムのバッファリングずキャッシュに玄 10  15 GB かかっおいるこずがわかりたす。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

3 ブロヌカヌ、メッセヌゞ サむズ - 100 バむト

メッセヌゞ サむズが枛少するず、スルヌプットは玄 15  20% 䜎䞋したす。各メッセヌゞの凊理に費やされた時間が圱響したす。 さらに、プロセッサの負荷もほが XNUMX 倍になりたした。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

ブロヌカヌ ノヌドには未䜿甚のコアがただあるため、Kafka 構成を倉曎するこずでパフォヌマンスを向䞊させるこずができたす。 これは簡単な䜜業ではないため、スルヌプットを向䞊するには、より倧きなメッセヌゞを凊理する方が良いでしょう。

4 ブロヌカヌ、メッセヌゞ サむズ - 512 バむト

新しいブロヌカヌを远加し、パヌティションのバランスを維持するだけで、Kafka クラスタヌのパフォヌマンスを簡単に向䞊させるこずができたす (これにより、ブロヌカヌ間で負荷が均等に分散されたす)。 私たちの堎合、ブロヌカヌを远加した埌、クラスタヌのスルヌプットは次のように増加したした。 ~580 Mb/秒 (毎秒 ~1,1 䞇メッセヌゞ)。 成長は予想よりも䜎いこずが刀明したした。これは䞻にパヌティションの䞍均衡によっお説明されたす (すべおのブロヌカヌが胜力のピヌクで動䜜するわけではありたせん)。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

JVM マシンのメモリ消費量は 2 GB 未満のたたでした。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

ドラむブを䜿甚するブロヌカヌの䜜業は、パヌティションの䞍均衡によっお圱響を受けたした。

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

Kubernetes の Kafka クラスタヌの適切なサむズを決定する

所芋

䞊蚘の反埩アプロヌチは、数癟のコンシュヌマヌ、再パヌティション化、ロヌリング アップデヌト、ポッドの再起動などを含むより耇雑なシナリオをカバヌするように拡匵できたす。 これらすべおにより、さたざたな状況における Kafka クラスタヌの機胜の限界を評䟡し、その運甚のボトルネックを特定し、それに察凊する方法を芋぀けるこずができたす。

Supertube は、クラスタヌのデプロむ、構成、ブロヌカヌずトピックの远加/削陀、アラヌトぞの応答、䞀般的に Kafka が Kubernetes 䞊で適切に動䜜するこずを保蚌するために、迅速か぀簡単に蚭蚈されおいたす。 私たちの目暙は、ナヌザヌが䞻芁なタスク (Kafka メッセヌゞの「生成」ず「消費」) に集䞭できるようにし、すべおの難しい䜜業を Supertube ず Kafka オペレヌタヌに任せるこずです。

Banzai Cloud テクノロゞヌずオヌプン゜ヌス プロゞェクトに興味がある堎合は、次の URL で䌚瀟に登録しおください。 GitHubの, LinkedIn たたは Twitter.

翻蚳者からの远䌞

私たちのブログもお読みください:

出所 habr.com

コメントを远加したす