47-Kubernetes Io Docs Concepts Storage Storage Classes
47-Kubernetes Io Docs Concepts Storage Storage Classes
Search
Storage Classes
Home
This document describes the concept of a StorageClass in Kubernetes. Familiarity with volumes
Getting started and persistent volumes is suggested.
Concepts
Overview
Cluster Introduction
Architecture
A StorageClass provides a way for administrators to describe the "classes" of storage they o er.
Containers
Di erent classes might map to quality-of-service levels, or to backup policies, or to arbitrary
Workloads policies determined by the cluster administrators. Kubernetes itself is unopinionated about what
Services, Load classes represent. This concept is sometimes called "pro les" in other storage systems.
Balancing, and
Networking
Storage The StorageClass Resource
Volumes
Each StorageClass contains the elds provisioner , parameters , and reclaimPolicy , which are
Persistent Volumes
used when a PersistentVolume belonging to the class needs to be dynamically provisioned.
Volume Snapshots
CSI Volume Cloning
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Storage Classes The name of a StorageClass object is signi cant, and is how users can request a particular class.
Volume Snapshot Administrators set the name and other parameters of a class when rst creating StorageClass
objects, and the objects cannot be updated once they are created.
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
Administrators can specify a default StorageClass only for PVCs that don't request any particular
class to bind to: see the PersistentVolumeClaim section for details.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: standard
provisioner: kubernetes.io/aws-ebs
parameters:
type: gp2
reclaimPolicy: Retain
allowVolumeExpansion: true
mountOptions:
- debug
volumeBindingMode: Immediate
Provisioner
Each StorageClass has a provisioner that determines what volume plugin is used for provisioning
PVs. This eld must be speci ed.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Volume Plugin Internal Provisioner Con g Example
CephFS - -
FC - -
FlexVolume - -
Flocker ✓ -
GCEPersistentDisk ✓ GCE PD
Glusterfs ✓ Glusterfs
iSCSI - -
Quobyte ✓ Quobyte
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Volume Plugin Internal Provisioner Con g Example
NFS - -
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
VsphereVolume ✓ vSphere
ScaleIO ✓ ScaleIO
StorageOS ✓ StorageOS
Local - Local
You are not restricted to specifying the "internal" provisioners listed here (whose names are
pre xed with "kubernetes.io" and shipped alongside Kubernetes). You can also run and specify
external provisioners, which are independent programs that follow a speci cation de ned by
Kubernetes. Authors of external provisioners have full discretion over where their code lives,
how the provisioner is shipped, how it needs to be run, what volume plugin it uses (including
Flex), etc. The repository kubernetes-sigs/sig-storage-lib-external-provisioner houses a library for
writing external provisioners that implements the bulk of the speci cation. Some external
provisioners are listed under the repository kubernetes-sigs/sig-storage-lib-external-provisioner.
For example, NFS doesn't provide an internal provisioner, but an external provisioner can be
used. There are also cases when 3rd party storage vendors provide their own external
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
provisioner.
Reclaim Policy
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
PersistentVolumes that are dynamically created by a StorageClass will have the reclaim policy
speci ed in the reclaimPolicy eld of the class, which can be either Delete or Retain . If no
reclaimPolicy is speci ed when a StorageClass object is created, it will default to Delete .
PersistentVolumes that are created manually and managed via a StorageClass will have
whatever reclaim policy they were assigned at creation.
PersistentVolumes can be con gured to be expandable. This feature when set to true , allows
the users to resize the volume by editing the corresponding PVC object.
The following types of volumes support volume expansion, when the underlying StorageClass
has the eld allowVolumeExpansion set to true.
gcePersistentDisk 1.11
awsElasticBlockStore 1.11
Cinder 1.11
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Volume type Required Kubernetes version
glusterfs 1.11
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
rbd 1.11
Portworx 1.11
FlexVolume 1.13
Note: You can only use the volume expansion feature to grow a Volume, not to shrink it.
Mount Options
PersistentVolumes that are dynamically created by a StorageClass will have the mount options
speci ed in the mountOptions eld of the class.
If the volume plugin does not support mount options but mount options are speci ed,
provisioning will fail. Mount options are not validated on either the class or PV. If a mount option
is invalid, the PV mount fails.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Volume Binding Mode
The volumeBindingMode eld controls when volume binding and dynamic provisioning should
Documentation
occur. Kubernetes Blog Training Partners Community Case Studies Versions English
By default, the Immediate mode indicates that volume binding and dynamic provisioning occurs
once the PersistentVolumeClaim is created. For storage backends that are topology-constrained
and not globally accessible from all Nodes in the cluster, PersistentVolumes will be bound or
provisioned without knowledge of the Pod's scheduling requirements. This may result in
unschedulable Pods.
A cluster administrator can address this issue by specifying the WaitForFirstConsumer mode
which will delay the binding and provisioning of a PersistentVolume until a Pod using the
PersistentVolumeClaim is created. PersistentVolumes will be selected or provisioned conforming
to the topology that is speci ed by the Pod's scheduling constraints. These include, but are not
limited to, resource requirements, node selectors, pod a nity and anti-a nity, and taints and
tolerations.
AWSElasticBlockStore
GCEPersistentDisk
AzureDisk
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
FEATURE STATE: Kubernetes v1.17 [stable]
CSI volumes are also supported with dynamic provisioning and pre-created PVs, but you'll need
to look at the documentation for a speci c CSI driver to see its supported topology keys and
Documentation
examples.Kubernetes Blog Training Partners Community Case Studies Versions English
Allowed Topologies
When a cluster operator speci es the WaitForFirstConsumer volume binding mode, it is no
longer necessary to restrict provisioning to speci c topologies in most situations. However, if still
required, allowedTopologies can be speci ed.
This example demonstrates how to restrict the topology of provisioned volumes to speci c
zones and should be used as a replacement for the zone and zones parameters for the
supported plugins.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: standard
provisioner: kubernetes.io/gce-pd
parameters:
type: pd-standard
volumeBindingMode: WaitForFirstConsumer
allowedTopologies:
- matchLabelExpressions:
- key: failure-domain.beta.kubernetes.io/zone
values:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
- us-central1-a
- us-central1-b
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
Parameters
Storage Classes have parameters that describe volumes belonging to the storage class. Di erent
parameters may be accepted depending on the provisioner . For example, the value io1 , for
the parameter type , and the parameter iopsPerGB are speci c to EBS. When a parameter is
omitted, some default is used.
There can be at most 512 parameters de ned for a StorageClass. The total length of the
parameters object including its keys and values cannot exceed 256 KiB.
AWS EBS
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/aws-ebs
parameters:
type: io1
iopsPerGB: "10"
fsType: ext4
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
type : io1 , gp2 , sc1 , st1 . See AWS docs for details. Default: gp2 .
zone (Deprecated): AWS zone. If neither zone nor zones is speci ed, volumes are
generally round-robin-ed across all active zones where Kubernetes cluster has a node.
Documentation and zones
Kubernetes
zone Blogparameters must not Community
Training Partners be used at the same
Case time.Versions
Studies English
zones (Deprecated): A comma separated list of AWS zone(s). If neither zone nor zones is
speci ed, volumes are generally round-robin-ed across all active zones where Kubernetes
cluster has a node. zone and zones parameters must not be used at the same time.
iopsPerGB : only for io1 volumes. I/O operations per second per GiB. AWS volume plugin
multiplies this with size of requested volume to compute IOPS of the volume and caps it at
20 000 IOPS (maximum supported by AWS, see AWS docs. A string is expected here, i.e.
"10" , not 10 .
encrypted : denotes whether the EBS volume should be encrypted or not. Valid values are
"true" or "false" . A string is expected here, i.e. "true" , not true .
kmsKeyId : optional. The full Amazon Resource Name of the key to use when encrypting
the volume. If none is supplied but encrypted is true, a key is generated by AWS. See AWS
docs for valid ARN value.
Note: zone and zones parameters are deprecated and replaced with allowedTopologies
GCE PD
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
name: slow
provisioner: kubernetes.io/gce-pd
parameters:
type: pd-standard
Documentation Kubernetes
fstype: ext4 Blog Training Partners Community Case Studies Versions English
replication-type: none
zone (Deprecated): GCE zone. If neither zone nor zones is speci ed, volumes are
generally round-robin-ed across all active zones where Kubernetes cluster has a node.
zone and zones parameters must not be used at the same time.
zones (Deprecated): A comma separated list of GCE zone(s). If neither zone nor zones is
speci ed, volumes are generally round-robin-ed across all active zones where Kubernetes
cluster has a node. zone and zones parameters must not be used at the same time.
fstype : ext4 or xfs . Default: ext4 . The de ned lesystem type must be supported by
the host operating system.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
the Pod is scheduled in. The other zone is randomly picked from the zones available to the
cluster. Disk zones can be further constrained using allowedTopologies .
Note:Kubernetes
Documentation zone and zones
Blog parameters are deprecated
Training Partners and Case
Community replaced withVersions
Studies allowedTopologies
English
Glusterfs
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/glusterfs
parameters:
resturl: "http://127.0.0.1:8081"
clusterid: "630372ccdc720a92c681fb928f27b53f"
restauthenabled: "true"
restuser: "admin"
secretNamespace: "default"
secretName: "heketi-secret"
gidMin: "40000"
gidMax: "50000"
volumetype: "replicate:3"
resturl : Gluster REST service/Heketi service url which provision gluster volumes on
demand. The general format should be IPaddress:Port and this is a mandatory
parameter for GlusterFS dynamic provisioner. If Heketi service is exposed as a routable
service in openshift/kubernetes setup, this can have a format similar to http://heketi-
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
storage-project.cloudapps.mystorage.com where the fqdn is a resolvable Heketi service
url.
restuser : Gluster REST service/Heketi user who has access to create volumes in the
Gluster Trusted Pool.
restuserkey : Gluster REST service/Heketi user's password which will be used for
authentication to the REST server. This parameter is deprecated in favor of
secretNamespace + secretName .
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
clusterid : 630372ccdc720a92c681fb928f27b53f is the ID of the cluster which will be used
by Heketi when provisioning the volume. It can also be a list of clusterids, for example:
"8452344e2becec931ece4e33c4674e4e,42982310de6c63381718ccfa6d8cf397" . This is an
optional
Documentation parameter.
Kubernetes Blog Training Partners Community Case Studies Versions English
gidMin , gidMax : The minimum and maximum value of GID range for the StorageClass. A
unique value (GID) in this range ( gidMin-gidMax ) will be used for dynamically provisioned
volumes. These are optional values. If not speci ed, the volume will be provisioned with a
value between 2000-2147483647 which are defaults for gidMin and gidMax respectively.
volumetype : The volume type and its parameters can be con gured with this optional
value. If the volume type is not mentioned, it's up to the provisioner to decide the volume
type.
For example:
When persistent volumes are dynamically provisioned, the Gluster plugin automatically
creates an endpoint and a headless service in the name gluster-dynamic-<claimname> .
The dynamic endpoint and service are automatically deleted when the persistent volume
claim is deleted.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
OpenStack Cinder
apiVersion:
Documentation storage.k8s.io/v1
Kubernetes Blog Training Partners Community Case Studies Versions English
kind: StorageClass
metadata:
name: gold
provisioner: kubernetes.io/cinder
parameters:
availability: nova
availability : Availability Zone. If not speci ed, volumes are generally round-robin-ed
across all active zones where Kubernetes cluster has a node.
Note:
This internal provisioner of OpenStack is deprecated. Please use the external cloud provider
for OpenStack.
vSphere
There are two types of provisioners for vSphere storage classes:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
In-tree provisioners are deprecated. For more information on the CSI provisioner, see
Kubernetes vSphere CSI Driver and vSphereVolume CSI migration.
CSI Provisioner
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
The vSphere CSI StorageClass provisioner works with Tanzu Kubernetes clusters. For an
example, refer to the vSphere CSI repository.
vCP Provisioner
The following examples use the VMware Cloud Provider (vCP) StorageClass provisioner.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: fast
provisioner: kubernetes.io/vsphere-volume
parameters:
diskformat: zeroedthick
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: fast
Documentation provisioner:
Kubernetes Blog Training Partners Community Case Studies Versions
kubernetes.io/vsphere-volume English
parameters:
diskformat: zeroedthick
datastore: VSANDatastore
datastore : The user can also specify the datastore in the StorageClass. The volume will be
created on the datastore speci ed in the StorageClass, which in this case is
VSANDatastore . This eld is optional. If the datastore is not speci ed, then the volume will
be created on the datastore speci ed in the vSphere con g le used to initialize the
vSphere Cloud Provider.
One of the most important features of vSphere for Storage Management is policy
based Management. Storage Policy Based Management (SPBM) is a storage policy
framework that provides a single uni ed control plane across a broad range of data
services and storage solutions. SPBM enables vSphere administrators to overcome
upfront storage provisioning challenges, such as capacity planning, di erentiated
service levels and managing capacity headroom.
The SPBM policies can be speci ed in the StorageClass using the storagePolicyName
parameter.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Virtual SAN policy support inside Kubernetes
Vsphere Infrastructure (VI) Admins will have the ability to specify custom Virtual SAN
Storage Capabilities during dynamic volume provisioning. You can now de ne storage
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
requirements, such as performance and availability, in the form of storage capabilities
during dynamic volume provisioning. The storage capability requirements are
converted into a Virtual SAN policy which are then pushed down to the Virtual SAN
layer when a persistent volume (virtual disk) is being created. The virtual disk is
distributed across the Virtual SAN datastore to meet the requirements.
You can see Storage Policy Based Management for dynamic provisioning of volumes
for more details on how to use storage policies for persistent volumes management.
There are few vSphere examples which you try out for persistent volume management inside
Kubernetes for vSphere.
Ceph RBD
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: fast
provisioner: kubernetes.io/rbd
parameters:
monitors: 10.16.153.105:6789
adminId: kube
adminSecretName: ceph-secret
adminSecretNamespace: kube-system
pool: kube
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
userId: kube
userSecretName: ceph-secret-user
userSecretNamespace: default
fsType: ext4
Documentation Kubernetes"2"
imageFormat: Blog Training Partners Community Case Studies Versions English
imageFeatures: "layering"
adminId : Ceph client ID that is capable of creating images in the pool. Default is "admin".
adminSecretName : Secret Name for adminId . This parameter is required. The provided
secret must have type "kubernetes.io/rbd".
userId : Ceph client ID that is used to map the RBD image. Default is the same as
adminId .
userSecretName : The name of Ceph Secret for userId to map RBD image. It must exist in
the same namespace as PVCs. This parameter is required. The provided secret must have
type "kubernetes.io/rbd", for example created in this way:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
userSecretNamespace : The namespace for userSecretName .
Documentation : fsTypeBlog
Kubernetes
fsType that Training
is supported by kubernetes.
Partners Community Default:
Case Studies .
"ext4" Versions English
imageFeatures : This parameter is optional and should only be used if you set
imageFormat to "2". Currently supported features are layering only. Default is "", and no
features are turned on.
Quobyte
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/quobyte
parameters:
quobyteAPIServer: "http://138.68.74.142:7860"
registry: "138.68.74.142:7861"
adminSecretName: "quobyte-admin-secret"
adminSecretNamespace: "kube-system"
user: "root"
group: "root"
quobyteConfig: "BASE"
quobyteTenant: "DEFAULT"
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
quobyteAPIServer : API Server of Quobyte in the format "http(s)://api-server:7860"
registry : Quobyte registry to use to mount the volume. You can specify the registry as
<host>:<port> pair or if you want to specify multiple registries, put a comma between
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
them. <host1>:<port>,<host2>:<port>,<host3>:<port> . The host can be an IP address or
if you have a working DNS you can also provide the DNS names.
adminSecretName : secret that holds information about the Quobyte user and the password
to authenticate against the API server. The provided secret must have type
"kubernetes.io/quobyte" and the keys user and password , for example:
quobyteConfig : use the speci ed con guration to create the volume. You can create a new
con guration or modify an existing one with the Web console or the quobyte CLI. Default is
"BASE".
quobyteTenant : use the speci ed tenant ID to create/delete the volume. This Quobyte
tenant has to be already present in Quobyte. Default is "DEFAULT".
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Azure Disk
Azure Unmanaged
Documentation Disk storage
Kubernetes Blog Training Partnersclass
Community Case Studies Versions English
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/azure-disk
parameters:
skuName: Standard_LRS
location: eastus
storageAccount: azure_storage_account_name
apiVersion: storage.k8s.io/v1
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/azure-disk
Documentation Kubernetes Blog Training Partners Community Case Studies Versions
parameters: English
storageaccounttype: Standard_LRS
kind: Shared
kind : Possible values are shared (default), dedicated , and managed . When kind is
shared , all unmanaged disks are created in a few shared storage accounts in the same
resource group as the cluster. When kind is dedicated , a new dedicated storage account
will be created for the new unmanaged disk in the same resource group as the cluster.
When kind is managed , all managed disks are created in the same resource group as the
cluster.
resourceGroup : Specify the resource group in which the Azure disk will be created. It must
be an existing resource group name. If it is unspeci ed, the disk will be placed in the same
resource group as the current Kubernetes cluster.
Premium VM can attach both Standard_LRS and Premium_LRS disks, while Standard VM
can only attach Standard_LRS disks.
Managed VM can only attach managed disks and unmanaged VM can only attach
unmanaged disks.
Azure File
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: azurefile
Documentation Kubernetes
provisioner: Blog Training Partners Community Case Studies Versions
kubernetes.io/azure-file English
parameters:
skuName: Standard_LRS
location: eastus
storageAccount: azure_storage_account_name
storageAccount : Azure storage account name. Default is empty. If a storage account is not
provided, all storage accounts associated with the resource group are searched to nd one
that matches skuName and location . If a storage account is provided, it must reside in
the same resource group as the cluster, and skuName and location are ignored.
secretNamespace : the namespace of the secret that contains the Azure Storage Account
Name and Key. Default is the same as the Pod.
secretName : the name of the secret that contains the Azure Storage Account Name and
Key. Default is azure-storage-account-<accountName>-secret
readOnly : a ag indicating whether the storage will be mounted as read only. Defaults to
false which means a read/write mount. This setting will impact the ReadOnly setting in
VolumeMounts as well.
During storage provisioning, a secret named by secretName is created for the mounting
credentials. If the cluster has enabled both RBAC and Controller Roles, add the create
permission of resource secret for clusterrole system:controller:persistent-volume-binder .
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
In a multi-tenancy context, it is strongly recommended to set the value for secretNamespace
explicitly, otherwise the storage account credentials may be read by other users.
Portworx Volume
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: portworx-io-priority-high
provisioner: kubernetes.io/portworx-volume
parameters:
repl: "1"
snap_interval: "70"
priority_io: "high"
priority_io : determines whether the volume will be created from higher performance or
a lower priority storage high/medium/low (default: low ).
snap_interval : clock/time interval in minutes for when to trigger snapshots. Snapshots
are incremental based on di erence with the prior snapshot, 0 disables snaps (default: 0 ).
A string is expected here i.e. "70" and not 70 .
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
aggregation_level : speci es the number of chunks the volume would be distributed into,
0 indicates a non-aggregated volume (default: 0 ). A string is expected here i.e. "0" and
not 0
Documentation : speci
Kubernetes
ephemeral BlogesTraining
whetherPartners
the volume should beCase
Community cleaned-up
Studies after unmountEnglish
Versions or should
be persistent. emptyDir use case can set this value to true and persistent volumes use
case such as for databases like Cassandra should set to false, true/false (default false ).
A string is expected here i.e. "true" and not true .
ScaleIO
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/scaleio
parameters:
gateway: https://192.168.99.200:443/api
system: scaleio
protectionDomain: pd0
storagePool: sp1
storageMode: ThinProvisioned
secretRef: sio-secret
readOnly: false
fsType: xfs
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
gateway : address to a ScaleIO API gateway (required)
readOnly : speci es the access mode to the mounted volume (default false)
The ScaleIO Kubernetes volume plugin requires a con gured Secret object. The secret must be
created with type kubernetes.io/scaleio and use the same namespace value as that of the
PVC where it is referenced as shown in the following command:
StorageOS
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: fast
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
provisioner: kubernetes.io/storageos
parameters:
pool: default
description: Kubernetes volume
Documentation Kubernetes
fsType: ext4 Blog Training Partners Community Case Studies Versions English
adminSecretNamespace: default
adminSecretName: storageos-secret
pool : The name of the StorageOS distributed capacity pool to provision the volume from.
Uses the default pool which is normally present if not speci ed.
description : The description to assign to volumes that were created dynamically. All
volume descriptions will be the same for the storage class, but di erent storage classes can
be used to allow descriptions for di erent use cases. Defaults to Kubernetes volume .
fsType : The default lesystem type to request. Note that user-de ned rules within
StorageOS may override this value. Defaults to ext4 .
adminSecretNamespace : The namespace where the API con guration secret is located.
Required if adminSecretName set.
adminSecretName : The name of the secret to use for obtaining the StorageOS API
credentials. If not speci ed, default values will be attempted.
The StorageOS Kubernetes volume plugin can use a Secret object to specify an endpoint and
credentials to access the StorageOS API. This is only required when the defaults have been
changed. The secret must be created with type kubernetes.io/storageos as shown in the
following command:
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
--type="kubernetes.io/storageos" \
--from-literal=apiAddress=tcp://localhost:5705 \
--from-literal=apiUsername=storageos \
--from-literal=apiPassword=storageos \
Documentation Kubernetes Blog Training Partners Community Case Studies Versions
--namespace=default English
Secrets used for dynamically provisioned volumes may be created in any namespace and
referenced with the adminSecretNamespace parameter. Secrets used by pre-provisioned
volumes must be created in the same namespace as the PVC that references it.
Local
FEATURE STATE: Kubernetes v1.14 [stable]
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
Local volumes do not currently support dynamic provisioning, however a StorageClass should
still be created to delay volume binding until Pod scheduling. This is speci ed by the
WaitForFirstConsumer volume binding mode.
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Delaying volume binding allows the scheduler to consider all of a Pod's scheduling constraints
when choosing an appropriate PersistentVolume for a PersistentVolumeClaim.
Feedback
Documentation Kubernetes Blog Training Partners Community Case Studies Versions English
Yes No
Last modi ed February 11, 2021 at 3:51 PM PST: clean up use of word: just (3 5ec1ef)
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD