Soru

Zorluk: OrtaDeploying and Managing Google Kubernetes Engine (GKE) Clusters and Workloads

A developer needs to deploy a batch processing workload consisting of stateless, fault-tolerant jobs to an existing Google Kubernetes Engine (GKE) Standard cluster. The primary operational objective is to minimize compute costs for these batch tasks without risking the stability of critical system workloads running on the cluster. Which node pool configuration strategy should the developer implement?

  1. Create a dedicated node pool with Spot VMs enabled, apply a taint to the node pool, and configure the batch deployment manifests with matching tolerations.Cevap
  2. B
    Update the existing default node pool that hosts core system components to use Spot VMs so that all cluster workloads immediately reduce compute expenses.
  3. C
    Migrate the entire GKE cluster to GKE Autopilot with custom OS kernel parameter overrides to force low-cost preemptible control plane nodes.
  4. D
    Execute `gcloud config set container/use_spot_vms true` on the local workstation before deploying the workload using `kubectl apply`.

Cevap

Create a dedicated node pool with Spot VMs enabled, apply a taint to the node pool, and configure the batch deployment manifests with matching tolerations.
Stateless, fault-tolerant batch workloads are ideal candidates for GKE Spot VM node pools due to significant cost savings. Creating a dedicated node pool with taints ensures that default or non-fault-tolerant system workloads are not placed on preemptible nodes, while adding matching tolerations to the batch workload allows Kubernetes to schedule those specific pods onto the Spot nodes.

Adım Adım Çözüm

1
Identify workload characteristics and requirements
Workloads are stateless, batch-oriented, and fault-tolerant, making them ideal candidates for Spot VMs.
Spot VMs offer steep discounts but can be reclaimed by GCP at any time with short notice.
2
Isolate fault-tolerant workloads from core cluster workloads
Provision a new dedicated node pool using Spot VMs rather than modifying default system node pools.
Core cluster system pods require guaranteed availability and should not run on preemptible instances.
3
Configure scheduling constraints using taints and tolerations
Taint the Spot node pool and add corresponding tolerations to the batch deployment specs.
Taints ensure that only pods specifically configured to tolerate preemptible nodes are scheduled onto the Spot node pool.

Anahtar Kavram

Configuring Spot VM Node Pools with Taints and Tolerations in GKE
Bu soruyu puanla