ODF packages Ceph, Rook and the Multicloud Object Gateway as operators. Your apps ask for storage with an ordinary PVC or bucket claim. Ceph stores three copies of every write, each in a different failure domain.
New in 4.22: ODF on two-node bare-metal clusters with fencing, erasure-coded pools in internal mode, S3 vector buckets in MCG for AI embeddings, bucket quotas, and centrally managed TLS profiles.
Pick a storage type and follow the request from the pod to three disks. The steps play on their own, or you can click any step.
You install one operator from OperatorHub, the ODF operator. It installs and manages everything else in the openshift-storage namespace.
Pools data across many disks and keeps it replicated and self-healing. Clients compute where data lives with the CRUSH algorithm, so no central lookup sits on the data path.
Deploys Ceph daemons as pods, replaces failed OSDs, and handles upgrades. It turns a StorageCluster custom resource into a running Ceph cluster.
Provisions, attaches, resizes, snapshots and clones volumes when a PVC asks for one of the ODF storage classes. CSI-Addons adds reclaim-space, key rotation and volume replication for DR.
An S3 endpoint that can store buckets on Ceph, AWS S3, Azure Blob, GCS or other S3-compatible stores. It adds mirroring, namespace buckets and caching across them. Apps request buckets with an ObjectBucketClaim.
Ties it all together with the Data Foundation pages in the OpenShift console: capacity, health, alerts and the create-StorageSystem wizard.
Choose a mode before you size anything. The mode decides which nodes run storage, which disks you need and how much CPU and memory ODF takes.
These figures are what ODF's own services need, taken from the ODF 4.22 planning guide. OpenShift and your workloads need their own capacity on top of this.
Balanced is the default profile. Lean suits clusters short on resources; Performance trades more CPU and memory for throughput.
About 10 CPUs and 24 GiB per storage node across 3 nodes, one per failure domain.
Usable space is raw ÷ 3 with the default replica-3 pools. ODF raises a near-full alert at 75%. At 85% it raises a full alert, and you can no longer free space with standard commands. Plan around the green figure.
| Deployment | CPU (logical) | Memory | Devices | Notes |
|---|---|---|---|---|
| Internal · base services | 30 | 72 GiB | 3 | Standard deployment, Balanced profile |
| Internal · each extra device set | +6 | +15 GiB | +3 | Scale in multiples of three, one per failure domain |
| Internal · minimum (Lean) | 24 | 72 GiB | 3 | Convert to standard before adding device sets |
| Performance profile | 45 | 96 GiB | 3 | Highest throughput |
| Compact (3 bare-metal masters) | 24 | 72 GiB | 3 | Extra device set: +6 CPU, +15 GiB |
| External (RHCS elsewhere) | 4 | 16 GiB | n/a | Only clients and MCG run in OpenShift |
| MCG only | 3 | 10 GiB | n/a | Core 1/4 GiB · DB 1/4 GiB · endpoint 1/2 GiB (autoscales 1–2) |
| NFS service (optional) | +6 | +16 GiB | n/a | Disabled by default |
| IBM Power · internal | 48 | 192 GiB | 3 | Each device needs an extra 500 GB disk. External: 24 CPU / 48 GiB |
| IBM Z / LinuxONE · internal | 21 | 72 GiB | 3 | 7 CPU per node plus 1–4 IFLs. Extra set: +3 CPU, +15 GiB |
| Platform | Internal | External | Disks come from |
|---|---|---|---|
| Bare metal | yes | yes | Local SSD/NVMe via Local Storage Operator, at least 0.5 TiB per device in production |
| VMware vSphere (8.0+, VCF 9 or VVF 9 recommended) | yes | yes | vSAN/VMFS volumes, or VMDK/RDM/DirectPath via LSO |
| AWS | yes | no | EBS, gp2-csi or gp3-csi (recommended) |
| Microsoft Azure | yes | no | azure-disk. Performance Plus for disks of 513 GiB and larger |
| Google Cloud | yes | no | gce-pd |
| ROSA with hosted control planes | yes | no | EBS gp3-csi |
| IBM Power · IBM Z / LinuxONE | yes | yes | Local SSD via LSO |
| Red Hat OpenStack (Tech Preview) | yes | yes | Cinder |
Tick items off as you confirm them. Your ticks stay in this browser only.
0 of 13 confirmed