Modern application environments are complex and getting even more complex every day. The environments need to support multiple deployment infrastructures, application architectures, programming languages, and frameworks.

It can be challenging and time-consuming for operations and development teams to be experts in all of the different technologies in order to install, configure, and maintain them. Kubernetes operators help streamline the installation, configuration, and maintenance complexity.

Red Hat® AMQ Streams is a scalable, distributed, and high-performance data streaming platform. It is based on the Strimzi community project which provides a way to run Apache Kafka on Kubernetes. AMQ Streams offers a distributed backbone that allows microservices and other applications to share data with extremely high throughput and extremely low latency. Additionally, running Kafka on Kubernetes allows organizations to simplify operations such as upgrades, scaling, restarts, and monitoring which are more-or-less built into the Kubernetes platform.

Red Hat AMQ Streams delivers the following capabilities:

  • Kafka Cluster - deploys and manages all of the Kafka components including dependencies like Apache ZooKeeper®.
  • Kafka Connect - allows for the configuration of common data sources and sinks to move data into and out of the Kafka cluster.
  • Topic Management - creates and manages Kafka Topics within the cluster.
  • User Management - creates and manages Kafka Users within the cluster.
  • Kafka Mirror Maker - allows for mirroring data between different Apache Kafka ® clusters.
  • Kafka Bridge - allows clients to send and receive messages through an Apache Kafka ® cluster via HTTP protocol.
  • Upgrade Capabilities - the operator can upgrade between a set of Kafka versions.

Storage

An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage and supports three types of data storage:

  1. Ephemeral (Recommended for development only)
  2. Persistent
  3. JBOD (Just a Bunch of Disks) - supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).

[Video] Install Red Hat® AMQ Streams Using an OpenShift Operator

If you are interested in learning more, take a look at the following resources: