CloudEstimate

Size Apache Kafka via Confluent Platform on Google Cloud

Extra Small — up to 50 MB/s ingress with short retention windows

Monthly cost

$4,384.06

Annual cost

$52,609/year

Line-item breakdown

Compute $3,228.06
Storage $1,156.00
Other $0.00

Components provisioned

Role Instance vCPU GB RAM Storage
Broker 3 × n2-standard-16 16 64 2 TB
Kraft Controller 3 × n2-standard-2 2 8 100 GB
Connect 2 × n2-standard-2 2 8 50 GB
Schema Registry 2 × n2-standard-2 2 8 50 GB
Control Center 1 × n2-standard-4 4 16 300 GB

Why this sizing

Apache Kafka via Confluent Platform at the extra small tier maps to the departmental-cluster reference architecture on Google Cloud in us-central1. Compute is the largest line item in this estimate, accounting for 74% of monthly cost. High availability is not included here, so this baseline stays lean and leaves failover headroom out of the monthly total. Broker carries the heaviest storage footprint at 2 TB on each of its 3 nodes.

Export

Share the current URL or copy the launch Terraform baseline.

Google Cloud Terraform baseline
terraform {
  required_version = ">= 1.6.0"

  required_providers {
    google = {
      source  = "hashicorp/google"
      version = "~> 6.0"
    }
  }
}

variable "project_id" {
  description = "Google Cloud project ID for this deployment."
  type        = string
  default     = "replace-with-project-id"
}

provider "google" {
  project = var.project_id
  region  = "us-central1"
  zone    = "us-central1-a"
}

# Generated for Google Cloud from the current estimate state.

resource "google_compute_disk" "broker_1_data" {
  count = 3
  name  = "apache-kafka-confluent-platform-broker-1-data-${count.index + 1}"
  type  = "pd-ssd"
  zone  = "us-central1-a"
  size  = 2000
}

resource "google_compute_instance" "broker_1" {
  count        = 3
  name         = "apache-kafka-confluent-platform-broker-1-${count.index + 1}"
  machine_type = "n2-standard-16"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = "projects/debian-cloud/global/images/family/debian-12"
      size  = 50
      type  = "pd-balanced"
    }
  }

  network_interface {
    network = "default"
    access_config {}
  }
  attached_disk {
    source = google_compute_disk.broker_1_data[count.index].id
    mode   = "READ_WRITE"
  }

  labels = {
    app  = "apache-kafka-confluent-platform"
    role = "broker"
  }
}


resource "google_compute_disk" "kraft_controller_2_data" {
  count = 3
  name  = "apache-kafka-confluent-platform-kraft-controller-2-data-${count.index + 1}"
  type  = "pd-ssd"
  zone  = "us-central1-a"
  size  = 100
}

resource "google_compute_instance" "kraft_controller_2" {
  count        = 3
  name         = "apache-kafka-confluent-platform-kraft-controller-2-${count.index + 1}"
  machine_type = "n2-standard-2"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = "projects/debian-cloud/global/images/family/debian-12"
      size  = 50
      type  = "pd-balanced"
    }
  }

  network_interface {
    network = "default"
    access_config {}
  }
  attached_disk {
    source = google_compute_disk.kraft_controller_2_data[count.index].id
    mode   = "READ_WRITE"
  }

  labels = {
    app  = "apache-kafka-confluent-platform"
    role = "kraft-controller"
  }
}


resource "google_compute_disk" "connect_3_data" {
  count = 2
  name  = "apache-kafka-confluent-platform-connect-3-data-${count.index + 1}"
  type  = "pd-ssd"
  zone  = "us-central1-a"
  size  = 50
}

resource "google_compute_instance" "connect_3" {
  count        = 2
  name         = "apache-kafka-confluent-platform-connect-3-${count.index + 1}"
  machine_type = "n2-standard-2"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = "projects/debian-cloud/global/images/family/debian-12"
      size  = 50
      type  = "pd-balanced"
    }
  }

  network_interface {
    network = "default"
    access_config {}
  }
  attached_disk {
    source = google_compute_disk.connect_3_data[count.index].id
    mode   = "READ_WRITE"
  }

  labels = {
    app  = "apache-kafka-confluent-platform"
    role = "connect"
  }
}


resource "google_compute_disk" "schema_registry_4_data" {
  count = 2
  name  = "apache-kafka-confluent-platform-schema-registry-4-data-${count.index + 1}"
  type  = "pd-ssd"
  zone  = "us-central1-a"
  size  = 50
}

resource "google_compute_instance" "schema_registry_4" {
  count        = 2
  name         = "apache-kafka-confluent-platform-schema-registry-4-${count.index + 1}"
  machine_type = "n2-standard-2"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = "projects/debian-cloud/global/images/family/debian-12"
      size  = 50
      type  = "pd-balanced"
    }
  }

  network_interface {
    network = "default"
    access_config {}
  }
  attached_disk {
    source = google_compute_disk.schema_registry_4_data[count.index].id
    mode   = "READ_WRITE"
  }

  labels = {
    app  = "apache-kafka-confluent-platform"
    role = "schema-registry"
  }
}


resource "google_compute_disk" "control_center_5_data" {
  count = 1
  name  = "apache-kafka-confluent-platform-control-center-5-data-${count.index + 1}"
  type  = "pd-ssd"
  zone  = "us-central1-a"
  size  = 300
}

resource "google_compute_instance" "control_center_5" {
  count        = 1
  name         = "apache-kafka-confluent-platform-control-center-5-${count.index + 1}"
  machine_type = "n2-standard-4"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = "projects/debian-cloud/global/images/family/debian-12"
      size  = 50
      type  = "pd-balanced"
    }
  }

  network_interface {
    network = "default"
    access_config {}
  }
  attached_disk {
    source = google_compute_disk.control_center_5_data[count.index].id
    mode   = "READ_WRITE"
  }

  labels = {
    app  = "apache-kafka-confluent-platform"
    role = "control-center"
  }
}

Related views

Sources

Reference architecture: Apache Kafka via Confluent Platform for departmental-cluster, version Confluent Platform current self-managed deployment guidance, retrieved April 13, 2026.

https://docs.confluent.io/platform/current/kafka/deployment.html

Pricing: Google Cloud pricing snapshot, retrieved April 12, 2026.

Commercial pricing only. GovCloud, sovereign cloud, and discounts beyond those shown are not modelled.

Not included in this estimate

  • Vendor licensing and support
  • Professional services
  • Network egress
  • Compliance controls
  • Backup storage
  • Monitoring

Based on Confluent Platform self-managed deployment guidance and translated into VM-based planning tiers.

Estimate excludes producer and consumer application hosts, ksqlDB, Flink services, tiered storage, network transfer, and Confluent licensing.

Other workloads on Google Cloud

Consul

Self-managed Consul for service discovery, service mesh control, and network configuration across distributed workloads.

HashiCorp, Inc. 3 sizes

Size on Google Cloud →