Skip to main content
compliance · gcp

Persistent disks with no snapshot anywhere

resource types
1
rule IDs covered
1
severity
medium

What does ZopNight detect here?

Persistent disks with zero snapshots have no point-in-time recovery if data is corrupted or deleted. ZopNight fires only when the discoverer positively recorded has_snapshot=false, skips Kubernetes-managed disks whose backups belong to the control plane, and recommends a snapshot schedule: daily with 7-day retention is the baseline.

Signal and threshold

How ZopNight evaluates Persistent disks with no snapshot anywhere.
Field Value
Rule IDsRC-144
Categorycompliance
Severitymedium
Metricnone — pure configuration read
Sourcedisk_backup.go

A disk with no history

Persistent disks replicate within their zone against hardware failure, but replication is not recovery: corruption, ransomware, and accidental deletion replicate too. A disk with zero snapshots has exactly one version of its data, the current one, and any mistake becomes permanent the moment it syncs. The discoverer resolves this per disk and stamps has_snapshot explicitly in both directions; the rule fires only on a recorded false, so a disk whose snapshot state was never inspected is silently skipped rather than presumed unprotected.

Why GKE disks are exempt

Disks created by Kubernetes (PVC backings and GKE node boot disks) are excluded before any other logic. Their backup story belongs to the cluster layer (volume snapshots, Backup for GKE), and a disk-level advisory on them would nag the wrong team about the wrong mechanism. The same Kubernetes-managed gate protects these disks in the unattached- disk delete rule, RC-112; the two rules share one definition of “not yours to touch”.

Schedules beat manual snapshots

A manual snapshot is a good first move and a bad steady state, because it ages. The durable fix is a resource policy: create a snapshot schedule (daily, 7-day retention as the baseline) and attach it to the disk, after which snapshots happen without anyone remembering them. Multi-day retention matters because corruption is often discovered days late; a single rolling snapshot can rotate the damage into your only copy.

List disks lacking snapshots

Terminal window
gcloud compute disks describe my-disk --zone us-central1-a \
--format="value(name,resourcePolicies)"

An empty resourcePolicies means no schedule is attached; cross-check existing one-off snapshots with gcloud compute snapshots list --filter="sourceDisk~my-disk".

Incremental cost is small

GCP snapshots are incremental, and after the first each stores only changed blocks, so the storage cost of protecting a typical disk is a small fraction of the disk itself. This is a $0-savings compliance finding: the recommendation spends a little to remove a data-loss scenario, and no cost-materiality floor applies to it.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

417 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

417 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·