Assess migration readiness with AI tools
You can use the migrate-to-msk AI skill to assess your source cluster's compatibility with Amazon MSK Express and generate a right-sized target cluster recommendation before you begin migration. The skill simplifies the analysis that you would otherwise perform manually by comparing your Apache Kafka configuration against Express requirements. You can also run an optional simulation that deploys a temporary Express cluster at your target size and drives a synthetic load at a throughput you choose, so you can see how that cluster behaves under load before you migrate.
Prerequisites
To use the migrate-to-msk skill, you need the following:
An AI coding assistant that supports AWS MCP skills, such as Amazon Q Developer or a compatible MCP-enabled tool. Alternatively, you can download the migrate-to-msk skill directly from the AWS Agent Toolkit
on the GitHub website. Knowledge of your source Apache Kafka cluster's configuration. You can provide this through infrastructure-as-code files (Terraform, AWS CDK, AWS CloudFormation, Docker Compose, Kubernetes manifests), Apache Kafka CLI command output, or manual input.
Python runtime with
uvinstalled.For the optional Simulation phase only: an AWS account with the AWS CLI configured and permissions to deploy the simulation resources (an MSK Express cluster, an EC2 load-generation fleet, IAM roles, a VPC, and a CloudWatch dashboard). This phase creates real resources in your account; the Discovery and Assessment phases need no AWS access.
Invoke the skill
Invoke the skill by asking your AI assistant to help you migrate to MSK. You can use natural language prompts.
Tip
Example invocations:
"Help me migrate my Kafka cluster to MSK Express"
"Assess my Kafka cluster's compatibility with MSK Express"
"I want to move my streaming workloads to MSK"
The skill guides you through the process interactively by gathering information about your cluster, analyzing it against Express requirements, and producing artifacts that you can use to plan your migration.
How the skill works
The skill provides three phases: Discovery, Assessment, and an optional Simulation. The Discovery and Assessment phases do not make API calls to your cluster or modify your infrastructure — all analysis runs locally on the data that you provide, and all outputs are saved to your working directory. The optional Simulation phase is different: after you confirm the target account and consent to the deployment, it provisions temporary resources in your AWS account so you can measure how an Express cluster of your target size performs under a synthetic load.
Phase 1: Discovery
The skill inventories your source Kafka cluster by reading your infrastructure files, ingesting Kafka CLI output, or accepting manual input. It extracts broker topology, Kafka version, authentication settings, topic configurations, and workload metrics into a structured profile that Phase 2 uses for assessment.
You can provide data through any combination of:
Infrastructure-as-code files — Terraform, CDK, CloudFormation, Docker Compose, or Kubernetes manifests
Kafka CLI output — the skill displays the commands for you to run on your cluster
Manual input — you describe your cluster configuration in conversation
Phase 2: Assessment
The skill evaluates your cluster profile against MSK Express across five compatibility pillars and produces a target cluster sizing recommendation:
Topology — Availability zone count, broker count, and coordination mechanism (KRaft vs. ZooKeeper)
Kafka version — Whether your Kafka version is supported on Express (3.6, 3.8, 3.9) and client compatibility considerations
Broker and topic configs — Which of your custom configurations carry over, which Express manages internally, and which require adjustment
Authentication — Whether your authentication mechanism is supported on Express
Quotas — Whether your workload fits within Express per-broker throughput, partition, and connection limits
Each pillar produces one of the following finding types:
INFO — Your source configuration already aligns with MSK Express. No action needed.
ADVISORY — Your source configuration differs from MSK Express, but Express handles the adjustment automatically. Review the change so the resulting behavior is expected.
ACTION_REQUIRED — A configuration or condition that MSK Express does not support in its current form. Remediate on the source cluster before migration.
Phase 3: Simulation (optional)
The skill can provision a temporary, isolated MSK Express cluster and a load-generation client fleet in your AWS account so you can see how an Express cluster of your target size behaves under load before you migrate. This phase is optional and runs only after you confirm the target account and explicitly consent to the deployment. Only one simulation can exist per account at a time.
Important
The Simulation phase deploys real resources in your AWS account — an MSK Express cluster and an EC2 fleet — that continue to incur charges until you delete them. When you finish, ask the skill to tear down the simulation, or delete its CloudFormation stack yourself, to stop incurring cost.
You choose the cluster sizing — Express instance type, broker count, and Kafka version — from your assessment results or directly. The skill deploys the cluster and fleet, and you install a Kafka client that you provide. You then run one of two tests:
End-to-End Latency — Producers drive a steady target throughput while the skill samples produce-to-consume round-trip latency.
Broker Restart Under Load — The cluster sustains target throughput while one broker is rebooted, so you can observe failover behavior and recovery.
The skill creates an Amazon CloudWatch dashboard where the test metrics — cluster throughput, broker health, client-side latency, and consumer lag — appear. You interpret the results against your own performance targets.
Skill outputs
The skill saves the following artifacts to migrate-to-msk-skill-artifacts/<cluster_name>/ in your working directory:
Cluster profile (
cluster-config.json) — A structured inventory of your source cluster. You can review and refine this file before you run the assessment.Compatibility report (
compatibility.<cluster_name>.json) — Detailed findings for each of the five assessment pillars, including configuration keys, current values, and MSK Express requirements.Sizing workbook (
MSK_Sizing_Pricing.<cluster_name>.xlsx) — The MSK Sizing and Pricing workbook with your workload inputs pre-filled. Open the workbook in a spreadsheet application to view the recommended Express broker type, broker count, and estimated monthly cost.Sizing inputs record (
msk-sizing-inputs.<cluster_name>.json) — A JSON record of the workload values computed from your cluster profile and the workbook cells they map to.
Use these artifacts to plan your migration timeline, estimate costs, and identify configuration changes to make before you create your MSK Express cluster and set up Amazon MSK Replicator for data migration.
If you run the optional Simulation phase, it instead deploys an AWS CloudFormation stack (the Express cluster, load-generation fleet, and supporting resources) and an Amazon CloudWatch dashboard in your account, rather than writing local files.