Skip to main content
TeamEnterprise

CloudFormation

Kpow is a great fit for ECS or EKS because it a single docker container with zero dependencies.

Kpow has a suggested allocation of 2GB heap making it ideal for provisioning as a FARGATE task.

Kpow connects to your Kafka cluster with exactly the same configuration as a Kafka Producer or Consumer.

This quickstart provides help getting Kpow up and running in Amazon ECS in minutes.

Licensing options

The Kpow container is available in two places:

Installation

Our GitHub repository configuration templates for deploying Kpow via AWS CloudFormation:

These templates are intended as quick-start examples to demonstrate basic provisioning and configuration. You are free to modify and extend them to meet your specific needs.

Each template defines the following AWS resources:

  • AWS::ECS::TaskDefinition to run your Kpow container.
  • AWS::ECS::Service containing the Task, provisioned within a Subnet designated by you.
  • AWS::EC2::SecurityGroup with permissive egress to ECR/Kafka and ingress on the UI port.
  • AWS::IAM::Role providing IAM actions to ECS, Logs, and Marketplace:RegisterUsage (if applicable).
tip

Important: Ensure your Kafka cluster's security group allows inbound traffic on the bootstrap port (e.g. 9092 or 9094 for MSK with SSL) for Kpow to connect successfully.

Authentication & Encryption

Kpow supports all standard Kafka client authentication options, configured via environment variables.

The Cloudformation scripts provided here support PLAIN and SASL connections.

Known Issues

If stack creation fails with a 'CannotPullContainer' error please either:

  • Select the 'Auto-Assign-Public-IP' deployment option; or,
  • Ensure the subenet you choose to deploy Kpow into has access to a NAT.

This is required to pull your Kpow subscription container image, see here for more information.