# How to Manage Kubernetes Node Pool Scaling: Step by Step

> How to Manage Kubernetes Node Pool Scaling. A practical walkthrough with ZopNight: read-only setup, production excluded by default, reversible at every step.

Source: https://zop.dev/learn/how-to/manage-kubernetes-node-pools
Published: 2026-07-01 · Author: avinash-gaurav · Tags: zopnight, how-to, learn

---

Guide to managing Kubernetes node pool scaling schedules across EKS, GKE, and AKS. Scale pools to zero at night and restore them automatically each morning.

This is the practical version, the one you can follow in a single sitting. It starts read-only, touches no production resource by default, and every step is reversible, so there is no point at which you are committed to something you cannot undo. Budget about 20 minutes. Before you start you will want: Kubernetes clusters on EKS, GKE, or AKS; Cloud account access for ZopNight; Understanding of your node pool topology.

## The steps

1. Inventory your node pools.
2. Plan your scaling strategy.
3. Configure node pool schedules.
4. Handle pod disruption budgets.
5. Verify restore process.

## Why this is safe to do today

The reason this is a low-stakes change is that nothing here is destructive. Scheduling stops and starts resources; it never deletes them, and your data persists across a stop exactly as it does across a normal reboot. Production is excluded by default, actions run in dependency order, and every state change is logged with what triggered it.

If you want the fuller context behind this task, the [FinOps](https://zop.dev/learn/finops) guide covers where it fits, and the [AWS EC2 scheduling](https://zop.dev/zopnight/aws/ec2) page shows the same loop applied to a specific resource.

## Getting started

Getting started is intentionally low-stakes:

- Connect your cloud provider with a read-only role. Nothing is scheduled or changed at this stage.
- Let ZopNight discover your non-production resources and review exactly what it found, filtered by account, region, and status.
- Create a schedule in your timezone and attach the non-production resources or groups you want it to cover.
- Watch the first cycle run, with Slack, Teams, or Google Chat notifications on every start, stop, and failure, then layer in idle cleanup and guided rightsizing.

Production stays excluded by default throughout, and because discovery and recommendations are read-only, you can prove the value before you enable a single action.

## Frequently asked questions

### What happens to pods when node pools scale to zero?

Pods are evicted as nodes drain. Kubernetes deployments and stateful sets remain defined in the API server. When nodes scale back up, the scheduler places pods on the new nodes automatically.

### Can I keep system pools running while scaling workload pools?

Yes. Configure ZopNight to only scale specific node pools. System pools running cluster-critical services (CoreDNS, kube-proxy) can remain running while workload pools for applications scale to zero.
