/oss/en/narwhal/architecture

Cluster Architecture

Narwhal 3M+3W node topology, HA control plane, and integration seams.

Cluster Architecture

Narwhal adopts a resilient 6-node high-availability (HA) topology designed with zero single points of failure.

Canonical documentation path: /en/docs/narwhal/architecture/ · Korean: /ko/docs/narwhal/architecture/

Legacy flat documentation URLs such as narwhal-architecture remain compatible with the canonical nested documentation structure.

Node Topology & IP Allocation

Node NameRolevCPU / RAMIP AddressCore Running Services
master-1Control Plane, NFS Host2 CPU / 4 GiB192.168.56.10etcd, kube-apiserver, kube-vip, NFS Server, dnsmasq
master-2Control Plane2 CPU / 4 GiB192.168.56.11etcd, kube-apiserver, kube-vip, dnsmasq
master-3Control Plane2 CPU / 4 GiB192.168.56.12etcd, kube-apiserver, kube-vip
worker-1Platform Infrastructure4 CPU / 8 GiB192.168.56.21Cilium, APISIX, MetalLB, Keycloak, ArgoCD
worker-2Telemetry & Observability4 CPU / 8 GiB192.168.56.22Prometheus, Grafana, Loki, Tempo, OpenBao
worker-3Storage & User Workloads4 CPU / 8 GiB192.168.56.23SeaweedFS S3, CloudNativePG, Narwhal Portal

HA Control Plane (kube-vip + etcd)

kube-vip manages a virtual IP (192.168.56.100) floating across the three master nodes. In the event of a master node failure, the VIP transitions within 1 second to ensure uninterrupted API operations.

               kubectl / Argo CD / CI Workflows


                 192.168.56.100 (kube-vip VIP)

        ┌─────────────────────┼─────────────────────┐
        ▼ (Active)            ▼ (Standby)           ▼ (Standby)
   [ master-1 ]          [ master-2 ]          [ master-3 ]
   - kube-apiserver      - kube-apiserver      - kube-apiserver
   - etcd member 1       - etcd member 2       - etcd member 3

XFS Project Quota Node Storage

All nodes run on Kube-Ready-Box (dasomel/ubuntu-26.04-xfs) with XFS Project Quotas enabled across /srv/nfs and container storage partitions, preventing storage exhaustion at the kernel level.