A Volume Provision Policy specifies the attributes that are necessary to create a new physical volume (PV) at the time of deploying a Stateful service. gopaddle supports provisioners for cloud storage, network attached and local storage.
Provisioners supported by gopaddle:
AWS EBS
Azure Persistent Disk
Google Cloud - Persistent Disk
NFS Share
Storidge Disk
For more information on Kubernetes Cloud Provisioners, click here.
Steps to create a Volume Provision Policy
In the left navigation panel, select Storage Policies and select Provision Policies
Choose Create new policy to open the policy creation wizard.
Choose a Storage Provider and the corresponding attributes of the provision policy.
If the Cloud provider supports zones, then the PVs can be provisioned across multiple zones. While deploying a Stateful Service to a Cluster, at least one provisioner zone must match with the Cluster node pool zones.
AWS Volume Policy
EBS Types
gopaddle supports both SSD Backed EBS Volumes (io1 & gp2) for transactional workloads that involve small, random I/O for better IOPs, and HDD Backed EBS Volumes (sc1 & st1) for streaming workloads that involve large, sequential I/O for better throughputs.
Provisioned IOPS SSD (io1) - I/O-intensive transactional workloads, particularly database workloads, that are sensitive to storage performance and consistency
General Purpose SSD (gp2) - cost-effective storage that is ideal for a broad range of workloads
Throughput Optimized HDD (st1) - Suitable for large, sequential I/O and frequently accessed data, for example, Amazon EMR, ETL, data warehouses, and log processing
Cold HDD (sc1) - Inexpensive block storage for infrequent data access. It is suitable for large, sequential cold-data workloads.
For more information on AWS EBS Storage options click here.
File System Types
Supported file system types are Ext3 and Ext4
Volume Retain Policy
Retain - Retains the Volume when the Service instance is deleted, so that it can be mounted again by another Service instance of the same Service configuration.
Delete - Deletes the Volume when the Service instance is deleted.
Google Cloud - Persistent Disk
Persistent Disk Types
pd-standard is a HDD based storage that is optimal for handling sequential read/write operations, but they aren't optimized to handle high rates of random input/output operations per second (IOPS). pd-ssd is suitable for random access with higher IOPS. Supported types are :
pd-standard (HDD)
pd-ssd
Zones
One or more zones across the same region or across different regions.
Replication across regions
Volumes are replicated across two zones in the same region. If only one zone is provided in the Zones field, Google arbitrarily chooses another zone to replicate the volume. If two zones from the same region are provided, then Google replicates the volume across those two zones.
File System Types
Supported file system types are XFS and Ext4
Volume Retain Policy
Retain - Retains the Volume when the Service instance is deleted, so that it can be mounted again by another Service instance of the same Service configuration.
Delete - Deletes the Volume when the Service instance is deleted.
Azure - Persistent Disk
Storage Account Type
Standard_LRS
Resource Group
Disk will be placed in the same resource group as the current Kubernetes cluster.
Storage Kind
Shared - An unmanaged disk created in one of the available shared storage account. Storage accounts have limitation on the IOPS and the number of VMs in a single storage account.
Managed - block-level storage volumes which are created under Azure managed Storage Account. Managed Storage Disks provide additional benefits in terms of increase number of disks, granular access control, flexibility and durability.
Dedicated - An unmanaged disk created in a dedicated storage account
Volume Retain Policy
Retain - Retains the Volume when the Service instance is deleted, so that it can be mounted again by another Service instance of the same Service configuration.
Delete - Deletes the Volume when the Service instance is deleted.
NFS Share
In order to use the NFS Share Storage Provider, the NFS Provisioner must be pre-registered in the portal. To register the NFS Provisioner, follow the steps here.
Volume Archive Policy
Volume Archive Policy is the same as the Retention Policy.
Archive - Retains the volume even after the Service instance is deleted, so that it can be mounted again by another Service instance of the same Service configuration.
Delete - Deletes the Volume when the Service instance is deleted.
Storidge Disk
File System Types
Supported file system types are btrfs, XFS and Ext4
IOPs
Minimum and Maximum IOPs for SSD based storage disks
Redundancy Level
Number of redundant volumes to maintain. It must be a value in the range 1-3
Provision
Thin - Provisions the disk based on the initial capacity required and gradually grows the disk as the requirement increases
Thick - Provisions the disk upfront based on the complete capacity requirement
Snapshots
When Snapshotting is enabled, the Snapshot Interval specifies the interval in minutes between consecutive snapshots. The Maximum Number of Snapshots specifies the number of snapshots to maintain, which must be in the range of 1 - 99.
Volume Retain Policy
Retain - Retains the Volume when the Service instance is deleted, so that it can be mounted again by another Service instance of the same Service configuration.
Delete - Deletes the Volume when the Service instance is deleted.
For more information on Storidge Disk, please check the link here.