Kafka
Seldon Core 2 requires Kafka to implement data-centric inference Pipelines. See our architecture documentation to learn more on how Seldon Core 2 uses Kafka.
Note: Kafka integration is required to enable data-centric inference pipelines feature. It is highly advice to configure Kafka integration to take full advantage of Seldon Core 2 features.
We list alternatives below.
Managed Kafka
We recommend to use managed Kafka solution for production installation. This allow to take away all the complexity on running secure and scalable Kafka cluster away.
We currently have tested and documented integration with following managed solutions:
Confluent Cloud (security: SASL/PLAIN)
Confluent Cloud (security: SASL/OAUTHBEARER)
Amazon MSK (security: mTLS)
Amazon MSK (security: SASL/SCRAM)
Azure Event Hub (security: SASL/PLAIN)
See our Kafka security section for configuration examples.
Self Hosted Kafka
Strimzi Kafka
Seldon Core 2 requires Kafka to implement data-centric inference Pipelines. To install Kafka for testing purposed in your k8s cluster, we recommend to use Strimzi Operator.
Note: This page discuss how to install Strimzi Operator and create Kafka cluster for trial, dev, or testing purposes. For production grade installation consult Strimzi documentation or use one of managed solutions mentioned here.
You can install and configure Strimzi using either Helm charts or our Ansible playbooks, both documented below.
Helm
The installation of a Kafka cluster requires the Strimzi Kafka operator installed in the same namespace. This allows to directly use the mTLS certificates created by Strimzi Operator. One option to install the Strimzi operator is via Helm.
Note that we are using here KRaft instead of Zookeeper for Kafka. You can enable featureGates
during Helm installation via:
Warning: Currently Kraft installation of Strimzi is not production ready. See Strimzi documentation and related GitHub issue for further details.
Create Kafka cluster in seldon-mesh
namespace
Note that a specific strimzi operator version is associated with a subset of supported Kafka versions.
Ansible
We provide automation around the installation of a Kafka cluster for Seldon Core 2 to help with development and testing use cases. You can follow the steps defined here to install Kafka via ansible.
You can use our Ansible playbooks to install only Strimzi Operator and Kafka cluster by setting extra Ansible vars:
Notes
You can check kafka-examples for more details.
As we are using KRaft, use Kafka version 3.4 or above.
For security settings check here.
Last updated
Was this helpful?