Rook Ceph Encryption

Published
Length
3 min read

Luis Felipe Dias

All posts

You set up rook ceph encryption by turning on disk and network settings in your cluster manifest. The storage operator then locks raw block drives at rest and scrambles data moving between nodes. Platform teams often turn on these storage flags during the first cluster build. Still, they still give broad cluster admin roles to engineers for daily maintenance. When an engineer holds wide cluster permissions, disk locks will not stop a bad command. Anyone with high privileges can still read secre

Encryption at Rest: the complete guide

Architecture patterns, implementation strategies, and security best practices. Delivered to your inbox.

Free white paper. No spam. Unsubscribe anytime.

You set up rook ceph encryption by turning on disk and network settings in your cluster manifest. The storage operator then locks raw block drives at rest and scrambles data moving between nodes.

Platform teams often turn on these storage flags during the first cluster build. Still, they still give broad cluster admin roles to engineers for daily maintenance. When an engineer holds wide cluster permissions, disk locks will not stop a bad command. Anyone with high privileges can still read secret keys or delete live storage pools.

How rook ceph encryption works across your storage nodes

Rook manages Ceph storage inside Kubernetes using custom cluster definitions. When you turn on disk protection, the operator uses Linux kernel tools to lock each drive. It formats the raw storage devices before adding them to the storage pool. The system creates a unique master key for every single physical disk.

By default, the operator stores these disk keys as native Kubernetes secret objects. Many teams choose an external key manager instead to keep keys off the cluster nodes. When a storage pod starts, it asks the key store for the right secret. It then mounts the locked drive and joins the storage cluster.

You can also lock data at the volume level for specific workloads. In this setup, the storage driver locks individual persistent volumes for each app. Each claim gets its own secret key inside the namespace. This separates data between different teams that share the same physical disks.

Data in flight needs protection too. Ceph uses its own network protocol to copy blocks across storage nodes. When you turn on wire protection, the cluster scrambles all traffic between pods and disks. This stops attackers from reading storage blocks as they cross the node network.

What native storage encryption solves and where gaps remain

Native disk locking protects your data if someone steals a hard drive from a server. Volume locking keeps one app from reading raw blocks owned by another app. Network scrambling stops packet sniffing across your cloud or data center links. Together, these controls help teams meet strict data safety rules for storage.

Encryption at Rest: architecture patterns and best practices

Continue reading? Get the full guide.

Free. No spam. Unsubscribe anytime.

Still, storage encryption only guards data against theft outside the running system. Once the operator unlocks a disk, the cluster serves clear data to authorized users. Native cluster roles decide who can log in to the Kubernetes API or storage toolbox. They do not inspect what individual commands or queries do during an active session.

Engineers often need the Ceph toolbox pod to check cluster health or fix broken disks. To run this pod, teams usually grant broad admin permissions to the namespace. With those rights, a user can list Kubernetes secrets and read raw disk keys. They can also mount volumes or run destructive storage commands by mistake.

Even with locked disks, database pods read and write clear records all day. If a developer logs in to a database on that storage, disk locks do nothing. The storage layer trusts the app and returns every row requested. Without command checks and field masking, sensitive records like card numbers or emails stay exposed.

Managing key stores and operator roles in production

To reduce risk, store your master disk keys outside the Kubernetes secret database. An external key management service keeps master secrets separate from cluster etcd backups. You give the storage operator a narrow role so it only reads the keys it needs. You should also rotate those master keys on a regular schedule.

Next, lock down who can view the storage namespace and run admin pods. Remove standing admin roles from daily developer accounts. Audit every command run inside the cluster and restrict direct shell sessions to storage nodes. Pairing disk protection with strict session controls keeps both physical drives and live data safe.

Check database and API queries on the wire

Identity tools, roles, and network rules decide who opens a session. Setup alone cannot check what each query does or mask sensitive values in a response once a session starts. When workflows touch Postgres, MySQL, SQL Server, MongoDB, ClickHouse, Kubernetes APIs, SSH, or internal HTTP APIs, hoop.dev runs beside those services as an open-source proxy, a sidecar for your Postgres or API. It inspects requests coming in and results going back on the wire.

Your login details and client tools stay as they are while hoop.dev guardrails refuse bad deletes or drops before they run. On responses, hoop.dev data masking rewrites matched sensitive values in memory. Furthermore, hoop.dev holds SOC 2 Type II, is MIT licensed, and writes every query and decision to an audit trail that generates evidence for HIPAA, GDPR, and PCI DSS. See the source on GitHub.

Frequently asked questions

Can I turn on disk encryption for existing Ceph drives?

No, you cannot lock an active Ceph disk in place without wiping its data. Instead, you must add new encrypted drives and let the cluster move the data over.

What is the difference between OSD encryption and PVC encryption?

OSD encryption locks the entire physical drive at the host level using one key. PVC encryption locks individual container volumes so each app uses its own secret key.

Does network encryption slow down Ceph storage traffic?

Scrambling network traffic uses extra processor power on every storage node during reads and writes. Most modern servers handle this load well with built-in hardware support for math tasks.

Save the open-source gateway.

hoop is MIT-licensed infrastructure for controlling how AI agents reach production data. Star hoophq/hoop so you can inspect it, deploy it, or share it when your team starts governing agent access.