Skip to content
CNPEPlatform Architecture and InfrastructureTwo nodesMedium

Multi-tenancy: quotas, defaults, priority and a tenant node pool

Scenario cnpe-arc-001 · about 15 minutes · 11 points · 7 grader checks

Two teams share one cluster. Give each namespace a ResourceQuota and LimitRange, add a tenant PriorityClass and pin a tenant workload to a dedicated node pool.

  • multi-tenancy
  • resourcequota
  • limitrange
  • priorityclass
  • node-affinity
  • platform-architecture

What you will practise

  • Size per-tenant ResourceQuota and LimitRange objects
  • Use a PriorityClass that never preempts other tenants
  • Pin tenant workloads to a labelled node pool

Start this lab

With the CLI installed and signed in, this command provisions a two nodes cluster on your Mac, applies the scenario setup and prints the task below.

goldenkube start cnpe-arc-001

Task

The task text exactly as the CLI shows it. Solve it on the cluster, then run goldenkube submit.

The namespaces "team-a" and "team-b" are shared by two product teams. 1. In both namespaces create a ResourceQuota "team-quota" with these hard limits: requests.cpu 2, requests.memory 4Gi, limits.cpu 4, limits.memory 8Gi, pods 10. 2. In both namespaces create a LimitRange "team-defaults" that gives every container a default request of 100m CPU / 128Mi memory and a default limit of 500m CPU / 512Mi memory. 3. Create a PriorityClass "tenant-standard" with value 1000 that is not the global default and never preempts other pods. 4. Label the node exam-w1 with platform.example.com/pool=tenants. 5. The Deployment "web" in "team-a" must use the PriorityClass "tenant-standard", run only on nodes of that pool and have both of its replicas Ready.

Requirements and details

Certification
CNPE · Certified Cloud Native Platform Engineer
Domain
Platform Architecture and Infrastructure
Difficulty
Medium
Cluster topology
Two nodes
Cluster features
None beyond the base cluster
Recommended time
15 minutes
Points
11
Grader checks
7
Kubernetes version
1.35
Minimum CLI version
0.1.0
Scenario version
1
Published

Grading runs locally: 7 state checks read your cluster when you submit; the scenario passes when every check passes. Hints, the reference solution and the check definitions are available only inside the CLI, not on this page.

CNPEPlatform Architecture and InfrastructureMedium

Cost management: OpenCost custom pricing, right-sizing and an HPA

OpenCost runs with list prices and the catalog service reserves far more than it uses. Load the on-prem price sheet into OpenCost, right-size the workload and let an HPA scale it.

Single node · ~15 min · 11 points

  • opencost
  • cost-management
  • right-sizing
  • hpa
  • helm
  • platform-architecture

goldenkube start cnpe-arc-002

CNPEPlatform Architecture and InfrastructureMedium

Storage and network baseline: a Retain default class and default-deny

Tenant data must survive claim deletion and tenants must be isolated by default. Make a Retain StorageClass the only default, bind the ledger claim to it and lock the namespace down.

Single node · ~15 min · 10 points · Storage

  • storageclass
  • persistentvolumeclaim
  • reclaim-policy
  • networkpolicy
  • default-deny
  • platform-architecture

goldenkube start cnpe-arc-003

Independent community project, not affiliated with or endorsed by CNCF or The Linux Foundation. Lab results are practice feedback, not an exam score.