Configure static PV binding
Bind Red Hat Edge Manager PersistentVolumeClaims (PVCs) to pre-provisioned PersistentVolumes (PVs) during installation to control which PVs the database and Alertmanager use. Use this approach on clusters without dynamic storage provisioning or when you need explicit PV assignment.
Before you begin
- A Red Hat OpenShift Container Platform cluster where you want to bind Red Hat Edge Manager PVCs to specific pre-provisioned PVs, either because the cluster has no dynamic storage provisioner or because you want explicit control over PV selection.
- Pre-provisioned PersistentVolumes with sufficient capacity: at least the configured
db.builtin.storage.size(default 60 GiB) for the PostgreSQL database PV and minimum 2 GiB for the Alertmanager PV. - PVs for the PostgreSQL database use a storage backend other than NFS. NFS does not support
chownoperations required by the PostgreSQL container startup process to set data directory ownership via the podfsGroupsecurity context. - PVs support
ReadWriteOnceaccess mode. - Cluster administrator permissions.
- The Helm CLI is installed (for disconnected installation) or you have access to the Red Hat OpenShift Container Platform Software Catalog (for connected installation).
About this task
Red Hat Edge Manager creates two PVCs during installation:
- A PVC for the built-in PostgreSQL database, which requires at least the configured
db.builtin.storage.size(default 60 GiB). - A PVC for the Alertmanager, which requires a minimum of 2 GiB.
On clusters without a dynamic StorageClass, you must pre-provision PVs and configure the Helm chart to bind PVCs to those PVs. You can use one of two binding approaches:
- Name-based binding (
volumeName) - Binds the PVC directly to a PV by its resource name. Use this approach when you know the exact PV name and want a deterministic one-to-one binding.
- Label-based binding (
selector.matchLabels) - Binds the PVC to any PV that carries matching labels. Use this approach when you manage PVs through labeling conventions or want flexibility in PV selection.
If you set both volumeName and selector.matchLabels for the same component, the Helm chart renders both fields on the PVC. Kubernetes then requires the PVC to match a PV that satisfies both the name and the label selector.