Add fsType to aws-ebs (#10041)
* Add fsType to aws-ebs * trivial changes to kick redeploy
This commit is contained in:
@@ -11,14 +11,12 @@ weight: 30
|
|||||||
|
|
||||||
{{% capture overview %}}
|
{{% capture overview %}}
|
||||||
|
|
||||||
This document describes the concept of `StorageClass` in Kubernetes. Familiarity
|
This document describes the concept of a StorageClass in Kubernetes. Familiarity
|
||||||
with [volumes](/docs/concepts/storage/volumes/) and
|
with [volumes](/docs/concepts/storage/volumes/) and
|
||||||
[persistent volumes](/docs/concepts/storage/persistent-volumes) is suggested.
|
[persistent volumes](/docs/concepts/storage/persistent-volumes) is suggested.
|
||||||
|
|
||||||
{{% /capture %}}
|
{{% /capture %}}
|
||||||
|
|
||||||
{{< toc >}}
|
|
||||||
|
|
||||||
{{% capture body %}}
|
{{% capture body %}}
|
||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
@@ -140,6 +138,7 @@ parameters:
|
|||||||
type: io1
|
type: io1
|
||||||
zones: us-east-1d, us-east-1c
|
zones: us-east-1d, us-east-1c
|
||||||
iopsPerGB: "10"
|
iopsPerGB: "10"
|
||||||
|
fsType: ext4
|
||||||
```
|
```
|
||||||
|
|
||||||
* `type`: `io1`, `gp2`, `sc1`, `st1`. See
|
* `type`: `io1`, `gp2`, `sc1`, `st1`. See
|
||||||
@@ -157,6 +156,7 @@ parameters:
|
|||||||
of the volume and caps it at 20 000 IOPS (maximum supported by AWS, see
|
of the volume and caps it at 20 000 IOPS (maximum supported by AWS, see
|
||||||
[AWS docs](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html).
|
[AWS docs](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html).
|
||||||
A string is expected here, i.e. `"10"`, not `10`.
|
A string is expected here, i.e. `"10"`, not `10`.
|
||||||
|
* `fsType`: fsType that is supported by kubernetes. Default: `"ext4"`.
|
||||||
* `encrypted`: denotes whether the EBS volume should be encrypted or not.
|
* `encrypted`: denotes whether the EBS volume should be encrypted or not.
|
||||||
Valid values are `"true"` or `"false"`. A string is expected here,
|
Valid values are `"true"` or `"false"`. A string is expected here,
|
||||||
i.e. `"true"`, not `true`.
|
i.e. `"true"`, not `true`.
|
||||||
@@ -240,13 +240,16 @@ parameters:
|
|||||||
parameters are optional, empty password will be used when both
|
parameters are optional, empty password will be used when both
|
||||||
`secretNamespace` and `secretName` are omitted. The provided secret must have
|
`secretNamespace` and `secretName` are omitted. The provided secret must have
|
||||||
type `"kubernetes.io/glusterfs"`, e.g. created in this way:
|
type `"kubernetes.io/glusterfs"`, e.g. created in this way:
|
||||||
|
|
||||||
```
|
```
|
||||||
kubectl create secret generic heketi-secret \
|
kubectl create secret generic heketi-secret \
|
||||||
--type="kubernetes.io/glusterfs" --from-literal=key='opensesame' \
|
--type="kubernetes.io/glusterfs" --from-literal=key='opensesame' \
|
||||||
--namespace=default
|
--namespace=default
|
||||||
```
|
```
|
||||||
|
|
||||||
Example of a secret can be found in
|
Example of a secret can be found in
|
||||||
[glusterfs-provisioning-secret.yaml](https://github.com/kubernetes/examples/tree/master/staging/persistent-volume-provisioning/glusterfs/glusterfs-secret.yaml).
|
[glusterfs-provisioning-secret.yaml](https://github.com/kubernetes/examples/tree/master/staging/persistent-volume-provisioning/glusterfs/glusterfs-secret.yaml).
|
||||||
|
|
||||||
* `clusterid`: `630372ccdc720a92c681fb928f27b53f` is the ID of the cluster
|
* `clusterid`: `630372ccdc720a92c681fb928f27b53f` is the ID of the cluster
|
||||||
which will be used by Heketi when provisioning the volume. It can also be a
|
which will be used by Heketi when provisioning the volume. It can also be a
|
||||||
list of clusterids, for example:
|
list of clusterids, for example:
|
||||||
@@ -260,24 +263,22 @@ parameters:
|
|||||||
* `volumetype` : The volume type and its parameters can be configured with this
|
* `volumetype` : The volume type and its parameters can be configured with this
|
||||||
optional value. If the volume type is not mentioned, it's up to the provisioner
|
optional value. If the volume type is not mentioned, it's up to the provisioner
|
||||||
to decide the volume type.
|
to decide the volume type.
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
'Replica volume':
|
* Replica volume: `volumetype: replicate:3` where '3' is replica count.
|
||||||
`volumetype: replicate:3` where '3' is replica count.
|
* Disperse/EC volume: `volumetype: disperse:4:2` where '4' is data and '2' is the redundancy count.
|
||||||
'Disperse/EC volume':
|
* Distribute volume: `volumetype: none`
|
||||||
`volumetype: disperse:4:2` where '4' is data and '2' is the redundancy count.
|
|
||||||
'Distribute volume':
|
|
||||||
`volumetype: none`
|
|
||||||
|
|
||||||
For available volume types and administration options, refer to the
|
For available volume types and administration options, refer to the
|
||||||
[Administration Guide](https://access.redhat.com/documentation/en-US/Red_Hat_Storage/3.1/html/Administration_Guide/part-Overview.html).
|
[Administration Guide](https://access.redhat.com/documentation/en-US/Red_Hat_Storage/3.1/html/Administration_Guide/part-Overview.html).
|
||||||
|
|
||||||
For further reference information, see
|
For further reference information, see
|
||||||
[How to configure Heketi](https://github.com/heketi/heketi/wiki/Setting-up-the-topology).
|
[How to configure Heketi](https://github.com/heketi/heketi/wiki/Setting-up-the-topology).
|
||||||
|
|
||||||
When persistent volumes are dynamically provisioned, the Gluster plugin
|
When persistent volumes are dynamically provisioned, the Gluster plugin
|
||||||
automatically creates an endpoint and a headless service in the name
|
automatically creates an endpoint and a headless service in the name
|
||||||
`gluster-dynamic-<claimname>`. The dynamic endpoint and service are automatically
|
`gluster-dynamic-<claimname>`. The dynamic endpoint and service are automatically
|
||||||
deleted when the persistent volume claim is deleted.
|
deleted when the persistent volume claim is deleted.
|
||||||
|
|
||||||
### OpenStack Cinder
|
### OpenStack Cinder
|
||||||
|
|
||||||
@@ -306,6 +307,7 @@ This internal provisioner of OpenStack is deprecated. Please use [the external c
|
|||||||
|
|
||||||
1. Create a StorageClass with a user specified disk format.
|
1. Create a StorageClass with a user specified disk format.
|
||||||
|
|
||||||
|
```yaml
|
||||||
kind: StorageClass
|
kind: StorageClass
|
||||||
apiVersion: storage.k8s.io/v1
|
apiVersion: storage.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
@@ -313,11 +315,13 @@ This internal provisioner of OpenStack is deprecated. Please use [the external c
|
|||||||
provisioner: kubernetes.io/vsphere-volume
|
provisioner: kubernetes.io/vsphere-volume
|
||||||
parameters:
|
parameters:
|
||||||
diskformat: zeroedthick
|
diskformat: zeroedthick
|
||||||
|
```
|
||||||
|
|
||||||
`diskformat`: `thin`, `zeroedthick` and `eagerzeroedthick`. Default: `"thin"`.
|
`diskformat`: `thin`, `zeroedthick` and `eagerzeroedthick`. Default: `"thin"`.
|
||||||
|
|
||||||
2. Create a StorageClass with a disk format on a user specified datastore.
|
2. Create a StorageClass with a disk format on a user specified datastore.
|
||||||
|
|
||||||
|
```yaml
|
||||||
kind: StorageClass
|
kind: StorageClass
|
||||||
apiVersion: storage.k8s.io/v1
|
apiVersion: storage.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
@@ -326,6 +330,7 @@ This internal provisioner of OpenStack is deprecated. Please use [the external c
|
|||||||
parameters:
|
parameters:
|
||||||
diskformat: zeroedthick
|
diskformat: zeroedthick
|
||||||
datastore: VSANDatastore
|
datastore: VSANDatastore
|
||||||
|
```
|
||||||
|
|
||||||
`datastore`: The user can also specify the datastore in the StorageClass.
|
`datastore`: The user can also specify the datastore in the StorageClass.
|
||||||
The volume will be created on the datastore specified in the storage class,
|
The volume will be created on the datastore specified in the storage class,
|
||||||
@@ -402,7 +407,8 @@ parameters:
|
|||||||
must exist in the same namespace as PVCs. This parameter is required.
|
must exist in the same namespace as PVCs. This parameter is required.
|
||||||
The provided secret must have type "kubernetes.io/rbd", e.g. created in this
|
The provided secret must have type "kubernetes.io/rbd", e.g. created in this
|
||||||
way:
|
way:
|
||||||
```
|
|
||||||
|
```shell
|
||||||
kubectl create secret generic ceph-secret --type="kubernetes.io/rbd" \
|
kubectl create secret generic ceph-secret --type="kubernetes.io/rbd" \
|
||||||
--from-literal=key='QVFEQ1pMdFhPUnQrSmhBQUFYaERWNHJsZ3BsMmNjcDR6RFZST0E9PQ==' \
|
--from-literal=key='QVFEQ1pMdFhPUnQrSmhBQUFYaERWNHJsZ3BsMmNjcDR6RFZST0E9PQ==' \
|
||||||
--namespace=kube-system
|
--namespace=kube-system
|
||||||
@@ -445,11 +451,13 @@ parameters:
|
|||||||
* `adminSecretName`: secret that holds information about the Quobyte user and
|
* `adminSecretName`: secret that holds information about the Quobyte user and
|
||||||
the password to authenticate against the API server. The provided secret
|
the password to authenticate against the API server. The provided secret
|
||||||
must have type "kubernetes.io/quobyte", e.g. created in this way:
|
must have type "kubernetes.io/quobyte", e.g. created in this way:
|
||||||
```
|
|
||||||
|
```shell
|
||||||
kubectl create secret generic quobyte-admin-secret \
|
kubectl create secret generic quobyte-admin-secret \
|
||||||
--type="kubernetes.io/quobyte" --from-literal=key='opensesame' \
|
--type="kubernetes.io/quobyte" --from-literal=key='opensesame' \
|
||||||
--namespace=kube-system
|
--namespace=kube-system
|
||||||
```
|
```
|
||||||
|
|
||||||
* `user`: maps all access to this user. Default is "root".
|
* `user`: maps all access to this user. Default is "root".
|
||||||
* `group`: maps all access to this group. Default is "nfsnobody".
|
* `group`: maps all access to this group. Default is "nfsnobody".
|
||||||
* `quobyteConfig`: use the specified configuration to create the volume. You
|
* `quobyteConfig`: use the specified configuration to create the volume. You
|
||||||
|
|||||||
Reference in New Issue
Block a user