Skip to content

ICA hands-on labs

Labs: Preview

Istio Certified Associate: exam-style tasks on a real kubeadm cluster on your own Mac, built and graded by the GoldenKube CLI. Each card shows the domain, the cluster topology it needs, the recommended time and its points; the scenario page has the full task text. Scenarios run Istio 1.29, the version the ICA exam environment runs, on Kubernetes 1.35.

What the ICA bank covers

The Linux Foundation product page calls ICA "an online, proctored, performance-based and multiple-choice exam", but the ICA candidate instructions say "The exam consists of 15-20 performance-based tasks", completed on a designated host, and mention no multiple-choice section; they also state that "The ICA environment is currently running Istio v1.29". GoldenKube therefore practises ICA with hands-on labs only: each scenario is an Istio task on a local Kubernetes cluster, graded on the state you leave behind.

The scenarios are written against the four official domains: installing Istio with istioctl or Helm, in sidecar or ambient mode, customizing the installation and upgrading it with a canary or in place (installation, upgrade and configuration); ingress and egress traffic, routing, destination rules, traffic shifting, connecting to external services, resilience features such as timeouts, retries, circuit breaking and outlier detection, and fault injection (traffic management); authorization, authentication with mTLS and JWT, and TLS at the edge (securing workloads); and configuration, control plane and data plane problems (troubleshooting).

The ICA exam, from the official pages

Questions15-20 performance-based tasks source
Duration (minutes)120 source
Passing score68% source
Price (USD)250 source
Validity (years)2 source
DeliveryOnline, proctored, performance-based and multiple-choice source
PrerequisitesNone source
Retake policyOne retake per exam purchase if a passing score is not achieved source
Curriculum versionExam environment runs Istio v1.29 source

Domain coverage

Published scenarios per official ICA domain, next to the domain's exam weight (checked 2026-10-28 on the official page). 20 published scenarios today.

DomainExam weightPublished scenarios
Installation, Upgrade & Configuration20%
4
Traffic Management35%
7
Securing Workloads25%
5
Troubleshooting20%
4

Mock exam mode

goldenkube exam ica draws a curriculum-weighted set: 15 tasks in 120 minutes, pass at 68%. Solutions and hints are hidden in exam mode.

Scenarios

11 of 20 scenarios match · Clear filters

ICAInstallation, Upgrade & ConfigurationMedium

Customise the installation and upgrade Istio in place

Write an IstioOperator that changes mesh defaults and gateways, then use it for an in-place upgrade from 1.29.9 to 1.29.10.

Single node · ~10 min · 9 points

  • istiooperator
  • in-place-upgrade
  • meshconfig
  • egress-gateway
  • installation-upgrades-configuration

goldenkube start ica-ins-002

ICAInstallation, Upgrade & ConfigurationMedium

Install Istio in ambient mode and enrol a namespace

Install the ambient profile and add an existing namespace to the ambient data plane without sidecars.

Single node · ~10 min · 8 points

  • ambient
  • ztunnel
  • istio-cni
  • istioctl
  • installation-upgrades-configuration

goldenkube start ica-ins-004

ICASecuring WorkloadsMedium

Allow one service account to call two paths

Write an ALLOW AuthorizationPolicy that admits a single workload identity for GET on two paths and nothing else.

Single node · ~8 min · 8 points

  • authorizationpolicy
  • allow
  • principals
  • spiffe
  • securing-workloads

goldenkube start ica-sec-002

ICASecuring WorkloadsMedium

Deny by default, allow reads, deny one caller

Combine a namespace-wide deny-all with an ALLOW and a DENY AuthorizationPolicy and reason about their evaluation order.

Single node · ~9 min · 9 points

  • authorizationpolicy
  • deny-by-default
  • allow-nothing
  • deny
  • securing-workloads

goldenkube start ica-sec-005

ICATroubleshootingMedium

Half of the requests fail with 503

A weighted route points at a subset that does not exist; repair the configuration without touching the route.

Single node · ~8 min · 8 points

  • destinationrule
  • subsets
  • istioctl-analyze
  • http-503
  • troubleshooting

goldenkube start ica-trb-002

ICATroubleshootingMedium

The control plane is down and new pods are rejected

istiod does not start any more, so the injection webhook blocks pod creation; restore the control plane.

Single node · ~8 min · 8 points

  • istiod
  • control-plane
  • webhook
  • image
  • troubleshooting

goldenkube start ica-trb-003

ICATraffic ManagementMedium

Route requests by header to a service version

Define service subsets and send requests of one user to v2 while everybody else stays on v1.

Single node · ~8 min · 8 points

  • virtualservice
  • destinationrule
  • subsets
  • header-routing
  • traffic-management

goldenkube start ica-trf-002

ICATraffic ManagementMedium

Lock down egress and register one external host

Switch the mesh to registry-only outbound traffic and allow exactly one external host with a ServiceEntry.

Single node · ~9 min · 9 points

  • egress
  • serviceentry
  • outbound-traffic-policy
  • meshconfig
  • traffic-management

goldenkube start ica-trf-004

ICATraffic ManagementMedium

Timeouts, retries and circuit breaking

Make a slow backend fail fast with a timeout and retries, and protect it with a connection pool and outlier detection.

Single node · ~10 min · 10 points

  • resilience
  • timeout
  • retries
  • circuit-breaking
  • outlier-detection
  • traffic-management

goldenkube start ica-trf-005

ICATraffic ManagementMedium

Inject delays and aborts

Use VirtualService fault injection to delay test traffic and fail half of the remaining requests.

Single node · ~8 min · 8 points

  • fault-injection
  • delay
  • abort
  • virtualservice
  • traffic-management

goldenkube start ica-trf-006

ICATraffic ManagementMedium

Locality failover with outlier detection

Configure locality-aware load balancing that fails over from one region to another when endpoints are ejected.

Single node · ~7 min · 7 points

  • locality-load-balancing
  • failover
  • outlier-detection
  • destinationrule
  • traffic-management

goldenkube start ica-trf-007

How a run works

  1. Install the CLI and Multipass, then run goldenkube doctor.
  2. Sign in with goldenkube login (free account).
  3. Start a scenario with its id; the CLI provisions a fresh cluster and prints the task.
  4. Solve it on the cluster, run goldenkube submit; the result appears on your dashboard.

Grading happens on your machine and is practice feedback, not an official score. Tasks are public; hints, reference solutions and grader internals are not.

Frequently asked questions

Can I run these ICA labs today?

Not yet. The ICA scenarios are published and readable here, but the first signed build of the CLI is not on the Homebrew tap, so the catalog is a preview. Running a scenario needs that release and a free account.

Is ICA a multiple-choice or a hands-on exam?

The Linux Foundation product page describes it as "performance-based and multiple-choice", while the ICA candidate instructions list 15 to 20 performance-based tasks and no multiple-choice section. GoldenKube treats ICA as a hands-on exam and practises it with labs, not quiz questions.

Which Istio version do the ICA labs use?

The ICA candidate instructions state that the exam environment "is currently running Istio v1.29", and the GoldenKube ICA scenarios target that version. Istio 1.29 reached its upstream end of life on 15 October 2026, so the Linux Foundation may move the exam to a newer release; check the official instructions before you book.

Sources