SlideShare a Scribd company logo
Team Collaboration in
Kafka Clusters
Maria Berinde-Tâmpănariu
Advisory Solutions Engineer
4th of October 2022
Question
Can different teams collaborate efficiently and
work independently in your Kafka cluster(s)?
Journey
3
My first
Kafka cluster
● a foreseeable
amount of
applications
● the core team
with full access
Central
Nervous
System
● many different
types of clients
● many users with
different access
levels
The ability to work
without getting in
each other’s way.
➔ scalable & repeatable
actions
➔ predictability
➔ self-service capabilities
➔ isolation
➔ manageability
Authentication Authorization
Naming
Conventions
Automation
TEAM
COLLABORATION
Platform Limits
Chargeback Monitoring Client Quotas
TEAM
COLLABORATION
Authentication
TEAM
COLLABORATION
Client Authentication
• process of establishing the client identity and verifying client & server authenticity
• authenticated identity throughout lifetime of connection
• KafkaPrincipal used to represent client identity (e.g. Username: maria)
• principal used to:
- grant access to resources
- allocate quotas
- log details
• different authentication mechanisms
7
Authentication Methods
Confluent Cloud
8
API Keys OAuth Single Sign On
• Cloud keys
• resource specific keys
- Kafka
- Schema Registry
- ksqlDB
• all keys owned by an
account
• key rotation
• delegated authentication
• JSON Web Token (JWT)
• OpenID Connect (OIDC)
• identity provider & identity
pools
• SAML based Identity
Provider (IdP)
• enabled at Confluent
Cloud organization level
• SSO users vs. local users
Confluent Cloud is a fully-managed Apache Kafka service available on all three major clouds.
• user & service accounts
Authentication Authorization
TEAM
COLLABORATION
Access Control List (ACL)
• general format:
"Principal P is [Allowed/Denied] Operation O From Host H On Resource R"
• wildcard & prefix matching supported
10
Principal P
based on standard
authorizer
(wildcard)
is [Allowed
/ Denied]
Operation O From Host H On Resource R
(wildcard & prefix)
Apache
Kafka®
individual principals
“Deny”
always
trumps
“Allow”.
supported
operations are
based on resource
(see docs)
supported
Cluster
Delegation Token
Group
Topic
Transactional ID
Confluent
Platform
individual & group
principals
Confluent
Cloud
user & service accounts
not
supported
Cluster
Consumer Group
Topic
Transactional ID
Authorizer
• customizable server plugin
• authorize an operation based on the principal and the resource being accessed
11
Confluent Cloud
.
• subset of Kafka Access
Control Lists (ACL)
• predefined role-based
access control (RBAC)
roles
• ACL & RBAC can be used
together
• AclAuthorizer (since v5.4.0)
• SimpleAclAuthorizer (before
v5.4.0)
• Confluent Server Authorizer
with LDAP group-based &
role-based access control
(RBAC)
‘
• Access Control Lists (ACL)
stored on Zookeeper (ZK) or
centrally on Metadata
Service (MDS)
Confluent Platform
Apache Kafka®
• pluggable Authorizer
• out-of-box implementation
• default authorizer:
AclAuthorizer ( > v2.4)
SimpleAclAuthorizer (< v2.4)
StandardAuthorizer (KRaft)
• Access Control Lists (ACL)
stored on Zookeeper (ZK) or in
metadata topic
Role-based Access Control (RBAC)
• serves as an additional authorization layer on
top of ACLs
• predefined roles & role-bindings
• Metadata Service used to configure and
manage RBAC
• only “Allow” rules (“Deny” not supported)
• benefits:
+ Manage security access across the platform
(Kafka, ksqlDB, Connect, Schema Registry,
Confluent Control Center)
+ delegation of permission management is
possible (ResourceOwner role)
+ centrally manage multiple clusters
12
RBAC on Confluent Cloud
CLI
GUI API
Org Admin
Env Admin Env Admin
Cluster 1 Admin Cluster 2 Admin
Topic 1
Resource Owner
Topic 2
Resource Owner
Dev Read Only -
Topic 1
Dev Write -
Topic 2
RBAC Authorization
Control access to
organizations, environments
and clusters
Admin Roles:
● OrganizationAdmin
● EnvironmentAdmin
● CloudClusterAdmin
Control CRUD operations
within Kafka resources
Developer Roles:
● ResourceOwner
● DeveloperRead
● DeveloperWrite
● DeveloperManage
Note: A single user can have multiple roles
13
Operator Roles:
● Operator
● MetricsViewer
Authentication Authorization
Naming
Conventions
TEAM
COLLABORATION
Naming Conventions
• RBAC & ACLs can be used together
- use RBAC in general as the default to grant access
- use ACL in particular cases to deny access
• both support prefixed rules
• governance
- visual attribution
- stream governance functionality
• choose names unlikely to change over time
• think about how naming conventions can be enforced (e.g. CI/CD pipeline)
15
Demo: Role bindings with Prefixed Rules in
Confluent Cloud
• Authentication:
Confluent Cloud local users
• Authorization:
RBAC prefixed role bindings
• Naming Convention:
Team name used as prefix
16
17
How to grant temporary access? (Authentication,
Authorization & Naming Conventions)
18
Authentication Authorization
Naming
Conventions
TEAM
COLLABORATION
Platform Limits
Platform Limits
20
• given by the infrastructure on which Kafka is deployed
• Do you know the limits for your deployment?
• Confluent Cloud
- hard limits & soft limits
- different types of clusters (basic, standard & dedicated)
- some limits depend on type of cluster
- examples of limits:
• RBAC role-bindings
• ACLs
• throughput
Authentication Authorization
Naming
Conventions
TEAM
COLLABORATION
Platform Limits
Client Quotas
Client Quotas
• applied on (user, client-ID) or client-ID groups
• defined at different levels with order of precedence
• quotas:
- network bandwidth
- request rate
• early access feature on Confluent Cloud
22
Quota parameter Cloud Client Quotas Apache Kafka Quotas
Apply to Service Accounts User or Client ID
Managed by Calling the Confluent Cloud API API Interacting with Kafka Directly
Level enforced at Cluster level Broker level
Authentication Authorization
Naming
Conventions
TEAM
COLLABORATION
Platform Limits
Monitoring Client Quotas
Metrics
• as described in “Kafka: The Definitive Guide” 2nd edition:
• proactive vs. reactive measures
24
Monitoring
25
Apache Kafka® Confluent Platform Confluent Cloud
• essentially monitoring a
Java application
• JMX metrics exposed by
Kafka
• Confluent Control Center
• Metrics Viewer Role
• JMX metrics
• Confluent Health+
• Metrics API
• 3rd party monitoring
integration
• /export endpoint
• Metrics Viewer Role
• Confluent Cloud UI
• self-managed Confluent
Control Center
Confluent Cloud UI
26
Confluent Control Center
• Self-managed deployment
• Can be connected to Confluent Cloud
• Can be used to monitor local Connect
cluster.
• Allows custom notifications.
27
Confluent Health+
28
Authentication Authorization
Naming
Conventions
TEAM
COLLABORATION
Platform Limits
Chargeback Monitoring Client Quotas
Chargeback
• charging individual cost centers for their share of Kafka cluster usage
- flat rate
- consumption based
• chargeback vs. showback
• start with a simple model, which can evolve over time
• Confluent Control Center insights
• Metrics grouped by Principal ID
• content about cost effectiveness by Lyndon Hedderly, Confluent Principal Business Value
Consultant
30
Active Connection Count Example
31
Total client connections
(Basic & Standard
clusters)
Max 1000
Number of TCP connections to the cluster that can be open at one time.
Available in the Metrics API as active_connection_count.
If you are self-managing Kafka, you can look at the broker kafka.server:type=socket-server-
metrics,listener={listener_name},networkProcessor={#},name=connection-count metrics to understand how many connections you are using.
This value can vary widely based on several factors, including number of producer clients, number of consumer clients, partition keying strategy, produce
patterns per client, and consume patterns per client.
To reduce usage on this dimension, you can reduce the total number of clients connecting to the cluster.
Authentication Authorization
Naming
Conventions
Automation
TEAM
COLLABORATION
Platform Limits
Chargeback Monitoring Client Quotas
Automation
• manage infrastructure & resource lifecycle safely & efficiently
• easily scale
• reuse & abstract
• tooling:
- command line interface (CLI) & APIs
- Confluent for Kubernetes to deploy Confluent Platform on Kubernetes
• Quickstart
- Terraform provider for Confluent Cloud
• sample project
• resources & data sources
33
Terraform Example
• Role bindings with prefixed rules
• Literal with role binding assignment
34
Terraform Considerations
• starting a new project vs. migrating existing clusters
• Decide weather to support all possible options or provide Tshirt-sized templates.
• The lifecycle Meta-Argument
lifecycle { prevent_destroy = true }
35
Authentication Authorization
Naming
Conventions
Automation
TEAM
COLLABORATION
Platform Limits
Chargeback Monitoring Client Quotas
Summary
• tools & approaches to achieve
- scalable & repeatable actions
- predictability
- self-service capabilities
- isolation
- manageability
• Github Repo with links to documentation & code for examples
https://github.com/maaarv/current2022
37
Q&A
38
Your Apache Kafka®
journey begins here
developer.confluent.io
39
Team Collaboration in Kafka Clusters With Maria Berinde-Tampanariu | Current 2022

More Related Content

PDF
Apache Kafka® Security Overview
PDF
Confluent Platform 5.4 + Apache Kafka 2.4 Overview (RBAC, Tiered Storage, Mul...
PPTX
How to Lock Down Apache Kafka and Keep Your Streams Safe
PDF
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
PPTX
Securing & Monitoring Your K8s Cluster with RBAC and Prometheus”.
PDF
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
PPTX
CloudStack Overview
PPTX
12 Ways Not to get 'Hacked' your Kubernetes Cluster
Apache Kafka® Security Overview
Confluent Platform 5.4 + Apache Kafka 2.4 Overview (RBAC, Tiered Storage, Mul...
How to Lock Down Apache Kafka and Keep Your Streams Safe
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
Securing & Monitoring Your K8s Cluster with RBAC and Prometheus”.
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
CloudStack Overview
12 Ways Not to get 'Hacked' your Kubernetes Cluster

Similar to Team Collaboration in Kafka Clusters With Maria Berinde-Tampanariu | Current 2022 (20)

PDF
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
PDF
Webinar: What's new in CDAP 3.5?
PPTX
Envoy and Kafka
PDF
New Features in Confluent Platform 6.0 / Apache Kafka 2.6
PDF
Confluent Tech Talk Korea
PPTX
Protecting your data at rest with Apache Kafka by Confluent and Vormetric
PDF
New Security Features in Apache HBase 0.98: An Operator's Guide
PDF
Apache Kafka Introduction
PPTX
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
PDF
Confluent Operations Training for Apache Kafka
PDF
OSMC 2016 - Monasca - Monitoring-as-a-Service (at-Scale) by Roland Hochmuth
PDF
OSMC 2016 | Monasca: Monitoring-as-a-Service (at-Scale) by Roland Hochmuth
PPTX
API Security in a Microservice Architecture
PDF
Kubernetes connectivity to Cloud Native Kafka | Evan Shortiss and Hugo Guerre...
PDF
Extending kubernetes
PPTX
2015 zData Inc. - Apache Ambari Overview
PDF
Au delà des brokers, un tour de l’environnement Kafka | Florent Ramière
PPTX
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
PPTX
PPTX
Deploying and Operating KSQL
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Webinar: What's new in CDAP 3.5?
Envoy and Kafka
New Features in Confluent Platform 6.0 / Apache Kafka 2.6
Confluent Tech Talk Korea
Protecting your data at rest with Apache Kafka by Confluent and Vormetric
New Security Features in Apache HBase 0.98: An Operator's Guide
Apache Kafka Introduction
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
Confluent Operations Training for Apache Kafka
OSMC 2016 - Monasca - Monitoring-as-a-Service (at-Scale) by Roland Hochmuth
OSMC 2016 | Monasca: Monitoring-as-a-Service (at-Scale) by Roland Hochmuth
API Security in a Microservice Architecture
Kubernetes connectivity to Cloud Native Kafka | Evan Shortiss and Hugo Guerre...
Extending kubernetes
2015 zData Inc. - Apache Ambari Overview
Au delà des brokers, un tour de l’environnement Kafka | Florent Ramière
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Deploying and Operating KSQL
Ad

More from HostedbyConfluent (20)

PDF
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
PDF
Renaming a Kafka Topic | Kafka Summit London
PDF
Evolution of NRT Data Ingestion Pipeline at Trendyol
PDF
Ensuring Kafka Service Resilience: A Dive into Health-Checking Techniques
PDF
Exactly-once Stream Processing with Arroyo and Kafka
PDF
Fish Plays Pokemon | Kafka Summit London
PDF
Tiered Storage 101 | Kafla Summit London
PDF
Building a Self-Service Stream Processing Portal: How And Why
PDF
From the Trenches: Improving Kafka Connect Source Connector Ingestion from 7 ...
PDF
Future with Zero Down-Time: End-to-end Resiliency with Chaos Engineering and ...
PDF
Navigating Private Network Connectivity Options for Kafka Clusters
PDF
Apache Flink: Building a Company-wide Self-service Streaming Data Platform
PDF
Explaining How Real-Time GenAI Works in a Noisy Pub
PDF
TL;DR Kafka Metrics | Kafka Summit London
PDF
A Window Into Your Kafka Streams Tasks | KSL
PDF
Mastering Kafka Producer Configs: A Guide to Optimizing Performance
PDF
Data Contracts Management: Schema Registry and Beyond
PDF
Code-First Approach: Crafting Efficient Flink Apps
PDF
Debezium vs. the World: An Overview of the CDC Ecosystem
PDF
Beyond Tiered Storage: Serverless Kafka with No Local Disks
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Renaming a Kafka Topic | Kafka Summit London
Evolution of NRT Data Ingestion Pipeline at Trendyol
Ensuring Kafka Service Resilience: A Dive into Health-Checking Techniques
Exactly-once Stream Processing with Arroyo and Kafka
Fish Plays Pokemon | Kafka Summit London
Tiered Storage 101 | Kafla Summit London
Building a Self-Service Stream Processing Portal: How And Why
From the Trenches: Improving Kafka Connect Source Connector Ingestion from 7 ...
Future with Zero Down-Time: End-to-end Resiliency with Chaos Engineering and ...
Navigating Private Network Connectivity Options for Kafka Clusters
Apache Flink: Building a Company-wide Self-service Streaming Data Platform
Explaining How Real-Time GenAI Works in a Noisy Pub
TL;DR Kafka Metrics | Kafka Summit London
A Window Into Your Kafka Streams Tasks | KSL
Mastering Kafka Producer Configs: A Guide to Optimizing Performance
Data Contracts Management: Schema Registry and Beyond
Code-First Approach: Crafting Efficient Flink Apps
Debezium vs. the World: An Overview of the CDC Ecosystem
Beyond Tiered Storage: Serverless Kafka with No Local Disks
Ad

Recently uploaded (20)

PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Empathic Computing: Creating Shared Understanding
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
KodekX | Application Modernization Development
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Diabetes mellitus diagnosis method based random forest with bat algorithm
Unlocking AI with Model Context Protocol (MCP)
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Dropbox Q2 2025 Financial Results & Investor Presentation
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Empathic Computing: Creating Shared Understanding
The AUB Centre for AI in Media Proposal.docx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Review of recent advances in non-invasive hemoglobin estimation
KodekX | Application Modernization Development
20250228 LYD VKU AI Blended-Learning.pptx

Team Collaboration in Kafka Clusters With Maria Berinde-Tampanariu | Current 2022

  • 1. Team Collaboration in Kafka Clusters Maria Berinde-Tâmpănariu Advisory Solutions Engineer 4th of October 2022
  • 2. Question Can different teams collaborate efficiently and work independently in your Kafka cluster(s)?
  • 3. Journey 3 My first Kafka cluster ● a foreseeable amount of applications ● the core team with full access Central Nervous System ● many different types of clients ● many users with different access levels The ability to work without getting in each other’s way. ➔ scalable & repeatable actions ➔ predictability ➔ self-service capabilities ➔ isolation ➔ manageability
  • 7. Client Authentication • process of establishing the client identity and verifying client & server authenticity • authenticated identity throughout lifetime of connection • KafkaPrincipal used to represent client identity (e.g. Username: maria) • principal used to: - grant access to resources - allocate quotas - log details • different authentication mechanisms 7
  • 8. Authentication Methods Confluent Cloud 8 API Keys OAuth Single Sign On • Cloud keys • resource specific keys - Kafka - Schema Registry - ksqlDB • all keys owned by an account • key rotation • delegated authentication • JSON Web Token (JWT) • OpenID Connect (OIDC) • identity provider & identity pools • SAML based Identity Provider (IdP) • enabled at Confluent Cloud organization level • SSO users vs. local users Confluent Cloud is a fully-managed Apache Kafka service available on all three major clouds. • user & service accounts
  • 10. Access Control List (ACL) • general format: "Principal P is [Allowed/Denied] Operation O From Host H On Resource R" • wildcard & prefix matching supported 10 Principal P based on standard authorizer (wildcard) is [Allowed / Denied] Operation O From Host H On Resource R (wildcard & prefix) Apache Kafka® individual principals “Deny” always trumps “Allow”. supported operations are based on resource (see docs) supported Cluster Delegation Token Group Topic Transactional ID Confluent Platform individual & group principals Confluent Cloud user & service accounts not supported Cluster Consumer Group Topic Transactional ID
  • 11. Authorizer • customizable server plugin • authorize an operation based on the principal and the resource being accessed 11 Confluent Cloud . • subset of Kafka Access Control Lists (ACL) • predefined role-based access control (RBAC) roles • ACL & RBAC can be used together • AclAuthorizer (since v5.4.0) • SimpleAclAuthorizer (before v5.4.0) • Confluent Server Authorizer with LDAP group-based & role-based access control (RBAC) ‘ • Access Control Lists (ACL) stored on Zookeeper (ZK) or centrally on Metadata Service (MDS) Confluent Platform Apache Kafka® • pluggable Authorizer • out-of-box implementation • default authorizer: AclAuthorizer ( > v2.4) SimpleAclAuthorizer (< v2.4) StandardAuthorizer (KRaft) • Access Control Lists (ACL) stored on Zookeeper (ZK) or in metadata topic
  • 12. Role-based Access Control (RBAC) • serves as an additional authorization layer on top of ACLs • predefined roles & role-bindings • Metadata Service used to configure and manage RBAC • only “Allow” rules (“Deny” not supported) • benefits: + Manage security access across the platform (Kafka, ksqlDB, Connect, Schema Registry, Confluent Control Center) + delegation of permission management is possible (ResourceOwner role) + centrally manage multiple clusters 12
  • 13. RBAC on Confluent Cloud CLI GUI API Org Admin Env Admin Env Admin Cluster 1 Admin Cluster 2 Admin Topic 1 Resource Owner Topic 2 Resource Owner Dev Read Only - Topic 1 Dev Write - Topic 2 RBAC Authorization Control access to organizations, environments and clusters Admin Roles: ● OrganizationAdmin ● EnvironmentAdmin ● CloudClusterAdmin Control CRUD operations within Kafka resources Developer Roles: ● ResourceOwner ● DeveloperRead ● DeveloperWrite ● DeveloperManage Note: A single user can have multiple roles 13 Operator Roles: ● Operator ● MetricsViewer
  • 15. Naming Conventions • RBAC & ACLs can be used together - use RBAC in general as the default to grant access - use ACL in particular cases to deny access • both support prefixed rules • governance - visual attribution - stream governance functionality • choose names unlikely to change over time • think about how naming conventions can be enforced (e.g. CI/CD pipeline) 15
  • 16. Demo: Role bindings with Prefixed Rules in Confluent Cloud • Authentication: Confluent Cloud local users • Authorization: RBAC prefixed role bindings • Naming Convention: Team name used as prefix 16
  • 17. 17
  • 18. How to grant temporary access? (Authentication, Authorization & Naming Conventions) 18
  • 20. Platform Limits 20 • given by the infrastructure on which Kafka is deployed • Do you know the limits for your deployment? • Confluent Cloud - hard limits & soft limits - different types of clusters (basic, standard & dedicated) - some limits depend on type of cluster - examples of limits: • RBAC role-bindings • ACLs • throughput
  • 22. Client Quotas • applied on (user, client-ID) or client-ID groups • defined at different levels with order of precedence • quotas: - network bandwidth - request rate • early access feature on Confluent Cloud 22 Quota parameter Cloud Client Quotas Apache Kafka Quotas Apply to Service Accounts User or Client ID Managed by Calling the Confluent Cloud API API Interacting with Kafka Directly Level enforced at Cluster level Broker level
  • 24. Metrics • as described in “Kafka: The Definitive Guide” 2nd edition: • proactive vs. reactive measures 24
  • 25. Monitoring 25 Apache Kafka® Confluent Platform Confluent Cloud • essentially monitoring a Java application • JMX metrics exposed by Kafka • Confluent Control Center • Metrics Viewer Role • JMX metrics • Confluent Health+ • Metrics API • 3rd party monitoring integration • /export endpoint • Metrics Viewer Role • Confluent Cloud UI • self-managed Confluent Control Center
  • 27. Confluent Control Center • Self-managed deployment • Can be connected to Confluent Cloud • Can be used to monitor local Connect cluster. • Allows custom notifications. 27
  • 30. Chargeback • charging individual cost centers for their share of Kafka cluster usage - flat rate - consumption based • chargeback vs. showback • start with a simple model, which can evolve over time • Confluent Control Center insights • Metrics grouped by Principal ID • content about cost effectiveness by Lyndon Hedderly, Confluent Principal Business Value Consultant 30
  • 31. Active Connection Count Example 31 Total client connections (Basic & Standard clusters) Max 1000 Number of TCP connections to the cluster that can be open at one time. Available in the Metrics API as active_connection_count. If you are self-managing Kafka, you can look at the broker kafka.server:type=socket-server- metrics,listener={listener_name},networkProcessor={#},name=connection-count metrics to understand how many connections you are using. This value can vary widely based on several factors, including number of producer clients, number of consumer clients, partition keying strategy, produce patterns per client, and consume patterns per client. To reduce usage on this dimension, you can reduce the total number of clients connecting to the cluster.
  • 33. Automation • manage infrastructure & resource lifecycle safely & efficiently • easily scale • reuse & abstract • tooling: - command line interface (CLI) & APIs - Confluent for Kubernetes to deploy Confluent Platform on Kubernetes • Quickstart - Terraform provider for Confluent Cloud • sample project • resources & data sources 33
  • 34. Terraform Example • Role bindings with prefixed rules • Literal with role binding assignment 34
  • 35. Terraform Considerations • starting a new project vs. migrating existing clusters • Decide weather to support all possible options or provide Tshirt-sized templates. • The lifecycle Meta-Argument lifecycle { prevent_destroy = true } 35
  • 37. Summary • tools & approaches to achieve - scalable & repeatable actions - predictability - self-service capabilities - isolation - manageability • Github Repo with links to documentation & code for examples https://github.com/maaarv/current2022 37
  • 39. Your Apache Kafka® journey begins here developer.confluent.io 39