Update volumes.md (#5214)
* Update volumes.md Fix the formats. * Convert important and note into callouts
This commit is contained in:
@@ -99,9 +99,10 @@ exists as long as that Pod is running on that node. As the name says, it is
|
||||
initially empty. Containers in the pod can all read and write the same
|
||||
files in the `emptyDir` volume, though that volume can be mounted at the same
|
||||
or different paths in each container. When a Pod is removed from a node for
|
||||
any reason, the data in the `emptyDir` is deleted forever. NOTE: a container
|
||||
crashing does *NOT* remove a pod from a node, so the data in an `emptyDir`
|
||||
volume is safe across container crashes.
|
||||
any reason, the data in the `emptyDir` is deleted forever.
|
||||
|
||||
**Note:** a container crashing does *NOT* remove a pod from a node, so the data in an `emptyDir` volume is safe across container crashes.
|
||||
{: .note}
|
||||
|
||||
Some uses for an `emptyDir` are:
|
||||
|
||||
@@ -189,8 +190,8 @@ Disk](http://cloud.google.com/compute/docs/disks) into your pod. Unlike
|
||||
preserved and the volume is merely unmounted. This means that a PD can be
|
||||
pre-populated with data, and that data can be "handed off" between pods.
|
||||
|
||||
__Important: You must create a PD using `gcloud` or the GCE API or UI
|
||||
before you can use it__
|
||||
**Important:** You must create a PD using `gcloud` or the GCE API or UI before you can use it.
|
||||
{: .caution}
|
||||
|
||||
There are some restrictions when using a `gcePersistentDisk`:
|
||||
|
||||
@@ -245,8 +246,8 @@ volume are preserved and the volume is merely unmounted. This means that an
|
||||
EBS volume can be pre-populated with data, and that data can be "handed off"
|
||||
between pods.
|
||||
|
||||
__Important: You must create an EBS volume using `aws ec2 create-volume` or
|
||||
the AWS API before you can use it__
|
||||
**Important:** You must create an EBS volume using `aws ec2 create-volume` or the AWS API before you can use it.
|
||||
{: .caution}
|
||||
|
||||
There are some restrictions when using an awsElasticBlockStore volume:
|
||||
|
||||
@@ -259,7 +260,7 @@ There are some restrictions when using an awsElasticBlockStore volume:
|
||||
Before you can use an EBS volume with a pod, you need to create it.
|
||||
|
||||
```shell
|
||||
aws ec2 create-volume --availability-zone eu-west-1a --size 10 --volume-type gp2
|
||||
aws ec2 create-volume --availability-zone=eu-west-1a --size=10 --volume-type=gp2
|
||||
```
|
||||
|
||||
Make sure the zone matches the zone you brought up your cluster in. (And also check that the size and EBS volume
|
||||
@@ -296,8 +297,8 @@ unmounted. This means that an NFS volume can be pre-populated with data, and
|
||||
that data can be "handed off" between pods. NFS can be mounted by multiple
|
||||
writers simultaneously.
|
||||
|
||||
__Important: You must have your own NFS server running with the share exported
|
||||
before you can use it__
|
||||
**Important:** You must have your own NFS server running with the share exported before you can use it.
|
||||
{: .caution}
|
||||
|
||||
See the [NFS example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/nfs) for more details.
|
||||
|
||||
@@ -309,8 +310,8 @@ contents of an `iscsi` volume are preserved and the volume is merely
|
||||
unmounted. This means that an iscsi volume can be pre-populated with data, and
|
||||
that data can be "handed off" between pods.
|
||||
|
||||
__Important: You must have your own iSCSI server running with the volume
|
||||
created before you can use it__
|
||||
**Important:** You must have your own iSCSI server running with the volume created before you can use it.
|
||||
{: .caution}
|
||||
|
||||
A feature of iSCSI is that it can be mounted as read-only by multiple consumers
|
||||
simultaneously. This means that you can pre-populate a volume with your dataset
|
||||
@@ -327,9 +328,8 @@ You can specify single or multiple target World Wide Names using the parameter
|
||||
`targetWWNs` in your volume configuration. If multiple WWNs are specified,
|
||||
targetWWNs expect that those WWNs are from multi-path connections.
|
||||
|
||||
__Important: You must configure FC SAN Zoning to allocate and mask those
|
||||
LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts
|
||||
can access them__
|
||||
**Important:** You must configure FC SAN Zoning to allocate and mask those LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts can access them.
|
||||
{: .caution}
|
||||
|
||||
See the [FC example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/fibre_channel) for more details.
|
||||
|
||||
@@ -344,7 +344,8 @@ CLI or by using the Flocker API. If the dataset already exists it will be
|
||||
reattached by Flocker to the node that the pod is scheduled. This means data
|
||||
can be "handed off" between pods as required.
|
||||
|
||||
__Important: You must have your own Flocker installation running before you can use it__
|
||||
**Important:** You must have your own Flocker installation running before you can use it.
|
||||
{: .caution}
|
||||
|
||||
See the [Flocker example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/flocker) for more details.
|
||||
|
||||
@@ -358,8 +359,8 @@ means that a glusterfs volume can be pre-populated with data, and that data can
|
||||
be "handed off" between pods. GlusterFS can be mounted by multiple writers
|
||||
simultaneously.
|
||||
|
||||
__Important: You must have your own GlusterFS installation running before you
|
||||
can use it__
|
||||
**Important:** You must have your own GlusterFS installation running before you can use it.
|
||||
{: .caution}
|
||||
|
||||
See the [GlusterFS example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/glusterfs) for more details.
|
||||
|
||||
@@ -372,8 +373,8 @@ a `rbd` volume are preserved and the volume is merely unmounted. This
|
||||
means that a RBD volume can be pre-populated with data, and that data can
|
||||
be "handed off" between pods.
|
||||
|
||||
__Important: You must have your own Ceph installation running before you
|
||||
can use RBD__
|
||||
**Important:** You must have your own Ceph installation running before you can use RBD.
|
||||
{: .caution}
|
||||
|
||||
A feature of RBD is that it can be mounted as read-only by multiple consumers
|
||||
simultaneously. This means that you can pre-populate a volume with your dataset
|
||||
@@ -392,8 +393,8 @@ unmounted. This means that a CephFS volume can be pre-populated with data, and
|
||||
that data can be "handed off" between pods. CephFS can be mounted by multiple
|
||||
writers simultaneously.
|
||||
|
||||
__Important: You must have your own Ceph server running with the share exported
|
||||
before you can use it__
|
||||
**Important:** You must have your own Ceph server running with the share exported before you can use it.
|
||||
{: .caution}
|
||||
|
||||
See the [CephFS example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/cephfs/) for more details.
|
||||
|
||||
@@ -433,8 +434,8 @@ use by pods without coupling to Kubernetes directly. `secret` volumes are
|
||||
backed by tmpfs (a RAM-backed filesystem) so they are never written to
|
||||
non-volatile storage.
|
||||
|
||||
__Important: You must create a secret in the Kubernetes API before you can use
|
||||
it__
|
||||
**Important:** You must create a secret in the Kubernetes API before you can use it.
|
||||
{: .caution}
|
||||
|
||||
Secrets are described in more detail [here](/docs/user-guide/secrets).
|
||||
|
||||
@@ -467,7 +468,7 @@ Currently, the following types of volume sources can be projected:
|
||||
|
||||
All sources are required to be in the same namespace as the pod. For more details, see the [all-in-one volume design document](https://github.com/kubernetes/community/blob/{{page.githubbranch}}/contributors/design-proposals/all-in-one-volume.md).
|
||||
|
||||
#### Example pod with a secret, a downward API, and a configmap
|
||||
#### Example pod with a secret, a downward API, and a configmap.
|
||||
|
||||
```yaml
|
||||
apiVersion: v1
|
||||
@@ -507,7 +508,7 @@ spec:
|
||||
path: my-group/my-config
|
||||
```
|
||||
|
||||
#### Example pod with multiple secrets with a non-default permission mode set
|
||||
#### Example pod with multiple secrets with a non-default permission mode set.
|
||||
|
||||
```yaml
|
||||
apiVersion: v1
|
||||
@@ -554,30 +555,31 @@ A `FlexVolume` enables users to mount vendor volumes into a pod. It expects vend
|
||||
drivers are installed in the volume plugin path on each kubelet node. This is
|
||||
an alpha feature and may change in future.
|
||||
|
||||
More details are in [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/flexvolume/README.md)
|
||||
More details are in [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/flexvolume/README.md).
|
||||
|
||||
### AzureFileVolume
|
||||
|
||||
A `AzureFileVolume` is used to mount a Microsoft Azure File Volume (SMB 2.1 and 3.0)
|
||||
into a Pod.
|
||||
|
||||
More details can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/azure_file/README.md)
|
||||
More details can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/azure_file/README.md).
|
||||
|
||||
### AzureDiskVolume
|
||||
|
||||
A `AzureDiskVolume` is used to mount a Microsoft Azure [Data Disk](https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-linux-about-disks-vhds/) into a Pod.
|
||||
|
||||
More details can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/azure_disk/README.md)
|
||||
More details can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/azure_disk/README.md).
|
||||
|
||||
### vsphereVolume
|
||||
|
||||
__Prerequisite: Kubernetes with vSphere Cloud Provider configured.
|
||||
For cloudprovider configuration please refer [vSphere getting started guide](/docs/getting-started-guides/vsphere/).__
|
||||
**Prerequisite:** Kubernetes with vSphere Cloud Provider configured. For cloudprovider configuration please refer [vSphere getting started guide](/docs/getting-started-guides/vsphere/).
|
||||
{: .note}
|
||||
|
||||
A `vsphereVolume` is used to mount a vSphere VMDK Volume into your Pod. The contents
|
||||
of a volume are preserved when it is unmounted. It supports both VMFS and VSAN datastore.
|
||||
|
||||
__Important: You must create VMDK using one of the following method before using with POD.__
|
||||
**Important:** You must create VMDK using one of the following method before using with POD.
|
||||
{: .caution}
|
||||
|
||||
#### Creating a VMDK volume
|
||||
|
||||
@@ -631,8 +633,8 @@ More examples can be found [here](https://git.k8s.io/kubernetes/examples/volumes
|
||||
|
||||
A `Quobyte` volume allows an existing [Quobyte](http://www.quobyte.com) volume to be mounted into your pod.
|
||||
|
||||
__Important: You must have your own Quobyte setup running with the volumes created
|
||||
before you can use it__
|
||||
**Important:** You must have your own Quobyte setup running with the volumes created before you can use it.
|
||||
{: .caution}
|
||||
|
||||
See the [Quobyte example](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/quobyte) for more details.
|
||||
|
||||
@@ -664,9 +666,10 @@ spec:
|
||||
fsType: "<fs-type>"
|
||||
```
|
||||
|
||||
__Important: Make sure you have an existing PortworxVolume with name `pxvol` before using it in the pod__
|
||||
**Important:** Make sure you have an existing PortworxVolume with name `pxvol` before using it in the pod.
|
||||
{: .caution}
|
||||
|
||||
More details and examples can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/portworx/README.md)
|
||||
More details and examples can be found [here](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/volumes/portworx/README.md).
|
||||
|
||||
### ScaleIO
|
||||
ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable
|
||||
@@ -674,8 +677,8 @@ shared block networked storage. The ScaleIO volume plugin allows deployed pods
|
||||
volumes (or it can dynamically provision new volumes for persistent volume claims, see
|
||||
[ScaleIO Persistent Volumes](/docs/user-guide/persistent-volumes/#scaleio)).
|
||||
|
||||
__Important: You must have an existing ScaleIO cluster already setup and running with the volumes created
|
||||
before you can use them__
|
||||
**Important:** You must have an existing ScaleIO cluster already setup and running with the volumes created before you can use them.
|
||||
{: .caution}
|
||||
|
||||
The following is an example pod configuration with ScaleIO:
|
||||
|
||||
@@ -713,7 +716,8 @@ At its core, StorageOS provides block storage to containers, accessible via a fi
|
||||
|
||||
The StorageOS container requires 64-bit Linux and has no additional dependencies. A free developer licence is available.
|
||||
|
||||
__Important: You must run the StorageOS container on each node that wants to access StorageOS volumes or that will contribute storage capacity to the pool. For installation instructions, consult the [StorageOS documentation](https://docs.storageos.com)__
|
||||
**Important:** You must run the StorageOS container on each node that wants to access StorageOS volumes or that will contribute storage capacity to the pool. For installation instructions, consult the [StorageOS documentation](https://docs.storageos.com).
|
||||
{: .caution}
|
||||
|
||||
```yaml
|
||||
apiVersion: v1
|
||||
@@ -791,11 +795,11 @@ spec:
|
||||
path: /mnt/disks/ssd1
|
||||
```
|
||||
|
||||
Note that local PersistentVolume cleanup and deletion requires manual
|
||||
intervention without the external provisioner.
|
||||
**Note:** The local PersistentVolume cleanup and deletion requires manual intervention without the external provisioner.
|
||||
{: .note}
|
||||
|
||||
For details on the `local` volume type, see the [Local Persistent Storage
|
||||
user guide](https://github.com/kubernetes-incubator/external-storage/tree/master/local-volume)
|
||||
user guide](https://github.com/kubernetes-incubator/external-storage/tree/master/local-volume).
|
||||
|
||||
## Using subPath
|
||||
|
||||
|
||||
Reference in New Issue
Block a user