Skip to content
Title Kafka as a Service Solution Design - Confluent Cloud
Version 5.0
Approval Pull Request (PR) PR271373

Solution Design - Confluent Cloud

Purpose & Scope

This Solution Design covers Confluent Cloud - services, connectivity and infrastructure as code platform pipeline. See the Solution Designs section for an overview of the entire KaaS Solution.

Abbreviations and definitions

See Abbreviations and definitions

Solution Design Requirements

ID Name
1 Environments
2 Clusters
3 Network Connectivity
4 Schema Registry
5 Infrastructure as Code

Environments

To ensure separation of duties, 4 default environments will be created;

Environment Name Description
Development Used for Development
Test Used for End-to-End Testing
Quality Assurance Used for Quality Assurance
Production Used for Production

Clusters

A corresponding default 2 clusters per environment will be setup initially. One with private networking and one with Public internet access.

Cluster Type Provider and Region Availability Networking
Development Dedicated AWS EU Central Single Zone Private/Corp
Development Standard AWS EU Central Single Zone Public
Test Dedicated AWS EU Central Single Zone Private/Corp
Test Standard AWS EU Central Single Zone Public
Quality Assurance Dedicated AWS EU Central Single Zone Private/Corp
Quality Assurance Standard AWS EU Central Single Zone Public
Production Dedicated AWS EU Central Multi-Zone Private/Corp
Production Standard AWS EU Central Multi-Zone Public

Novo Nordisk BYOK will be used to encrypt the private clusters. The keys will be stored in AWS.

Network Connectivity

Confluent Cloud will have a network connection to Novo Nordisk CORP network via an AWS Transit gateway and Direct Connect setup for the private clusters. The connection will be set up with High Availability. More details to the network setup can be found in the Platform Handbook here

Schema Registry

Stream catalogue is a standard library component in Confluent Cloud, which makes it easy to discover events.

Schema Registry is a standard Confluent product, hosted per environment, to handle the management and lifecycle of the structure of the events.

Advanced Stream Governance is being used to extending the standard tagging capabilities (data categorizations e.g. PII), to also include custom metadata (e.g. contact information, other description) population.

Infrastructure as Code

An infrastructure as code - platform pipeline - will be used for creating new clusters, environments and common services. The pipeline is stored in KaaS ADO project and can only be executed by privileged Platform roles. For more details, see documentation stored with source code - confluent-infra-modules GIT (platform pipeline)

Terraform

The Infrastructure as Code pipeline utilizes Terraform, when provisioning resources. Terraform lets you define resources and infrastructure in human-readable, declarative configuration files, and manages your infrastructure's lifecycle, including state tracking and version controlling.

Traceability between Requirements

Traceability between Requirements (URS) and (SDR)

ID Work Item Type URS (Status Dynamically Updated) GIT SDR
1374692 URS #1374692 Solution Design Requirement: Environments

Solution Design Requirement: Clusters
1422561 URS #1422561 Solution Design Requirement: Network Connectivity
1425495 URS #1425495 Solution Design Requirement: Schema Registry
1422279 URS #1422279 Solution Design Requirement: Infrastructure as Code

Change Log

Version no. CR no. Approved Pull Request Date Change Description
1.0 CHG0100614 PR93750 Date of acknowledgement New document
2.0 CHG0100614 PR111467 See PR Updated broken links
3.0 CHG0136055 PR145250 See PR Updated source code repo links, as part of ADO resource Refactor CHG
4.0 CHG0209137 PR261587 See PR Updated cluster overview for public clusters
5.0 CHG0209137 PR271373 See PR Corrected Change Number for Change log v4.0