Cloud
Last updated
Last updated
Kubernetes Cluster, should be highly available with two worker nodes in two different AZs at least (or three in case of installing Kafka either using Zookeeper or KRaft inside the cluster since it requires at least two replicas running).
Node sizing depends on which other services will be managed or included in the cluster and on the load on the services, but a good start would be two worker nodes 4 CPUs, 16 GB, 100 GB HD RAM each.
We will need about 25 GB monthly for logs and metrics.
If available, managed services for:
Redis (Instance, cluster in the future) (for caching), we recommend 1 vCPU, 1 GB RAM
MSSQL (Highly Available one master and at least one synchronous replica, with license), we recommend 6 vCPUs, 32 GB RAM, 500 GB SSD
MySQL (Highly Available, one master and at least one synchronous replica), we recommend 2 vCPUs, 8 GB RAM, 500 GB SSD
MongoDB (Highly Available, 3 replicasets with replication factor of at least 2), we recommend 4vCPUs, 16 GB RAM, 80 GB SSD
PostgreSQL (Highly Available), for operational workload (keycloak, vault, etc...) if needed
Kafka Cluster (Highly Available, 3 replicas with replication factor of at least 2) 2 vCPUs, 8 GB RAM, 100 GB PV (high performance) each
RabbitMQ
Network Services for:
VPC with private subnet for all servers (Kubernetes worker nodes and windows servers)
Application Load Balancer (for Windows Server Machines)
NAT Gateway