Amazon Managed Streaming for Kafka (MSK)

(public preview)

Fully managed, highly available, and secure Apache Kafka service

Amazon Managed Streaming for Kafka (Amazon MSK) is a fully managed service that makes it easy for you to build and run applications that use Apache Kafka to process streaming data. Apache Kafka is an open-source platform for building real-time streaming data pipelines and applications. With Amazon MSK, you can use Apache Kafka APIs to populate data lakes, stream changes to and from databases, and power machine learning and analytics applications.

Apache Kafka clusters are challenging to setup, scale, and manage in production. When you run Apache Kafka on your own, you need to provision servers, configure Apache Kafka manually, replace servers when they fail, orchestrate server patches and upgrades, architect the cluster for high availability, ensure data is durably stored and secured, setup monitoring and alarms, and carefully plan scaling events to support load changes. Amazon Managed Streaming for Kafka makes it easy for you to build and run production applications on Apache Kafka without needing Apache Kafka infrastructure management expertise. That means you spend less time managing infrastructure and more time building applications.

With a few clicks in the Amazon MSK console you can create highly available Apache Kafka clusters with settings and configuration based on Apache Kafka’s deployment best practices. Amazon MSK automatically provisions and runs your Apache Kafka clusters. Amazon MSK continuously monitors cluster health and automatically replaces unhealthy nodes with no downtime to your application. In addition, Amazon MSK secures your Apache Kafka cluster by encrypting data at rest.

Attend a webinar to learn more about Amazon Managed Streaming for Kafka.


Fully Compatible

Amazon MSK runs and manages Apache Kafka for you. This makes it easy for you to migrate and run your existing Apache Kafka applications on AWS without changes to the application code. By using Amazon MSK, you maintain open source compatibility and can continue to use familiar custom and community-built tools such as MirrorMaker, which provides replication of streams.

Fully Managed

Amazon MSK lets you focus on creating your streaming applications without having to worry about the operational overhead of managing your Apache Kafka environment. Amazon MSK manages the provisioning, configuration, and maintenance of Apache Kafka clusters and Apache Zookeeper nodes for you. Amazon MSK also shows key Apache Kafka performance metrics in the AWS console.

Highly Available

Amazon MSK creates an Apache Kafka cluster and offers multi-AZ replication within an AWS Region. Amazon MSK continuously monitors cluster health, and if a component fails, Amazon MSK will automatically replace it.

Highly Secure

Amazon MSK provides multiple levels of security for your Apache Kafka clusters including network isolation, using Amazon VPC, AWS IAM for control-plane API authorization, and encryption at rest. Amazon MSK’s encryption support is integrated with AWS Key Management Service (KMS).

How it works

Apache Kafka is a streaming data store that decouples applications producing streaming data (producers) into its data store from applications consuming streaming data (consumers) from its data store. Organizations use Apache Kafka as a data source for applications that continuously analyze and react to streaming data.

With a few clicks in the Amazon MSK Console Amazon MSK provisions your Apache Kafka cluster and manages Apache Kafka upgrades so you are always using the most secure and the fastest version of Apache Kafka. Once you configure your clusters, your applications can stream data from producers to a topic, where this data is read in real-time by consumers.


Get started with Amazon MSK

Get set up for an Amazon MSK cluster

Sign up for AWS and download libraries and tools.

Review the getting-started guide

Learn how to set up your Apache Kafka cluster on Amazon MSK in this step-by-step guide.

Run your Apache Kafka cluster

Start running your Apache Kafka cluster on Amazon MSK. Log in to the Amazon MSK console.