diff --git a/SUMMARY.md b/SUMMARY.md index c6c7e1be..ae454b0d 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -441,7 +441,7 @@ * [No Space Left on the Device Warning](deployment/deployment-guide/troubleshooting/no-space-left-on-the-device-warning.md) * [Restart Deployment or StatefulSets to Redistribute Pods across Nodes](deployment/deployment-guide/redistribute-pods-across-nodes-by-restarting-deployment-statefulsets.md) * [Rerun Jobs in Kubernetes Cluster](deployment/deployment-guide/rerun-jobs-in-kubernetes-cluster.md) - * [Persistent Storage - OpenG2P System](deployment/persistent-storage-openg2p-system.md) + * [Persistent Storage](deployment/persistent-storage.md) * [Documentation Guides](documentation-guides/README.md) * [Documentation Guidelines](documentation-guides/documentation-guidelines/README.md) * [Embed a Miro diagram](documentation-guides/documentation-guidelines/embed-a-miro-diagram.md) diff --git a/deployment/persistent-storage-openg2p-system.md b/deployment/persistent-storage.md similarity index 52% rename from deployment/persistent-storage-openg2p-system.md rename to deployment/persistent-storage.md index 1fc0c672..e2b50adf 100644 --- a/deployment/persistent-storage-openg2p-system.md +++ b/deployment/persistent-storage.md @@ -12,25 +12,23 @@ layout: visible: true --- -# Persistent Storage - OpenG2P System +# Persistent Storage -This document provides information on all the Persistent storages, i.e., PVs (Persistent Volume) and PVCs (Persistent Volume Claim), in OpenG2P deployments. It describes the type of storage, deletion behavior, and how to identify which PV belongs to which pod. It also defines and highlights the specific behavior of the stateful sets and deployments. - -## **Overview of Persistent storage in OpenG2P system** - -
Types of PVsPurposeType
PostgresStores database data for the application.StatefulSet
OpenSearchStores indexing data, logs, and search-related data.StatefulSet
MinioStores object data, files, and backups.Deployment
SoftHSM
  • Stores cryptographic key data used for secure key storage and management.
  • SoftHSM acts as a software-based Hardware Security Module (HSM) for the application.
Deployment
Kafka
  • Stores Kafka logs and messages, ensuring durability and persistence of data in the event of a pod restart or failure.
  • Kafka's stateful nature requires persistent storage to maintain message integrity.
StatefulSet
OdooStores database data, files, and other persistent configurations for the Odoo ERP system and ensures that data is retained across pod during restarting and upgrades.Deployment
+This document provides information on all the Persistent storages, i.e., PVs (Persistent Volume) and PVCs (Persistent Volume Claim), in OpenG2P deployments. It describes the type of storage, deletion behavior, and how to identify which PV belongs to which pod. It also defines and highlights the specific behavior of the StatefulSets and Deployments. ### **Types of persistent storage** -
Statefulset attached storageDeployment attached storage
DefinitionStatefulsets are used for applications that require stable network identities and persistent storage. The pods in a StatefulSet have unique identities and their storage is tied to their lifecycle. When a pod in a StatefulSet is deleted, the storage (PV) remains intact unless explicitly deleted.In stateless applications, deployments are used so that any pod can be replaced by another. The storage associated with a deployment is generally ephemeral unless PVs are explicitly attached.
Deletion behaviorBy default, the storage attached to a StatefulSet is retained even after the pod is deleted. This is crucial for stateful applications where data persistence is critical.If PVs are attached to a deployment, the storage may be deleted when the deployment is deleted, depending on the reclaim policy. Unlike StatefulSets, Deployments do not guarantee data persistence when pods are scaled down or deleted.
ExamplesPostgres, OpenSearch, and Minio.Some auxiliary services might use Deployment-based storage, but it is less common for critical data.
+
Storage typeDefinitionDeletion behavior
StatefulSet attached storage

StatefulSets are used for applications that require stable network identities and persistent storage. The pods in a StatefulSet have unique identities and their storage is tied to their lifecycle. When a pod in a StatefulSet is deleted, the storage (PV) remains intact unless explicitly deleted.

Examples: Postgres, OpenSearch, and Minio.

By default, the storage attached to a StatefulSet is retained even after the pod is deleted. This is crucial for stateful applications where data persistence is critical.
Deployment attached storage

In stateless applications, deployments are used so that any pod can be replaced by another. The storage associated with a deployment is generally ephemeral unless PVs are explicitly attached.

Examples: Some auxiliary services might use Deployment-based storage, but it is less common for critical data.

If PVs are attached to a deployment, the storage may be deleted when the deployment is deleted, depending on the reclaim policy. Unlike StatefulSets, Deployments do not guarantee data persistence when pods are scaled down or deleted.
-### **Persistent Volume Reclaim Policies: Retain vs. Delete** +### Types of PVs + +
Types of PVsPurposeType
PostgresStores database data for the application.StatefulSet
OpenSearchStores indexing data, logs, and search-related data.StatefulSet
MinioStores object data, files, and backups.Deployment
SoftHSM
  • Stores cryptographic key data used for secure key storage and management.
  • SoftHSM acts as a software-based Hardware Security Module (HSM) for the application.
Deployment
Kafka
  • Stores Kafka logs and messages, ensuring durability and persistence of data in the event of a pod restart or failure.
  • Kafka's stateful nature requires persistent storage to maintain message integrity.
StatefulSet
OdooStores database data, files, and other persistent configurations for the Odoo ERP system and ensures that data is retained across pod during restarting and upgrades.Deployment
-
RetainDelete
BehaviorWhen a PVC is deleted, the associated PV is not automatically deleted. This is helpful if you want to reattach the PV to another PVC in the future or as a backup.When a PVC is deleted, the associated PV is also automatically deleted. This is more suitable for temporary or non-critical data.
Use CaseCritical data that you may want to preserve even after deleting the PVC or StatefulSet.Ephemeral or temporary data where automatic cleanup is preferred.
+### **Persistent volume reclaim policies: retain vs. delete** -### **Procedure** +
Reclaim policyBehaviorUse case
RetainWhen a PVC is deleted, the associated PV is not automatically deleted. This is helpful if you want to reattach the PV to another PVC in the future or as a backup.Critical data that you may want to preserve even after deleting the PVC or StatefulSet.
DeleteWhen a PVC is deleted, the associated PV is also automatically deleted. This is more suitable for temporary or non-critical data.Ephemeral or temporary data where automatic cleanup is preferred.
-#### How to check which PV belongs to which Pod +### Checking which PV belongs to which pod In Rancher, follow the below steps to check which PV is associated with a particular pod.