diff --git a/CHANGELOG.md b/CHANGELOG.md index c8a3eb605bd..a542d4af79d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1001,7 +1001,7 @@ by Kubernetes. Changes were introduced in PR [#13580](https://github.com/kuberne or GA. * New Flex Volume Plugin enables users to use out-of-process volume plugins that are installed to “/usr/libexec/kubernetes/kubelet-plugins/volume/exec/” on -every node, instead of being compiled into the Kubernetes binary. See [example](examples/flexvolume/README.md) for details. +every node, instead of being compiled into the Kubernetes binary. See [example](examples/volumes/flexvolume/README.md) for details. * vendor volumes into a pod. It expects vendor drivers are installed in the volume plugin path on each kubelet node. This is an alpha feature and may change in future. diff --git a/api/swagger-spec/apps_v1alpha1.json b/api/swagger-spec/apps_v1alpha1.json index d0ed8a04521..5b70cd188db 100644 --- a/api/swagger-spec/apps_v1alpha1.json +++ b/api/swagger-spec/apps_v1alpha1.json @@ -1364,11 +1364,11 @@ }, "iscsi": { "$ref": "v1.ISCSIVolumeSource", - "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md" + "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md" }, "glusterfs": { "$ref": "v1.GlusterfsVolumeSource", - "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md" + "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md" }, "persistentVolumeClaim": { "$ref": "v1.PersistentVolumeClaimVolumeSource", @@ -1376,7 +1376,7 @@ }, "rbd": { "$ref": "v1.RBDVolumeSource", - "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md" + "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md" }, "flexVolume": { "$ref": "v1.FlexVolumeSource", @@ -1615,15 +1615,15 @@ "properties": { "endpoints": { "type": "string", - "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "path": { "type": "string", - "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" } } }, @@ -1657,11 +1657,11 @@ "items": { "type": "string" }, - "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "image": { "type": "string", - "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "fsType": { "type": "string", @@ -1669,23 +1669,23 @@ }, "pool": { "type": "string", - "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it." + "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it." }, "user": { "type": "string", - "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "keyring": { "type": "string", - "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" } } }, @@ -1761,7 +1761,7 @@ "items": { "type": "string" }, - "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "path": { "type": "string", @@ -1769,19 +1769,19 @@ }, "user": { "type": "string", - "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretFile": { "type": "string", - "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" } } }, diff --git a/api/swagger-spec/batch_v1.json b/api/swagger-spec/batch_v1.json index 2ee93142bed..8ba14edc26a 100644 --- a/api/swagger-spec/batch_v1.json +++ b/api/swagger-spec/batch_v1.json @@ -1369,11 +1369,11 @@ }, "iscsi": { "$ref": "v1.ISCSIVolumeSource", - "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md" + "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md" }, "glusterfs": { "$ref": "v1.GlusterfsVolumeSource", - "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md" + "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md" }, "persistentVolumeClaim": { "$ref": "v1.PersistentVolumeClaimVolumeSource", @@ -1381,7 +1381,7 @@ }, "rbd": { "$ref": "v1.RBDVolumeSource", - "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md" + "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md" }, "flexVolume": { "$ref": "v1.FlexVolumeSource", @@ -1620,15 +1620,15 @@ "properties": { "endpoints": { "type": "string", - "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "path": { "type": "string", - "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" } } }, @@ -1662,11 +1662,11 @@ "items": { "type": "string" }, - "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "image": { "type": "string", - "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "fsType": { "type": "string", @@ -1674,23 +1674,23 @@ }, "pool": { "type": "string", - "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it." + "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it." }, "user": { "type": "string", - "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "keyring": { "type": "string", - "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" } } }, @@ -1766,7 +1766,7 @@ "items": { "type": "string" }, - "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "path": { "type": "string", @@ -1774,19 +1774,19 @@ }, "user": { "type": "string", - "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretFile": { "type": "string", - "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" } } }, diff --git a/api/swagger-spec/extensions_v1beta1.json b/api/swagger-spec/extensions_v1beta1.json index 592136333bd..5cdf5520c3f 100644 --- a/api/swagger-spec/extensions_v1beta1.json +++ b/api/swagger-spec/extensions_v1beta1.json @@ -7978,11 +7978,11 @@ }, "iscsi": { "$ref": "v1.ISCSIVolumeSource", - "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md" + "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md" }, "glusterfs": { "$ref": "v1.GlusterfsVolumeSource", - "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md" + "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md" }, "persistentVolumeClaim": { "$ref": "v1.PersistentVolumeClaimVolumeSource", @@ -7990,7 +7990,7 @@ }, "rbd": { "$ref": "v1.RBDVolumeSource", - "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md" + "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md" }, "flexVolume": { "$ref": "v1.FlexVolumeSource", @@ -8229,15 +8229,15 @@ "properties": { "endpoints": { "type": "string", - "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "path": { "type": "string", - "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" } } }, @@ -8271,11 +8271,11 @@ "items": { "type": "string" }, - "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "image": { "type": "string", - "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "fsType": { "type": "string", @@ -8283,23 +8283,23 @@ }, "pool": { "type": "string", - "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it." + "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it." }, "user": { "type": "string", - "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "keyring": { "type": "string", - "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" } } }, @@ -8375,7 +8375,7 @@ "items": { "type": "string" }, - "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "path": { "type": "string", @@ -8383,19 +8383,19 @@ }, "user": { "type": "string", - "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretFile": { "type": "string", - "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" } } }, diff --git a/api/swagger-spec/v1.json b/api/swagger-spec/v1.json index e064facc395..ccbf8985a95 100644 --- a/api/swagger-spec/v1.json +++ b/api/swagger-spec/v1.json @@ -17197,7 +17197,7 @@ }, "glusterfs": { "$ref": "v1.GlusterfsVolumeSource", - "description": "Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md" + "description": "Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md" }, "nfs": { "$ref": "v1.NFSVolumeSource", @@ -17205,7 +17205,7 @@ }, "rbd": { "$ref": "v1.RBDVolumeSource", - "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md" + "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md" }, "iscsi": { "$ref": "v1.ISCSIVolumeSource", @@ -17331,15 +17331,15 @@ "properties": { "endpoints": { "type": "string", - "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "path": { "type": "string", - "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod" + "description": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod" } } }, @@ -17378,11 +17378,11 @@ "items": { "type": "string" }, - "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "image": { "type": "string", - "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "fsType": { "type": "string", @@ -17390,23 +17390,23 @@ }, "pool": { "type": "string", - "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it." + "description": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it." }, "user": { "type": "string", - "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "keyring": { "type": "string", - "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it" + "description": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it" } } }, @@ -17489,7 +17489,7 @@ "items": { "type": "string" }, - "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "path": { "type": "string", @@ -17497,19 +17497,19 @@ }, "user": { "type": "string", - "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretFile": { "type": "string", - "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "secretRef": { "$ref": "v1.LocalObjectReference", - "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" }, "readOnly": { "type": "boolean", - "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it" + "description": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it" } } }, @@ -17825,11 +17825,11 @@ }, "iscsi": { "$ref": "v1.ISCSIVolumeSource", - "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md" + "description": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md" }, "glusterfs": { "$ref": "v1.GlusterfsVolumeSource", - "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md" + "description": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md" }, "persistentVolumeClaim": { "$ref": "v1.PersistentVolumeClaimVolumeSource", @@ -17837,7 +17837,7 @@ }, "rbd": { "$ref": "v1.RBDVolumeSource", - "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md" + "description": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md" }, "flexVolume": { "$ref": "v1.FlexVolumeSource", diff --git a/docs/api-reference/batch/v1/definitions.html b/docs/api-reference/batch/v1/definitions.html index c4b71f8fb1d..f4a93071021 100755 --- a/docs/api-reference/batch/v1/definitions.html +++ b/docs/api-reference/batch/v1/definitions.html @@ -681,7 +681,7 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

monitors

-

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

true

string array

@@ -695,28 +695,28 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

user

-

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretFile

-

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretRef

-

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

boolean

false

@@ -3120,14 +3120,14 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

iscsi

-

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md

+

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md

false

v1.ISCSIVolumeSource

glusterfs

-

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md

+

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md

false

v1.GlusterfsVolumeSource

@@ -3141,7 +3141,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

rbd

-

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md

+

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md

false

v1.RBDVolumeSource

@@ -3986,21 +3986,21 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

endpoints

-

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

path

-

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

readOnly

-

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

false

boolean

false

@@ -4034,14 +4034,14 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

monitors

-

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string array

image

-

The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string

@@ -4055,35 +4055,35 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

pool

-

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it.

+

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it.

false

string

user

-

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

keyring

-

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

secretRef

-

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

boolean

false

diff --git a/docs/api-reference/extensions/v1beta1/definitions.html b/docs/api-reference/extensions/v1beta1/definitions.html index 0b6daa6b7b9..ca16ce5425d 100755 --- a/docs/api-reference/extensions/v1beta1/definitions.html +++ b/docs/api-reference/extensions/v1beta1/definitions.html @@ -956,7 +956,7 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

monitors

-

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

true

string array

@@ -970,28 +970,28 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

user

-

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretFile

-

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretRef

-

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

boolean

false

@@ -2861,14 +2861,14 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

iscsi

-

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md

+

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md

false

v1.ISCSIVolumeSource

glusterfs

-

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md

+

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md

false

v1.GlusterfsVolumeSource

@@ -2882,7 +2882,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

rbd

-

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md

+

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md

false

v1.RBDVolumeSource

@@ -3693,21 +3693,21 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

endpoints

-

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

path

-

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

readOnly

-

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

false

boolean

false

@@ -3947,14 +3947,14 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

monitors

-

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string array

image

-

The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string

@@ -3968,35 +3968,35 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

pool

-

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it.

+

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it.

false

string

user

-

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

keyring

-

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

secretRef

-

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

boolean

false

diff --git a/docs/api-reference/v1/definitions.html b/docs/api-reference/v1/definitions.html index 45c738145e5..4db93977c37 100755 --- a/docs/api-reference/v1/definitions.html +++ b/docs/api-reference/v1/definitions.html @@ -894,7 +894,7 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

monitors

-

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

true

string array

@@ -908,28 +908,28 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

user

-

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretFile

-

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

string

secretRef

-

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it

+

Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it

false

boolean

false

@@ -3594,14 +3594,14 @@ The resulting set of endpoints can be viewed as:

iscsi

-

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md

+

ISCSI represents an ISCSI Disk resource that is attached to a kubelet’s host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md

false

v1.ISCSIVolumeSource

glusterfs

-

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md

+

Glusterfs represents a Glusterfs mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md

false

v1.GlusterfsVolumeSource

@@ -3615,7 +3615,7 @@ The resulting set of endpoints can be viewed as:

rbd

-

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md

+

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md

false

v1.RBDVolumeSource

@@ -4798,21 +4798,21 @@ The resulting set of endpoints can be viewed as:

endpoints

-

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

path

-

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

true

string

readOnly

-

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod

+

ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod

false

boolean

false

@@ -4997,14 +4997,14 @@ The resulting set of endpoints can be viewed as:

monitors

-

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string array

image

-

The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

true

string

@@ -5018,35 +5018,35 @@ The resulting set of endpoints can be viewed as:

pool

-

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it.

+

The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it.

false

string

user

-

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

keyring

-

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

string

secretRef

-

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

v1.LocalObjectReference

readOnly

-

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it

+

ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it

false

boolean

false

@@ -5853,7 +5853,7 @@ The resulting set of endpoints can be viewed as:

glusterfs

-

Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md

+

Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md

false

v1.GlusterfsVolumeSource

@@ -5867,7 +5867,7 @@ The resulting set of endpoints can be viewed as:

rbd

-

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md

+

RBD represents a Rados Block Device mount on the host that shares a pod’s lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md

false

v1.RBDVolumeSource

diff --git a/docs/proposals/security-context-constraints.md b/docs/proposals/security-context-constraints.md index b0ffcd0a72e..d59dae9dab3 100644 --- a/docs/proposals/security-context-constraints.md +++ b/docs/proposals/security-context-constraints.md @@ -180,16 +180,16 @@ type VolumeSecurityPolicy struct { // More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#nfs NFS bool `json:"nfs,omitempty"` // ISCSI allows or disallows the use of the ISCSI volume plugin. - // More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md ISCSI bool `json:"iscsi,omitempty"` // Glusterfs allows or disallows the use of the Glusterfs volume plugin. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md Glusterfs bool `json:"glusterfs,omitempty"` // PersistentVolumeClaim allows or disallows the use of the PersistentVolumeClaim volume plugin. // More info: http://releases.k8s.io/HEAD/docs/user-guide/persistent-volumes.md#persistentvolumeclaims PersistentVolumeClaim bool `json:"persistentVolumeClaim,omitempty"` // RBD allows or disallows the use of the RBD volume plugin. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md RBD bool `json:"rbd,omitempty"` // Cinder allows or disallows the use of the Cinder volume plugin. // More info: http://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md diff --git a/examples/README.md b/examples/README.md index 9e4aa779259..2eec040d5ca 100644 --- a/examples/README.md +++ b/examples/README.md @@ -51,7 +51,7 @@ Name | Description | Notable Features Used | Complexity Level ------------- | ------------- | ------------ | ------------ | ------------ [Guestbook](guestbook/) | PHP app with Redis | Replication Controller, Service | Beginner [WordPress](mysql-wordpress-pd/) | WordPress with MySQL | Deployment, Persistent Volume with Claim | Beginner -[Cassandra](cassandra/) | Cloud Native Cassandra | Daemon Set | Intermediate +[Cassandra](storage/cassandra/) | Cloud Native Cassandra | Daemon Set | Intermediate Note: Please add examples to the list above that are maintained. diff --git a/examples/examples_test.go b/examples/examples_test.go index 21feace4f16..eb05388d337 100644 --- a/examples/examples_test.go +++ b/examples/examples_test.go @@ -220,10 +220,10 @@ func TestExampleObjectSchemas(t *testing.T) { "pod": &api.Pod{}, "service": &api.Service{}, }, - "../examples/iscsi": { + "../examples/volumes/iscsi": { "iscsi": &api.Pod{}, }, - "../examples/glusterfs": { + "../examples/volumes/glusterfs": { "glusterfs-pod": &api.Pod{}, "glusterfs-endpoints": &api.Endpoints{}, "glusterfs-service": &api.Service{}, @@ -249,14 +249,14 @@ func TestExampleObjectSchemas(t *testing.T) { "scheduler-policy-config": &schedulerapi.Policy{}, "scheduler-policy-config-with-extender": &schedulerapi.Policy{}, }, - "../examples/rbd/secret": { + "../examples/volumes/rbd/secret": { "ceph-secret": &api.Secret{}, }, - "../examples/rbd": { + "../examples/volumes/rbd": { "rbd": &api.Pod{}, "rbd-with-secret": &api.Pod{}, }, - "../examples/cassandra": { + "../examples/storage/cassandra": { "cassandra-daemonset": &extensions.DaemonSet{}, "cassandra-controller": &api.ReplicationController{}, "cassandra-service": &api.Service{}, @@ -289,7 +289,7 @@ func TestExampleObjectSchemas(t *testing.T) { "../examples/explorer": { "pod": &api.Pod{}, }, - "../examples/hazelcast": { + "../examples/storage/hazelcast": { "hazelcast-controller": &api.ReplicationController{}, "hazelcast-service": &api.Service{}, }, @@ -319,7 +319,7 @@ func TestExampleObjectSchemas(t *testing.T) { "mysql-deployment": &api.Service{}, "wordpress-deployment": &api.Service{}, }, - "../examples/nfs": { + "../examples/volumes/nfs": { "nfs-busybox-rc": &api.ReplicationController{}, "nfs-server-rc": &api.ReplicationController{}, "nfs-server-service": &api.Service{}, @@ -345,7 +345,7 @@ func TestExampleObjectSchemas(t *testing.T) { "phabricator-controller": &api.ReplicationController{}, "phabricator-service": &api.Service{}, }, - "../examples/redis": { + "../examples/storage/redis": { "redis-controller": &api.ReplicationController{}, "redis-master": &api.Pod{}, "redis-proxy": &api.Pod{}, @@ -357,7 +357,7 @@ func TestExampleObjectSchemas(t *testing.T) { "limits": &api.LimitRange{}, "quota": &api.ResourceQuota{}, }, - "../examples/rethinkdb": { + "../examples/storage/rethinkdb": { "admin-pod": &api.Pod{}, "admin-service": &api.Service{}, "driver-service": &api.Service{}, @@ -390,11 +390,11 @@ func TestExampleObjectSchemas(t *testing.T) { "zookeeper-service": &api.Service{}, "zookeeper": &api.Pod{}, }, - "../examples/cephfs/": { + "../examples/volumes/cephfs/": { "cephfs": &api.Pod{}, "cephfs-with-secret": &api.Pod{}, }, - "../examples/fibre_channel": { + "../examples/volumes/fibre_channel": { "fc": &api.Pod{}, }, "../examples/javaweb-tomcat-sidecar": { @@ -409,7 +409,7 @@ func TestExampleObjectSchemas(t *testing.T) { "redis-service": &api.Service{}, "job": &batch.Job{}, }, - "../examples/azure_file": { + "../examples/volumes/azure_file": { "azure": &api.Pod{}, }, } @@ -486,7 +486,7 @@ func TestReadme(t *testing.T) { }{ {"../README.md", []runtime.Object{&api.Pod{}}}, {"../docs/user-guide/walkthrough/README.md", []runtime.Object{&api.Pod{}}}, - {"../examples/iscsi/README.md", []runtime.Object{&api.Pod{}}}, + {"../examples/volumes/iscsi/README.md", []runtime.Object{&api.Pod{}}}, } for _, path := range paths { diff --git a/examples/job/work-queue-2/README.md b/examples/job/work-queue-2/README.md index d2d723342ad..d8e7fe88866 100644 --- a/examples/job/work-queue-2/README.md +++ b/examples/job/work-queue-2/README.md @@ -58,7 +58,7 @@ Here is an overview of the steps in this example: ## Starting Redis For this example, for simplicitly, we will start a single instance of Redis. -See the [Redis Example](../../../examples/redis/README.md) for an example +See the [Redis Example](../../../examples/storage/redis/README.md) for an example of deploying Redis scaleably and redundantly. Start a temporary Pod running Redis and a service so we can find it. diff --git a/examples/spark/spark-gluster/README.md b/examples/spark/spark-gluster/README.md index 83f0c4cf008..7b695e98557 100644 --- a/examples/spark/spark-gluster/README.md +++ b/examples/spark/spark-gluster/README.md @@ -34,7 +34,7 @@ Documentation for other releases can be found at # Spark on GlusterFS example -This guide is an extension of the standard [Spark on Kubernetes Guide](../../../examples/spark/) and describes how to run Spark on GlusterFS using the [Kubernetes Volume Plugin for GlusterFS](../../../examples/glusterfs/) +This guide is an extension of the standard [Spark on Kubernetes Guide](../../../examples/spark/) and describes how to run Spark on GlusterFS using the [Kubernetes Volume Plugin for GlusterFS](../../../examples/volumes/glusterfs/) The setup is the same in that you will setup a Spark Master Service in the same way you do with the standard Spark guide but you will deploy a modified Spark Master and a Modified Spark Worker ReplicationController, as they will be modified to use the GlusterFS volume plugin to mount a GlusterFS volume into the Spark Master and Spark Workers containers. Note that this example can be used as a guide for implementing any of the Kubernetes Volume Plugins with the Spark Example. diff --git a/examples/cassandra/README.md b/examples/storage/cassandra/README.md similarity index 92% rename from examples/cassandra/README.md rename to examples/storage/cassandra/README.md index 2beac0d6a7b..20b9f243617 100644 --- a/examples/cassandra/README.md +++ b/examples/storage/cassandra/README.md @@ -19,11 +19,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/cassandra/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -58,17 +53,17 @@ new Cassandra nodes as they join the cluster. This example also uses some of the core components of Kubernetes: -- [_Pods_](../../docs/user-guide/pods.md) -- [ _Services_](../../docs/user-guide/services.md) -- [_Replication Controllers_](../../docs/user-guide/replication-controller.md) -- [_Daemon Sets_](../../docs/admin/daemons.md) +- [_Pods_](../../../docs/user-guide/pods.md) +- [ _Services_](../../../docs/user-guide/services.md) +- [_Replication Controllers_](../../../docs/user-guide/replication-controller.md) +- [_Daemon Sets_](../../../docs/admin/daemons.md) ## Prerequisites This example assumes that you have a Kubernetes version >=1.2 cluster installed and running, -and that you have installed the [`kubectl`](../../docs/user-guide/kubectl/kubectl.md) +and that you have installed the [`kubectl`](../../../docs/user-guide/kubectl/kubectl.md) command line tool somewhere in your path. Please see the -[getting started guides](../../docs/getting-started-guides/) +[getting started guides](../../../docs/getting-started-guides/) for installation instructions for your platform. This example also has a few code and configuration files needed. To avoid @@ -109,7 +104,7 @@ how the container docker image was built and what it contains. You may also note that we are setting some Cassandra parameters (`MAX_HEAP_SIZE` and `HEAP_NEWSIZE`), and adding information about the -[namespace](../../docs/user-guide/namespaces.md). +[namespace](../../../docs/user-guide/namespaces.md). We also tell Kubernetes that the container exposes both the `CQL` and `Thrift` API ports. Finally, we tell the cluster manager that we need 0.1 cpu (0.1 core). @@ -121,10 +116,10 @@ here are the steps: ```sh # create a service to track all cassandra nodes -kubectl create -f examples/cassandra/cassandra-service.yaml +kubectl create -f examples/storage/cassandra/cassandra-service.yaml # create a replication controller to replicate cassandra nodes -kubectl create -f examples/cassandra/cassandra-controller.yaml +kubectl create -f examples/storage/cassandra/cassandra-controller.yaml # validate the Cassandra cluster. Substitute the name of one of your pods. kubectl exec -ti cassandra-xxxxx -- nodetool status @@ -136,7 +131,7 @@ kubectl scale rc cassandra --replicas=4 kubectl delete rc cassandra # then, create a daemonset to place a cassandra node on each kubernetes node -kubectl create -f examples/cassandra/cassandra-daemonset.yaml --validate=false +kubectl create -f examples/storage/cassandra/cassandra-daemonset.yaml --validate=false # resource cleanup kubectl delete service -l app=cassandra @@ -145,8 +140,8 @@ kubectl delete daemonset cassandra ## Step 1: Create a Cassandra Service -A Kubernetes _[Service](../../docs/user-guide/services.md)_ describes a set of -[_Pods_](../../docs/user-guide/pods.md) that perform the same task. In +A Kubernetes _[Service](../../../docs/user-guide/services.md)_ describes a set of +[_Pods_](../../../docs/user-guide/pods.md) that perform the same task. In Kubernetes, the atomic unit of an application is a Pod: one or more containers that _must_ be scheduled onto the same host. @@ -184,20 +179,20 @@ selected for membership in this service. We'll see that in action shortly. Create the Cassandra service as follows: ```console -$ kubectl create -f examples/cassandra/cassandra-service.yaml +$ kubectl create -f examples/storage/cassandra/cassandra-service.yaml ``` ## Step 2: Use a Replication Controller to create Cassandra node pods As we noted above, in Kubernetes, the atomic unit of an application is a -[_Pod_](../../docs/user-guide/pods.md). +[_Pod_](../../../docs/user-guide/pods.md). A Pod is one or more containers that _must_ be scheduled onto the same host. All containers in a pod share a network namespace, and may optionally share mounted volumes. A Kubernetes -_[Replication Controller](../../docs/user-guide/replication-controller.md)_ +_[Replication Controller](../../../docs/user-guide/replication-controller.md)_ is responsible for replicating sets of identical pods. Like a Service, it has a selector query which identifies the members of its set. Unlike a Service, it also has a desired number of replicas, and it will create @@ -294,7 +289,7 @@ Create the Replication Controller: ```console -$ kubectl create -f examples/cassandra/cassandra-controller.yaml +$ kubectl create -f examples/storage/cassandra/cassandra-controller.yaml ``` @@ -428,7 +423,7 @@ $ kubectl delete rc cassandra ## Step 5: Use a DaemonSet instead of a Replication Controller -In Kubernetes, a [_Daemon Set_](../../docs/admin/daemons.md) can distribute pods +In Kubernetes, a [_Daemon Set_](../../../docs/admin/daemons.md) can distribute pods onto Kubernetes nodes, one-to-one. Like a _ReplicationController_, it has a selector query which identifies the members of its set. Unlike a _ReplicationController_, it has a node selector to limit which nodes are @@ -520,7 +515,7 @@ Create this daemonset: ```console -$ kubectl create -f examples/cassandra/cassandra-daemonset.yaml +$ kubectl create -f examples/storage/cassandra/cassandra-daemonset.yaml ``` @@ -528,7 +523,7 @@ You may need to disable config file validation, like so: ```console -$ kubectl create -f examples/cassandra/cassandra-daemonset.yaml --validate=false +$ kubectl create -f examples/storage/cassandra/cassandra-daemonset.yaml --validate=false ``` @@ -596,5 +591,5 @@ $ kubectl delete daemonset cassandra -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/cassandra/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/cassandra/README.md?pixel)]() diff --git a/examples/cassandra/cassandra-controller.yaml b/examples/storage/cassandra/cassandra-controller.yaml similarity index 100% rename from examples/cassandra/cassandra-controller.yaml rename to examples/storage/cassandra/cassandra-controller.yaml diff --git a/examples/cassandra/cassandra-daemonset.yaml b/examples/storage/cassandra/cassandra-daemonset.yaml similarity index 100% rename from examples/cassandra/cassandra-daemonset.yaml rename to examples/storage/cassandra/cassandra-daemonset.yaml diff --git a/examples/cassandra/cassandra-service.yaml b/examples/storage/cassandra/cassandra-service.yaml similarity index 100% rename from examples/cassandra/cassandra-service.yaml rename to examples/storage/cassandra/cassandra-service.yaml diff --git a/examples/cassandra/image/Dockerfile b/examples/storage/cassandra/image/Dockerfile similarity index 100% rename from examples/cassandra/image/Dockerfile rename to examples/storage/cassandra/image/Dockerfile diff --git a/examples/cassandra/image/Makefile b/examples/storage/cassandra/image/Makefile similarity index 100% rename from examples/cassandra/image/Makefile rename to examples/storage/cassandra/image/Makefile diff --git a/examples/cassandra/image/cassandra.list b/examples/storage/cassandra/image/cassandra.list similarity index 100% rename from examples/cassandra/image/cassandra.list rename to examples/storage/cassandra/image/cassandra.list diff --git a/examples/cassandra/image/cassandra.yaml b/examples/storage/cassandra/image/cassandra.yaml similarity index 100% rename from examples/cassandra/image/cassandra.yaml rename to examples/storage/cassandra/image/cassandra.yaml diff --git a/examples/cassandra/image/kubernetes-cassandra.jar b/examples/storage/cassandra/image/kubernetes-cassandra.jar similarity index 100% rename from examples/cassandra/image/kubernetes-cassandra.jar rename to examples/storage/cassandra/image/kubernetes-cassandra.jar diff --git a/examples/cassandra/image/logback.xml b/examples/storage/cassandra/image/logback.xml similarity index 100% rename from examples/cassandra/image/logback.xml rename to examples/storage/cassandra/image/logback.xml diff --git a/examples/cassandra/image/run.sh b/examples/storage/cassandra/image/run.sh similarity index 100% rename from examples/cassandra/image/run.sh rename to examples/storage/cassandra/image/run.sh diff --git a/examples/cassandra/java/.gitignore b/examples/storage/cassandra/java/.gitignore similarity index 100% rename from examples/cassandra/java/.gitignore rename to examples/storage/cassandra/java/.gitignore diff --git a/examples/cassandra/java/README.md b/examples/storage/cassandra/java/README.md similarity index 92% rename from examples/cassandra/java/README.md rename to examples/storage/cassandra/java/README.md index f35571f7755..a5ea2b02c4b 100644 --- a/examples/cassandra/java/README.md +++ b/examples/storage/cassandra/java/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/cassandra/java/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -64,5 +59,5 @@ This in affect makes every node a seed provider, which is not a recommended best -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/cassandra/java/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/cassandra/java/README.md?pixel)]() diff --git a/examples/cassandra/java/pom.xml b/examples/storage/cassandra/java/pom.xml similarity index 100% rename from examples/cassandra/java/pom.xml rename to examples/storage/cassandra/java/pom.xml diff --git a/examples/cassandra/java/src/main/java/io/k8s/cassandra/KubernetesSeedProvider.java b/examples/storage/cassandra/java/src/main/java/io/k8s/cassandra/KubernetesSeedProvider.java similarity index 100% rename from examples/cassandra/java/src/main/java/io/k8s/cassandra/KubernetesSeedProvider.java rename to examples/storage/cassandra/java/src/main/java/io/k8s/cassandra/KubernetesSeedProvider.java diff --git a/examples/cassandra/java/src/test/java/io/k8s/cassandra/KubernetesSeedProviderTest.java b/examples/storage/cassandra/java/src/test/java/io/k8s/cassandra/KubernetesSeedProviderTest.java similarity index 100% rename from examples/cassandra/java/src/test/java/io/k8s/cassandra/KubernetesSeedProviderTest.java rename to examples/storage/cassandra/java/src/test/java/io/k8s/cassandra/KubernetesSeedProviderTest.java diff --git a/examples/cassandra/java/src/test/resources/cassandra.yaml b/examples/storage/cassandra/java/src/test/resources/cassandra.yaml similarity index 100% rename from examples/cassandra/java/src/test/resources/cassandra.yaml rename to examples/storage/cassandra/java/src/test/resources/cassandra.yaml diff --git a/examples/cassandra/java/src/test/resources/logback-test.xml b/examples/storage/cassandra/java/src/test/resources/logback-test.xml similarity index 100% rename from examples/cassandra/java/src/test/resources/logback-test.xml rename to examples/storage/cassandra/java/src/test/resources/logback-test.xml diff --git a/examples/hazelcast/README.md b/examples/storage/hazelcast/README.md similarity index 87% rename from examples/hazelcast/README.md rename to examples/storage/hazelcast/README.md index 3c5bcd5cf43..a12bd69756d 100644 --- a/examples/hazelcast/README.md +++ b/examples/storage/hazelcast/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/hazelcast/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -42,7 +37,7 @@ This document also attempts to describe the core components of Kubernetes: _Pods ### Prerequisites -This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the `kubectl` command line tool somewhere in your path. Please see the [getting started](../../docs/getting-started-guides/) for installation instructions for your platform. +This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the `kubectl` command line tool somewhere in your path. Please see the [getting started](../../../docs/getting-started-guides/) for installation instructions for your platform. ### A note for the impatient @@ -57,14 +52,14 @@ Source is freely available at: ### Simple Single Pod Hazelcast Node -In Kubernetes, the atomic unit of an application is a [_Pod_](../../docs/user-guide/pods.md). A Pod is one or more containers that _must_ be scheduled onto the same host. All containers in a pod share a network namespace, and may optionally share mounted volumes. +In Kubernetes, the atomic unit of an application is a [_Pod_](../../../docs/user-guide/pods.md). A Pod is one or more containers that _must_ be scheduled onto the same host. All containers in a pod share a network namespace, and may optionally share mounted volumes. In this case, we shall not run a single Hazelcast pod, because the discovery mechanism now relies on a service definition. ### Adding a Hazelcast Service -In Kubernetes a _[Service](../../docs/user-guide/services.md)_ describes a set of Pods that perform the same task. For example, the set of nodes in a Hazelcast cluster. An important use for a Service is to create a load balancer which distributes traffic across members of the set. But a _Service_ can also be used as a standing query which makes a dynamically changing set of Pods available via the Kubernetes API. This is actually how our discovery mechanism works, by relying on the service to discover other Hazelcast pods. +In Kubernetes a _[Service](../../../docs/user-guide/services.md)_ describes a set of Pods that perform the same task. For example, the set of nodes in a Hazelcast cluster. An important use for a Service is to create a load balancer which distributes traffic across members of the set. But a _Service_ can also be used as a standing query which makes a dynamically changing set of Pods available via the Kubernetes API. This is actually how our discovery mechanism works, by relying on the service to discover other Hazelcast pods. Here is the service description: @@ -92,14 +87,14 @@ The important thing to note here is the `selector`. It is a query over labels, t Create this service as follows: ```sh -$ kubectl create -f examples/hazelcast/hazelcast-service.yaml +$ kubectl create -f examples/storage/hazelcast/hazelcast-service.yaml ``` ### Adding replicated nodes The real power of Kubernetes and Hazelcast lies in easily building a replicated, resizable Hazelcast cluster. -In Kubernetes a _[Replication Controller](../../docs/user-guide/replication-controller.md)_ is responsible for replicating sets of identical pods. Like a _Service_ it has a selector query which identifies the members of it's set. Unlike a _Service_ it also has a desired number of replicas, and it will create or delete _Pods_ to ensure that the number of _Pods_ matches up with it's desired state. +In Kubernetes a _[Replication Controller](../../../docs/user-guide/replication-controller.md)_ is responsible for replicating sets of identical pods. Like a _Service_ it has a selector query which identifies the members of it's set. Unlike a _Service_ it also has a desired number of replicas, and it will create or delete _Pods_ to ensure that the number of _Pods_ matches up with it's desired state. Replication Controllers will "adopt" existing pods that match their selector query, so let's create a Replication Controller with a single replica to adopt our existing Hazelcast Pod. @@ -153,7 +148,7 @@ Last but not least, we set `DNS_DOMAIN` environment variable according to your K Create this controller: ```sh -$ kubectl create -f examples/hazelcast/hazelcast-controller.yaml +$ kubectl create -f examples/storage/hazelcast/hazelcast-controller.yaml ``` After the controller provisions successfully the pod, you can query the service endpoints: @@ -264,10 +259,10 @@ For those of you who are impatient, here is the summary of the commands we ran i ```sh # create a service to track all hazelcast nodes -kubectl create -f examples/hazelcast/hazelcast-service.yaml +kubectl create -f examples/storage/hazelcast/hazelcast-service.yaml # create a replication controller to replicate hazelcast nodes -kubectl create -f examples/hazelcast/hazelcast-controller.yaml +kubectl create -f examples/storage/hazelcast/hazelcast-controller.yaml # scale up to 2 nodes kubectl scale rc hazelcast --replicas=2 @@ -282,5 +277,5 @@ See [here](https://github.com/pires/hazelcast-kubernetes-bootstrapper/blob/maste -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/hazelcast/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/hazelcast/README.md?pixel)]() diff --git a/examples/hazelcast/hazelcast-controller.yaml b/examples/storage/hazelcast/hazelcast-controller.yaml similarity index 100% rename from examples/hazelcast/hazelcast-controller.yaml rename to examples/storage/hazelcast/hazelcast-controller.yaml diff --git a/examples/hazelcast/hazelcast-service.yaml b/examples/storage/hazelcast/hazelcast-service.yaml similarity index 100% rename from examples/hazelcast/hazelcast-service.yaml rename to examples/storage/hazelcast/hazelcast-service.yaml diff --git a/examples/hazelcast/image/Dockerfile b/examples/storage/hazelcast/image/Dockerfile similarity index 100% rename from examples/hazelcast/image/Dockerfile rename to examples/storage/hazelcast/image/Dockerfile diff --git a/examples/mysql-galera/README.md b/examples/storage/mysql-galera/README.md similarity index 91% rename from examples/mysql-galera/README.md rename to examples/storage/mysql-galera/README.md index 6ad7b92ba6f..eadbea5088c 100644 --- a/examples/mysql-galera/README.md +++ b/examples/storage/mysql-galera/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/mysql-galera/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -38,7 +33,7 @@ This document explains a simple demonstration example of running MySQL synchrono ### Prerequisites -This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the ```kubectl``` command line tool somewhere in your path. Please see the [getting started](../../docs/getting-started-guides/) for installation instructions for your platform. +This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the ```kubectl``` command line tool somewhere in your path. Please see the [getting started](../../../docs/getting-started-guides/) for installation instructions for your platform. Also, this example requires the image found in the ```image``` directory. For your convenience, it is built and available on Docker's public image repository as ```capttofu/percona_xtradb_cluster_5_6```. It can also be built which would merely require that the image in the pod or replication controller files is updated. @@ -56,11 +51,11 @@ Note: Kubernetes best-practices is to pre-create the services for each controlle First, create the overall cluster service that will be used to connect to the cluster: -```kubectl create -f examples/mysql-galera/pxc-cluster-service.yaml``` +```kubectl create -f examples/storage/mysql-galera/pxc-cluster-service.yaml``` Create the service and replication controller for the first node: -```kubectl create -f examples/mysql-galera/pxc-node1.yaml``` +```kubectl create -f examples/storage/mysql-galera/pxc-node1.yaml``` ### Create services and controllers for the remaining nodes @@ -71,21 +66,21 @@ When complete, you should be able connect with a mysql client to the IP address ### An example of creating a cluster -Shown below are examples of Using ```kubectl``` from within the ```./examples/mysql-galera``` directory, the status of the lauched replication controllers and services can be confirmed +Shown below are examples of Using ```kubectl``` from within the ```./examples/storage/mysql-galera``` directory, the status of the lauched replication controllers and services can be confirmed ``` -$ kubectl create -f examples/mysql-galera/pxc-cluster-service.yaml +$ kubectl create -f examples/storage/mysql-galera/pxc-cluster-service.yaml services/pxc-cluster -$ kubectl create -f examples/mysql-galera/pxc-node1.yaml +$ kubectl create -f examples/storage/mysql-galera/pxc-node1.yaml services/pxc-node1 replicationcontrollers/pxc-node1 -$ kubectl create -f examples/mysql-galera/pxc-node2.yaml +$ kubectl create -f examples/storage/mysql-galera/pxc-node2.yaml services/pxc-node2 replicationcontrollers/pxc-node2 -$ kubectl create -f examples/mysql-galera/pxc-node3.yaml +$ kubectl create -f examples/storage/mysql-galera/pxc-node3.yaml services/pxc-node3 replicationcontrollers/pxc-node3 @@ -167,5 +162,5 @@ This setup certainly can become more fluid and dynamic. One idea is to perhaps u -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/mysql-galera/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/mysql-galera/README.md?pixel)]() diff --git a/examples/mysql-galera/image/Dockerfile b/examples/storage/mysql-galera/image/Dockerfile similarity index 100% rename from examples/mysql-galera/image/Dockerfile rename to examples/storage/mysql-galera/image/Dockerfile diff --git a/examples/mysql-galera/image/cluster.cnf b/examples/storage/mysql-galera/image/cluster.cnf similarity index 100% rename from examples/mysql-galera/image/cluster.cnf rename to examples/storage/mysql-galera/image/cluster.cnf diff --git a/examples/mysql-galera/image/docker-entrypoint.sh b/examples/storage/mysql-galera/image/docker-entrypoint.sh similarity index 100% rename from examples/mysql-galera/image/docker-entrypoint.sh rename to examples/storage/mysql-galera/image/docker-entrypoint.sh diff --git a/examples/mysql-galera/image/my.cnf b/examples/storage/mysql-galera/image/my.cnf similarity index 100% rename from examples/mysql-galera/image/my.cnf rename to examples/storage/mysql-galera/image/my.cnf diff --git a/examples/mysql-galera/pxc-cluster-service.yaml b/examples/storage/mysql-galera/pxc-cluster-service.yaml similarity index 100% rename from examples/mysql-galera/pxc-cluster-service.yaml rename to examples/storage/mysql-galera/pxc-cluster-service.yaml diff --git a/examples/mysql-galera/pxc-node1.yaml b/examples/storage/mysql-galera/pxc-node1.yaml similarity index 100% rename from examples/mysql-galera/pxc-node1.yaml rename to examples/storage/mysql-galera/pxc-node1.yaml diff --git a/examples/mysql-galera/pxc-node2.yaml b/examples/storage/mysql-galera/pxc-node2.yaml similarity index 100% rename from examples/mysql-galera/pxc-node2.yaml rename to examples/storage/mysql-galera/pxc-node2.yaml diff --git a/examples/mysql-galera/pxc-node3.yaml b/examples/storage/mysql-galera/pxc-node3.yaml similarity index 100% rename from examples/mysql-galera/pxc-node3.yaml rename to examples/storage/mysql-galera/pxc-node3.yaml diff --git a/examples/redis/README.md b/examples/storage/redis/README.md similarity index 77% rename from examples/redis/README.md rename to examples/storage/redis/README.md index 7996e8a1d84..c030887ecc6 100644 --- a/examples/redis/README.md +++ b/examples/storage/redis/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/redis/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -38,7 +33,7 @@ The following document describes the deployment of a reliable, multi-node Redis ### Prerequisites -This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the ```kubectl``` command line tool somewhere in your path. Please see the [getting started](../../docs/getting-started-guides/) for installation instructions for your platform. +This example assumes that you have a Kubernetes cluster installed and running, and that you have installed the ```kubectl``` command line tool somewhere in your path. Please see the [getting started](../../../docs/getting-started-guides/) for installation instructions for your platform. ### A note for the impatient @@ -46,7 +41,7 @@ This is a somewhat long tutorial. If you want to jump straight to the "do it no ### Turning up an initial master/sentinel pod. -A [_Pod_](../../docs/user-guide/pods.md) is one or more containers that _must_ be scheduled onto the same host. All containers in a pod share a network namespace, and may optionally share mounted volumes. +A [_Pod_](../../../docs/user-guide/pods.md) is one or more containers that _must_ be scheduled onto the same host. All containers in a pod share a network namespace, and may optionally share mounted volumes. We will used the shared network namespace to bootstrap our Redis cluster. In particular, the very first sentinel needs to know how to find the master (subsequent sentinels just ask the first sentinel). Because all containers in a Pod share a network namespace, the sentinel can simply look at ```$(hostname -i):6379```. @@ -56,12 +51,12 @@ Here is the config for the initial master and sentinel pod: [redis-master.yaml]( Create this master as follows: ```sh -kubectl create -f examples/redis/redis-master.yaml +kubectl create -f examples/storage/redis/redis-master.yaml ``` ### Turning up a sentinel service -In Kubernetes a [_Service_](../../docs/user-guide/services.md) describes a set of Pods that perform the same task. For example, the set of nodes in a Cassandra cluster, or even the single node we created above. An important use for a Service is to create a load balancer which distributes traffic across members of the set. But a _Service_ can also be used as a standing query which makes a dynamically changing set of Pods (or the single Pod we've already created) available via the Kubernetes API. +In Kubernetes a [_Service_](../../../docs/user-guide/services.md) describes a set of Pods that perform the same task. For example, the set of nodes in a Cassandra cluster, or even the single node we created above. An important use for a Service is to create a load balancer which distributes traffic across members of the set. But a _Service_ can also be used as a standing query which makes a dynamically changing set of Pods (or the single Pod we've already created) available via the Kubernetes API. In Redis, we will use a Kubernetes Service to provide a discoverable endpoints for the Redis sentinels in the cluster. From the sentinels Redis clients can find the master, and then the slaves and other relevant info for the cluster. This enables new members to join the cluster when failures occur. @@ -70,14 +65,14 @@ Here is the definition of the sentinel service: [redis-sentinel-service.yaml](re Create this service: ```sh -kubectl create -f examples/redis/redis-sentinel-service.yaml +kubectl create -f examples/storage/redis/redis-sentinel-service.yaml ``` ### Turning up replicated redis servers So far, what we have done is pretty manual, and not very fault-tolerant. If the ```redis-master``` pod that we previously created is destroyed for some reason (e.g. a machine dying) our Redis service goes away with it. -In Kubernetes a [_Replication Controller_](../../docs/user-guide/replication-controller.md) is responsible for replicating sets of identical pods. Like a _Service_ it has a selector query which identifies the members of it's set. Unlike a _Service_ it also has a desired number of replicas, and it will create or delete _Pods_ to ensure that the number of _Pods_ matches up with it's desired state. +In Kubernetes a [_Replication Controller_](../../../docs/user-guide/replication-controller.md) is responsible for replicating sets of identical pods. Like a _Service_ it has a selector query which identifies the members of it's set. Unlike a _Service_ it also has a desired number of replicas, and it will create or delete _Pods_ to ensure that the number of _Pods_ matches up with it's desired state. Replication Controllers will "adopt" existing pods that match their selector query, so let's create a Replication Controller with a single replica to adopt our existing Redis server. Here is the replication controller config: [redis-controller.yaml](redis-controller.yaml) @@ -86,7 +81,7 @@ The bulk of this controller config is actually identical to the redis-master pod Create this controller: ```sh -kubectl create -f examples/redis/redis-controller.yaml +kubectl create -f examples/storage/redis/redis-controller.yaml ``` We'll do the same thing for the sentinel. Here is the controller config: [redis-sentinel-controller.yaml](redis-sentinel-controller.yaml) @@ -94,7 +89,7 @@ We'll do the same thing for the sentinel. Here is the controller config: [redis We create it as follows: ```sh -kubectl create -f examples/redis/redis-sentinel-controller.yaml +kubectl create -f examples/storage/redis/redis-sentinel-controller.yaml ``` ### Scale our replicated pods @@ -142,16 +137,16 @@ For those of you who are impatient, here is the summary of commands we ran in th ``` # Create a bootstrap master -kubectl create -f examples/redis/redis-master.yaml +kubectl create -f examples/storage/redis/redis-master.yaml # Create a service to track the sentinels -kubectl create -f examples/redis/redis-sentinel-service.yaml +kubectl create -f examples/storage/redis/redis-sentinel-service.yaml # Create a replication controller for redis servers -kubectl create -f examples/redis/redis-controller.yaml +kubectl create -f examples/storage/redis/redis-controller.yaml # Create a replication controller for redis sentinels -kubectl create -f examples/redis/redis-sentinel-controller.yaml +kubectl create -f examples/storage/redis/redis-sentinel-controller.yaml # Scale both replication controllers kubectl scale rc redis --replicas=3 @@ -163,5 +158,5 @@ kubectl delete pods redis-master -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/redis/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/redis/README.md?pixel)]() diff --git a/examples/redis/image/Dockerfile b/examples/storage/redis/image/Dockerfile similarity index 100% rename from examples/redis/image/Dockerfile rename to examples/storage/redis/image/Dockerfile diff --git a/examples/redis/image/redis-master.conf b/examples/storage/redis/image/redis-master.conf similarity index 100% rename from examples/redis/image/redis-master.conf rename to examples/storage/redis/image/redis-master.conf diff --git a/examples/redis/image/redis-slave.conf b/examples/storage/redis/image/redis-slave.conf similarity index 100% rename from examples/redis/image/redis-slave.conf rename to examples/storage/redis/image/redis-slave.conf diff --git a/examples/redis/image/run.sh b/examples/storage/redis/image/run.sh similarity index 100% rename from examples/redis/image/run.sh rename to examples/storage/redis/image/run.sh diff --git a/examples/redis/redis-controller.yaml b/examples/storage/redis/redis-controller.yaml similarity index 100% rename from examples/redis/redis-controller.yaml rename to examples/storage/redis/redis-controller.yaml diff --git a/examples/redis/redis-master.yaml b/examples/storage/redis/redis-master.yaml similarity index 100% rename from examples/redis/redis-master.yaml rename to examples/storage/redis/redis-master.yaml diff --git a/examples/redis/redis-proxy.yaml b/examples/storage/redis/redis-proxy.yaml similarity index 100% rename from examples/redis/redis-proxy.yaml rename to examples/storage/redis/redis-proxy.yaml diff --git a/examples/redis/redis-sentinel-controller.yaml b/examples/storage/redis/redis-sentinel-controller.yaml similarity index 100% rename from examples/redis/redis-sentinel-controller.yaml rename to examples/storage/redis/redis-sentinel-controller.yaml diff --git a/examples/redis/redis-sentinel-service.yaml b/examples/storage/redis/redis-sentinel-service.yaml similarity index 100% rename from examples/redis/redis-sentinel-service.yaml rename to examples/storage/redis/redis-sentinel-service.yaml diff --git a/examples/rethinkdb/README.md b/examples/storage/rethinkdb/README.md similarity index 90% rename from examples/rethinkdb/README.md rename to examples/storage/rethinkdb/README.md index 80317de4cfc..11b415103a1 100644 --- a/examples/rethinkdb/README.md +++ b/examples/storage/rethinkdb/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/rethinkdb/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -50,7 +45,7 @@ Rethinkdb will discover its peer using endpoints provided by kubernetes service, so first create a service so the following pod can query its endpoint ```sh -$kubectl create -f examples/rethinkdb/driver-service.yaml +$kubectl create -f examples/storage/rethinkdb/driver-service.yaml ``` check out: @@ -67,7 +62,7 @@ rethinkdb-driver 10.0.27.114 28015/TCP db=rethinkdb start the first server in the cluster ```sh -$kubectl create -f examples/rethinkdb/rc.yaml +$kubectl create -f examples/storage/rethinkdb/rc.yaml ``` Actually, you can start servers as many as you want at one time, just modify the `replicas` in `rc.ymal` @@ -110,8 +105,8 @@ Admin You need a separate pod (labeled as role:admin) to access Web Admin UI ```sh -kubectl create -f examples/rethinkdb/admin-pod.yaml -kubectl create -f examples/rethinkdb/admin-service.yaml +kubectl create -f examples/storage/rethinkdb/admin-pod.yaml +kubectl create -f examples/storage/rethinkdb/admin-service.yaml ``` find the service @@ -153,11 +148,11 @@ since the ui is not stateless when playing with Web Admin UI will cause `Connect **BTW** * `gen_pod.sh` is using to generate pod templates for my local cluster, -the generated pods which is using `nodeSelector` to force k8s to schedule containers to my designate nodes, for I need to access persistent data on my host dirs. Note that one needs to label the node before 'nodeSelector' can work, see this [tutorial](../../docs/user-guide/node-selection/) +the generated pods which is using `nodeSelector` to force k8s to schedule containers to my designate nodes, for I need to access persistent data on my host dirs. Note that one needs to label the node before 'nodeSelector' can work, see this [tutorial](../../../docs/user-guide/node-selection/) * see [antmanler/rethinkdb-k8s](https://github.com/antmanler/rethinkdb-k8s) for detail -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/rethinkdb/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/rethinkdb/README.md?pixel)]() diff --git a/examples/rethinkdb/admin-pod.yaml b/examples/storage/rethinkdb/admin-pod.yaml similarity index 100% rename from examples/rethinkdb/admin-pod.yaml rename to examples/storage/rethinkdb/admin-pod.yaml diff --git a/examples/rethinkdb/admin-service.yaml b/examples/storage/rethinkdb/admin-service.yaml similarity index 100% rename from examples/rethinkdb/admin-service.yaml rename to examples/storage/rethinkdb/admin-service.yaml diff --git a/examples/rethinkdb/driver-service.yaml b/examples/storage/rethinkdb/driver-service.yaml similarity index 100% rename from examples/rethinkdb/driver-service.yaml rename to examples/storage/rethinkdb/driver-service.yaml diff --git a/examples/rethinkdb/gen-pod.sh b/examples/storage/rethinkdb/gen-pod.sh similarity index 100% rename from examples/rethinkdb/gen-pod.sh rename to examples/storage/rethinkdb/gen-pod.sh diff --git a/examples/rethinkdb/image/Dockerfile b/examples/storage/rethinkdb/image/Dockerfile similarity index 100% rename from examples/rethinkdb/image/Dockerfile rename to examples/storage/rethinkdb/image/Dockerfile diff --git a/examples/rethinkdb/image/run.sh b/examples/storage/rethinkdb/image/run.sh similarity index 100% rename from examples/rethinkdb/image/run.sh rename to examples/storage/rethinkdb/image/run.sh diff --git a/examples/rethinkdb/rc.yaml b/examples/storage/rethinkdb/rc.yaml similarity index 100% rename from examples/rethinkdb/rc.yaml rename to examples/storage/rethinkdb/rc.yaml diff --git a/examples/vitess/README.md b/examples/storage/vitess/README.md similarity index 91% rename from examples/vitess/README.md rename to examples/storage/vitess/README.md index 59316df5542..d9051f0b126 100644 --- a/examples/vitess/README.md +++ b/examples/storage/vitess/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/vitess/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -42,7 +37,7 @@ Kubernetes as simple as launching more pods. The example brings up a database with 2 shards, and then runs a pool of [sharded guestbook](https://github.com/youtube/vitess/tree/master/examples/kubernetes/guestbook) pods. The guestbook app was ported from the original -[guestbook](../../examples/guestbook-go/) +[guestbook](../../../examples/guestbook-go/) example found elsewhere in this tree, modified to use Vitess as the backend. For a more detailed, step-by-step explanation of this example setup, see the @@ -54,17 +49,17 @@ You'll need to install [Go 1.4+](https://golang.org/doc/install) to build `vtctlclient`, the command-line admin tool for Vitess. We also assume you have a running Kubernetes cluster with `kubectl` pointing to -it by default. See the [Getting Started guides](../../docs/getting-started-guides/) +it by default. See the [Getting Started guides](../../../docs/getting-started-guides/) for how to get to that point. Note that your Kubernetes cluster needs to have enough resources (CPU+RAM) to schedule all the pods. By default, this example requires a cluster-wide total of at least 6 virtual CPUs and 10GiB RAM. You can tune these requirements in the -[resource limits](../../docs/user-guide/compute-resources.md) +[resource limits](../../../docs/user-guide/compute-resources.md) section of each YAML file. Lastly, you need to open ports 30000-30001 (for the Vitess admin daemon) and 80 (for the guestbook app) in your firewall. See the -[Services and Firewalls](../../docs/user-guide/services-firewalls.md) +[Services and Firewalls](../../../docs/user-guide/services-firewalls.md) guide for examples of how to do that. ### Configure site-local settings @@ -143,5 +138,5 @@ You may also want to remove any firewall rules you created. -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/vitess/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/storage/vitess/README.md?pixel)]() diff --git a/examples/vitess/configure.sh b/examples/storage/vitess/configure.sh similarity index 100% rename from examples/vitess/configure.sh rename to examples/storage/vitess/configure.sh diff --git a/examples/vitess/create_test_table.sql b/examples/storage/vitess/create_test_table.sql similarity index 100% rename from examples/vitess/create_test_table.sql rename to examples/storage/vitess/create_test_table.sql diff --git a/examples/vitess/env.sh b/examples/storage/vitess/env.sh similarity index 100% rename from examples/vitess/env.sh rename to examples/storage/vitess/env.sh diff --git a/examples/vitess/etcd-controller-template.yaml b/examples/storage/vitess/etcd-controller-template.yaml similarity index 100% rename from examples/vitess/etcd-controller-template.yaml rename to examples/storage/vitess/etcd-controller-template.yaml diff --git a/examples/vitess/etcd-down.sh b/examples/storage/vitess/etcd-down.sh similarity index 100% rename from examples/vitess/etcd-down.sh rename to examples/storage/vitess/etcd-down.sh diff --git a/examples/vitess/etcd-service-template.yaml b/examples/storage/vitess/etcd-service-template.yaml similarity index 100% rename from examples/vitess/etcd-service-template.yaml rename to examples/storage/vitess/etcd-service-template.yaml diff --git a/examples/vitess/etcd-up.sh b/examples/storage/vitess/etcd-up.sh similarity index 100% rename from examples/vitess/etcd-up.sh rename to examples/storage/vitess/etcd-up.sh diff --git a/examples/vitess/guestbook-controller.yaml b/examples/storage/vitess/guestbook-controller.yaml similarity index 100% rename from examples/vitess/guestbook-controller.yaml rename to examples/storage/vitess/guestbook-controller.yaml diff --git a/examples/vitess/guestbook-down.sh b/examples/storage/vitess/guestbook-down.sh similarity index 100% rename from examples/vitess/guestbook-down.sh rename to examples/storage/vitess/guestbook-down.sh diff --git a/examples/vitess/guestbook-service.yaml b/examples/storage/vitess/guestbook-service.yaml similarity index 100% rename from examples/vitess/guestbook-service.yaml rename to examples/storage/vitess/guestbook-service.yaml diff --git a/examples/vitess/guestbook-up.sh b/examples/storage/vitess/guestbook-up.sh similarity index 100% rename from examples/vitess/guestbook-up.sh rename to examples/storage/vitess/guestbook-up.sh diff --git a/examples/vitess/vitess-down.sh b/examples/storage/vitess/vitess-down.sh similarity index 100% rename from examples/vitess/vitess-down.sh rename to examples/storage/vitess/vitess-down.sh diff --git a/examples/vitess/vitess-up.sh b/examples/storage/vitess/vitess-up.sh similarity index 100% rename from examples/vitess/vitess-up.sh rename to examples/storage/vitess/vitess-up.sh diff --git a/examples/vitess/vtctld-controller-template.yaml b/examples/storage/vitess/vtctld-controller-template.yaml similarity index 100% rename from examples/vitess/vtctld-controller-template.yaml rename to examples/storage/vitess/vtctld-controller-template.yaml diff --git a/examples/vitess/vtctld-down.sh b/examples/storage/vitess/vtctld-down.sh similarity index 100% rename from examples/vitess/vtctld-down.sh rename to examples/storage/vitess/vtctld-down.sh diff --git a/examples/vitess/vtctld-service.yaml b/examples/storage/vitess/vtctld-service.yaml similarity index 100% rename from examples/vitess/vtctld-service.yaml rename to examples/storage/vitess/vtctld-service.yaml diff --git a/examples/vitess/vtctld-up.sh b/examples/storage/vitess/vtctld-up.sh similarity index 100% rename from examples/vitess/vtctld-up.sh rename to examples/storage/vitess/vtctld-up.sh diff --git a/examples/vitess/vtgate-controller-template.yaml b/examples/storage/vitess/vtgate-controller-template.yaml similarity index 100% rename from examples/vitess/vtgate-controller-template.yaml rename to examples/storage/vitess/vtgate-controller-template.yaml diff --git a/examples/vitess/vtgate-down.sh b/examples/storage/vitess/vtgate-down.sh similarity index 100% rename from examples/vitess/vtgate-down.sh rename to examples/storage/vitess/vtgate-down.sh diff --git a/examples/vitess/vtgate-service.yaml b/examples/storage/vitess/vtgate-service.yaml similarity index 100% rename from examples/vitess/vtgate-service.yaml rename to examples/storage/vitess/vtgate-service.yaml diff --git a/examples/vitess/vtgate-up.sh b/examples/storage/vitess/vtgate-up.sh similarity index 100% rename from examples/vitess/vtgate-up.sh rename to examples/storage/vitess/vtgate-up.sh diff --git a/examples/vitess/vttablet-down.sh b/examples/storage/vitess/vttablet-down.sh similarity index 100% rename from examples/vitess/vttablet-down.sh rename to examples/storage/vitess/vttablet-down.sh diff --git a/examples/vitess/vttablet-pod-template.yaml b/examples/storage/vitess/vttablet-pod-template.yaml similarity index 100% rename from examples/vitess/vttablet-pod-template.yaml rename to examples/storage/vitess/vttablet-pod-template.yaml diff --git a/examples/vitess/vttablet-up.sh b/examples/storage/vitess/vttablet-up.sh similarity index 100% rename from examples/vitess/vttablet-up.sh rename to examples/storage/vitess/vttablet-up.sh diff --git a/examples/aws_ebs/README.md b/examples/volumes/aws_ebs/README.md similarity index 86% rename from examples/aws_ebs/README.md rename to examples/volumes/aws_ebs/README.md index 970c5f04317..bd3123cb360 100644 --- a/examples/aws_ebs/README.md +++ b/examples/volumes/aws_ebs/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/aws_ebs/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -48,7 +43,7 @@ Create a volume in the same region as your node. Add your volume information in the pod description file aws-ebs-web.yaml then create the pod: ```shell - $ kubectl create -f examples/aws_ebs/aws-ebs-web.yaml + $ kubectl create -f examples/volumes/aws_ebs/aws-ebs-web.yaml ``` Add some data to the volume if is empty: @@ -66,5 +61,5 @@ You should now be able to query your web server: -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/aws_ebs/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/aws_ebs/README.md?pixel)]() diff --git a/examples/aws_ebs/aws-ebs-web.yaml b/examples/volumes/aws_ebs/aws-ebs-web.yaml similarity index 100% rename from examples/aws_ebs/aws-ebs-web.yaml rename to examples/volumes/aws_ebs/aws-ebs-web.yaml diff --git a/examples/azure_file/README.md b/examples/volumes/azure_file/README.md similarity index 85% rename from examples/azure_file/README.md rename to examples/volumes/azure_file/README.md index 9b891bb466f..f6b9bc71a6b 100644 --- a/examples/azure_file/README.md +++ b/examples/volumes/azure_file/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/azure_file/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -53,7 +48,7 @@ In the pod, you need to provide the following information: Create the secret: ```console - # kubectl create -f examples/azure_file/secret/azure-secret.yaml + # kubectl create -f examples/volumes/azure_file/secret/azure-secret.yaml ``` You should see the account name and key from `kubectl get secret` @@ -61,9 +56,9 @@ You should see the account name and key from `kubectl get secret` Then create the Pod: ```console - # kubectl create -f examples/azure_file/azure.yaml + # kubectl create -f examples/volumes/azure_file/azure.yaml ``` -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/azure_file/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/azure_file/README.md?pixel)]() diff --git a/examples/azure_file/azure.yaml b/examples/volumes/azure_file/azure.yaml similarity index 100% rename from examples/azure_file/azure.yaml rename to examples/volumes/azure_file/azure.yaml diff --git a/examples/azure_file/secret/azure-secret.yaml b/examples/volumes/azure_file/secret/azure-secret.yaml similarity index 100% rename from examples/azure_file/secret/azure-secret.yaml rename to examples/volumes/azure_file/secret/azure-secret.yaml diff --git a/examples/cephfs/README.md b/examples/volumes/cephfs/README.md similarity index 85% rename from examples/cephfs/README.md rename to examples/volumes/cephfs/README.md index 24dd017f99d..f070bd7d900 100644 --- a/examples/cephfs/README.md +++ b/examples/volumes/cephfs/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/cephfs/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -55,12 +50,12 @@ Once you have installed Ceph and a Kubernetes cluster, you can create a pod base Here are the commands: ```console - # kubectl create -f examples/cephfs/cephfs.yaml + # kubectl create -f examples/volumes/cephfs/cephfs.yaml # create a secret if you want to use Ceph secret instead of secret file - # kubectl create -f examples/cephfs/secret/ceph-secret.yaml + # kubectl create -f examples/volumes/cephfs/secret/ceph-secret.yaml - # kubectl create -f examples/cephfs/cephfs-with-secret.yaml + # kubectl create -f examples/volumes/cephfs/cephfs-with-secret.yaml # kubectl get pods ``` @@ -68,5 +63,5 @@ Here are the commands: -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/cephfs/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/cephfs/README.md?pixel)]() diff --git a/examples/cephfs/cephfs-with-secret.yaml b/examples/volumes/cephfs/cephfs-with-secret.yaml similarity index 100% rename from examples/cephfs/cephfs-with-secret.yaml rename to examples/volumes/cephfs/cephfs-with-secret.yaml diff --git a/examples/cephfs/cephfs.yaml b/examples/volumes/cephfs/cephfs.yaml similarity index 100% rename from examples/cephfs/cephfs.yaml rename to examples/volumes/cephfs/cephfs.yaml diff --git a/examples/cephfs/secret/ceph-secret.yaml b/examples/volumes/cephfs/secret/ceph-secret.yaml similarity index 100% rename from examples/cephfs/secret/ceph-secret.yaml rename to examples/volumes/cephfs/secret/ceph-secret.yaml diff --git a/examples/fibre_channel/README.md b/examples/volumes/fibre_channel/README.md similarity index 91% rename from examples/fibre_channel/README.md rename to examples/volumes/fibre_channel/README.md index e76063a9401..aeec67f31bc 100644 --- a/examples/fibre_channel/README.md +++ b/examples/volumes/fibre_channel/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/fibre_channel/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -49,7 +44,7 @@ kubectl create -f ./your_new_pod.json Here is my command and output: ```console -# kubectl create -f examples/fibre_channel/fc.yaml +# kubectl create -f examples/volumes/fibre_channel/fc.yaml # kubectl get pods NAME READY STATUS RESTARTS AGE fcpd 2/2 Running 0 10m @@ -74,5 +69,5 @@ CONTAINER ID IMAGE COMMAND C ``` -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/fibre_channel/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/fibre_channel/README.md?pixel)]() diff --git a/examples/fibre_channel/fc.yaml b/examples/volumes/fibre_channel/fc.yaml similarity index 100% rename from examples/fibre_channel/fc.yaml rename to examples/volumes/fibre_channel/fc.yaml diff --git a/examples/flexvolume/README.md b/examples/volumes/flexvolume/README.md similarity index 92% rename from examples/flexvolume/README.md rename to examples/volumes/flexvolume/README.md index 7b3b2fb7025..9998494f72b 100644 --- a/examples/flexvolume/README.md +++ b/examples/volumes/flexvolume/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/flexvolume/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -114,5 +109,5 @@ In addition to the flags specified by the user in the Options field of the FlexV See [nginx.yaml](nginx.yaml) for a quick example on how to use Flexvolume in a pod. -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/flexvolume/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/flexvolume/README.md?pixel)]() diff --git a/examples/flexvolume/lvm b/examples/volumes/flexvolume/lvm similarity index 100% rename from examples/flexvolume/lvm rename to examples/volumes/flexvolume/lvm diff --git a/examples/flexvolume/nginx.yaml b/examples/volumes/flexvolume/nginx.yaml similarity index 100% rename from examples/flexvolume/nginx.yaml rename to examples/volumes/flexvolume/nginx.yaml diff --git a/examples/flocker/README.md b/examples/volumes/flocker/README.md similarity index 96% rename from examples/flocker/README.md rename to examples/volumes/flocker/README.md index 5104864834c..7361351e0d1 100644 --- a/examples/flocker/README.md +++ b/examples/volumes/flocker/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/flocker/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -101,7 +96,7 @@ The following *volume* spec from the [example pod](flocker-pod.yml) illustrates Use `kubetctl` to create the pod. ```sh -$ kubectl create -f examples/flocker/flocker-pod.yml +$ kubectl create -f examples/volumes/flocker/flocker-pod.yml ``` You should now verify that the pod is running and determine it's IP address: @@ -145,5 +140,5 @@ Read more about the [Flocker Cluster Architecture](https://docs.clusterhq.com/en To see a demo example of using Kubernetes and Flocker, visit [Flocker's blog post on High Availability with Kubernetes and Flocker](https://clusterhq.com/2015/12/22/ha-demo-kubernetes-flocker/) -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/flocker/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/flocker/README.md?pixel)]() diff --git a/examples/flocker/flocker-pod-with-rc.yml b/examples/volumes/flocker/flocker-pod-with-rc.yml similarity index 100% rename from examples/flocker/flocker-pod-with-rc.yml rename to examples/volumes/flocker/flocker-pod-with-rc.yml diff --git a/examples/flocker/flocker-pod.yml b/examples/volumes/flocker/flocker-pod.yml similarity index 100% rename from examples/flocker/flocker-pod.yml rename to examples/volumes/flocker/flocker-pod.yml diff --git a/examples/glusterfs/README.md b/examples/volumes/glusterfs/README.md similarity index 90% rename from examples/glusterfs/README.md rename to examples/volumes/glusterfs/README.md index 8f3937f3ce7..2cdc5b1f0b7 100644 --- a/examples/glusterfs/README.md +++ b/examples/volumes/glusterfs/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/glusterfs/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -65,7 +60,7 @@ The "IP" field should be filled with the address of a node in the Glusterfs serv Create the endpoints, ```sh -$ kubectl create -f examples/glusterfs/glusterfs-endpoints.json +$ kubectl create -f examples/volumes/glusterfs/glusterfs-endpoints.json ``` You can verify that the endpoints are successfully created by running @@ -81,7 +76,7 @@ We need also create a service for this endpoints, so that the endpoints will be Use this command to create the service: ```sh -$ kubectl create -f examples/glusterfs/glusterfs-service.json +$ kubectl create -f examples/volumes/glusterfs/glusterfs-service.json ``` @@ -109,7 +104,7 @@ The parameters are explained as the followings. Create a pod that has a container using Glusterfs volume, ```sh -$ kubectl create -f examples/glusterfs/glusterfs-pod.json +$ kubectl create -f examples/volumes/glusterfs/glusterfs-pod.json ``` You can verify that the pod is running: @@ -134,5 +129,5 @@ You may also run `docker ps` on the host to see the actual container. -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/glusterfs/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/glusterfs/README.md?pixel)]() diff --git a/examples/glusterfs/glusterfs-endpoints.json b/examples/volumes/glusterfs/glusterfs-endpoints.json similarity index 100% rename from examples/glusterfs/glusterfs-endpoints.json rename to examples/volumes/glusterfs/glusterfs-endpoints.json diff --git a/examples/glusterfs/glusterfs-pod.json b/examples/volumes/glusterfs/glusterfs-pod.json similarity index 100% rename from examples/glusterfs/glusterfs-pod.json rename to examples/volumes/glusterfs/glusterfs-pod.json diff --git a/examples/glusterfs/glusterfs-service.json b/examples/volumes/glusterfs/glusterfs-service.json similarity index 100% rename from examples/glusterfs/glusterfs-service.json rename to examples/volumes/glusterfs/glusterfs-service.json diff --git a/examples/iscsi/README.md b/examples/volumes/iscsi/README.md similarity index 95% rename from examples/iscsi/README.md rename to examples/volumes/iscsi/README.md index 25a734f12ba..f08686257b5 100644 --- a/examples/iscsi/README.md +++ b/examples/volumes/iscsi/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/iscsi/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -70,7 +65,7 @@ kubectl create -f ./your_new_pod.yaml Here is the example pod created and expected output: ```console -# kubectl create -f examples/iscsi/iscsi.yaml +# kubectl create -f examples/volumes/iscsi/iscsi.yaml # kubectl get pods NAME READY STATUS RESTARTS AGE iscsipd 2/2 RUNNING 0 2m @@ -120,5 +115,5 @@ Run *docker inspect* and verify the container mounted the host directory into th -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/iscsi/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/iscsi/README.md?pixel)]() diff --git a/examples/iscsi/iscsi.yaml b/examples/volumes/iscsi/iscsi.yaml similarity index 100% rename from examples/iscsi/iscsi.yaml rename to examples/volumes/iscsi/iscsi.yaml diff --git a/examples/nfs/README.md b/examples/volumes/nfs/README.md similarity index 84% rename from examples/nfs/README.md rename to examples/volumes/nfs/README.md index a1fa2a84556..8fa22fdcc8e 100644 --- a/examples/nfs/README.md +++ b/examples/volumes/nfs/README.md @@ -21,7 +21,7 @@ refer to the docs that go with that version. The latest release of this document can be found -[here](http://releases.k8s.io/release-1.2/examples/nfs/README.md). +[here](http://releases.k8s.io/release-1.2/examples/volumes/nfs/README.md). Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -58,16 +58,16 @@ Note, this example uses an NFS container that doesn't support NFSv4. ## tl;dr Quickstart ```console -$ kubectl create -f examples/nfs/provisioner/nfs-server-gce-pv.yaml -$ kubectl create -f examples/nfs/nfs-server-rc.yaml -$ kubectl create -f examples/nfs/nfs-server-service.yaml +$ kubectl create -f examples/volumes/nfs/provisioner/nfs-server-gce-pv.yaml +$ kubectl create -f examples/volumes/nfs/nfs-server-rc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-server-service.yaml # get the cluster IP of the server using the following command $ kubectl describe services nfs-server # use the NFS server IP to update nfs-pv.yaml and execute the following -$ kubectl create -f examples/nfs/nfs-pv.yaml -$ kubectl create -f examples/nfs/nfs-pvc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-pv.yaml +$ kubectl create -f examples/volumes/nfs/nfs-pvc.yaml # run a fake backend -$ kubectl create -f examples/nfs/nfs-busybox-rc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-busybox-rc.yaml # get pod name from this command $ kubectl get pod -l name=nfs-busybox # use the pod name to check the test file @@ -94,12 +94,12 @@ Define [the NFS Service and Replication Controller](nfs-server-rc.yaml) and The NFS server exports an an auto-provisioned persistent volume backed by GCE PD: ```console -$ kubectl create -f examples/nfs/provisioner/nfs-server-gce-pv.yaml +$ kubectl create -f examples/volumes/nfs/provisioner/nfs-server-gce-pv.yaml ``` ```console -$ kubectl create -f examples/nfs/nfs-server-rc.yaml -$ kubectl create -f examples/nfs/nfs-server-service.yaml +$ kubectl create -f examples/volumes/nfs/nfs-server-rc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-server-service.yaml ``` The directory contains dummy `index.html`. Wait until the pod is running @@ -119,14 +119,14 @@ Replace the invalid IP in the [nfs PV](nfs-pv.yaml). (In the future, we'll be able to tie these together using the service names, but for now, you have to hardcode the IP.) -Create the the [persistent volume](../../docs/user-guide/persistent-volumes.md) +Create the the [persistent volume](../../../docs/user-guide/persistent-volumes.md) and the persistent volume claim for your NFS server. The persistent volume and claim gives us an indirection that allow multiple pods to refer to the NFS server using a symbolic name rather than the hardcoded server address. ```console -$ kubectl create -f examples/nfs/nfs-pv.yaml -$ kubectl create -f examples/nfs/nfs-pvc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-pv.yaml +$ kubectl create -f examples/volumes/nfs/nfs-pvc.yaml ``` ## Setup the fake backend @@ -135,7 +135,7 @@ The [NFS busybox controller](nfs-busybox-rc.yaml) updates `index.html` on the NFS server every 10 seconds. Let's start that now: ```console -$ kubectl create -f examples/nfs/nfs-busybox-rc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-busybox-rc.yaml ``` Conveniently, it's also a `busybox` pod, so we can get an early check @@ -165,14 +165,14 @@ volume and runs a simple web server on it. Define the pod: ```console -$ kubectl create -f examples/nfs/nfs-web-rc.yaml +$ kubectl create -f examples/volumes/nfs/nfs-web-rc.yaml ``` This creates two pods, each of which serve the `index.html` from above. We can then use a simple service to front it: ```console -kubectl create -f examples/nfs/nfs-web-service.yaml +kubectl create -f examples/volumes/nfs/nfs-web-service.yaml ``` We can then use the busybox container we launched before to check that `nginx` @@ -200,5 +200,5 @@ nfs-busybox-w3s4t -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/nfs/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/nfs/README.md?pixel)]() diff --git a/examples/nfs/nfs-busybox-rc.yaml b/examples/volumes/nfs/nfs-busybox-rc.yaml similarity index 100% rename from examples/nfs/nfs-busybox-rc.yaml rename to examples/volumes/nfs/nfs-busybox-rc.yaml diff --git a/examples/nfs/nfs-data/Dockerfile b/examples/volumes/nfs/nfs-data/Dockerfile similarity index 100% rename from examples/nfs/nfs-data/Dockerfile rename to examples/volumes/nfs/nfs-data/Dockerfile diff --git a/examples/nfs/nfs-data/README.md b/examples/volumes/nfs/nfs-data/README.md similarity index 84% rename from examples/nfs/nfs-data/README.md rename to examples/volumes/nfs/nfs-data/README.md index a23032af4d7..af110708e5d 100644 --- a/examples/nfs/nfs-data/README.md +++ b/examples/volumes/nfs/nfs-data/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/nfs/nfs-data/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -43,5 +38,5 @@ Available as `gcr.io/google-samples/nfs-server` -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/nfs/nfs-data/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/nfs/nfs-data/README.md?pixel)]() diff --git a/examples/nfs/nfs-data/index.html b/examples/volumes/nfs/nfs-data/index.html similarity index 100% rename from examples/nfs/nfs-data/index.html rename to examples/volumes/nfs/nfs-data/index.html diff --git a/examples/nfs/nfs-data/run_nfs.sh b/examples/volumes/nfs/nfs-data/run_nfs.sh similarity index 100% rename from examples/nfs/nfs-data/run_nfs.sh rename to examples/volumes/nfs/nfs-data/run_nfs.sh diff --git a/examples/nfs/nfs-pv.png b/examples/volumes/nfs/nfs-pv.png similarity index 100% rename from examples/nfs/nfs-pv.png rename to examples/volumes/nfs/nfs-pv.png diff --git a/examples/nfs/nfs-pv.yaml b/examples/volumes/nfs/nfs-pv.yaml similarity index 100% rename from examples/nfs/nfs-pv.yaml rename to examples/volumes/nfs/nfs-pv.yaml diff --git a/examples/nfs/nfs-pvc.yaml b/examples/volumes/nfs/nfs-pvc.yaml similarity index 100% rename from examples/nfs/nfs-pvc.yaml rename to examples/volumes/nfs/nfs-pvc.yaml diff --git a/examples/nfs/nfs-server-rc.yaml b/examples/volumes/nfs/nfs-server-rc.yaml similarity index 100% rename from examples/nfs/nfs-server-rc.yaml rename to examples/volumes/nfs/nfs-server-rc.yaml diff --git a/examples/nfs/nfs-server-service.yaml b/examples/volumes/nfs/nfs-server-service.yaml similarity index 100% rename from examples/nfs/nfs-server-service.yaml rename to examples/volumes/nfs/nfs-server-service.yaml diff --git a/examples/nfs/nfs-web-rc.yaml b/examples/volumes/nfs/nfs-web-rc.yaml similarity index 100% rename from examples/nfs/nfs-web-rc.yaml rename to examples/volumes/nfs/nfs-web-rc.yaml diff --git a/examples/nfs/nfs-web-service.yaml b/examples/volumes/nfs/nfs-web-service.yaml similarity index 100% rename from examples/nfs/nfs-web-service.yaml rename to examples/volumes/nfs/nfs-web-service.yaml diff --git a/examples/nfs/provisioner/nfs-server-gce-pv.yaml b/examples/volumes/nfs/provisioner/nfs-server-gce-pv.yaml similarity index 100% rename from examples/nfs/provisioner/nfs-server-gce-pv.yaml rename to examples/volumes/nfs/provisioner/nfs-server-gce-pv.yaml diff --git a/examples/rbd/README.md b/examples/volumes/rbd/README.md similarity index 90% rename from examples/rbd/README.md rename to examples/volumes/rbd/README.md index ca7cbcc5a6d..5620b3b26aa 100644 --- a/examples/rbd/README.md +++ b/examples/volumes/rbd/README.md @@ -18,11 +18,6 @@ If you are using a released version of Kubernetes, you should refer to the docs that go with that version. - - -The latest release of this document can be found -[here](http://releases.k8s.io/release-1.3/examples/rbd/README.md). - Documentation for other releases can be found at [releases.k8s.io](http://releases.k8s.io). @@ -65,7 +60,7 @@ QVFBTWdYaFZ3QkNlRGhBQTlubFBhRnlmVVNhdEdENGRyRldEdlE9PQ== An example yaml is provided [here](secret/ceph-secret.yaml). Then post the secret through ```kubectl``` in the following command. ```console - # kubectl create -f examples/rbd/secret/ceph-secret.yaml + # kubectl create -f examples/volumes/rbd/secret/ceph-secret.yaml ``` # Get started @@ -73,7 +68,7 @@ An example yaml is provided [here](secret/ceph-secret.yaml). Then post the secre Here are my commands: ```console - # kubectl create -f examples/rbd/rbd.json + # kubectl create -f examples/volumes/rbd/rbd.json # kubectl get pods ``` @@ -89,5 +84,5 @@ On the Kubernetes host, I got these in mount output -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/rbd/README.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/rbd/README.md?pixel)]() diff --git a/examples/rbd/rbd-with-secret.json b/examples/volumes/rbd/rbd-with-secret.json similarity index 100% rename from examples/rbd/rbd-with-secret.json rename to examples/volumes/rbd/rbd-with-secret.json diff --git a/examples/rbd/rbd.json b/examples/volumes/rbd/rbd.json similarity index 100% rename from examples/rbd/rbd.json rename to examples/volumes/rbd/rbd.json diff --git a/examples/rbd/secret/ceph-secret.yaml b/examples/volumes/rbd/secret/ceph-secret.yaml similarity index 100% rename from examples/rbd/secret/ceph-secret.yaml rename to examples/volumes/rbd/secret/ceph-secret.yaml diff --git a/hack/test-cmd.sh b/hack/test-cmd.sh index 623028f2e2f..b51705eaa7d 100755 --- a/hack/test-cmd.sh +++ b/hack/test-cmd.sh @@ -565,7 +565,7 @@ runTests() { kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" '' # Command kubectl create -f docs/admin/limitrange/valid-pod.yaml "${kube_flags[@]}" - kubectl create -f examples/redis/redis-proxy.yaml "${kube_flags[@]}" + kubectl create -f examples/storage/redis/redis-proxy.yaml "${kube_flags[@]}" # Post-condition: valid-pod and redis-proxy PODs are created kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" 'redis-proxy:valid-pod:' @@ -2287,8 +2287,8 @@ __EOF__ ##################### kube::log::status "Testing resource aliasing" - kubectl create -f examples/cassandra/cassandra-controller.yaml "${kube_flags[@]}" - kubectl create -f examples/cassandra/cassandra-service.yaml "${kube_flags[@]}" + kubectl create -f examples/storage/cassandra/cassandra-controller.yaml "${kube_flags[@]}" + kubectl create -f examples/storage/cassandra/cassandra-service.yaml "${kube_flags[@]}" object="all -l'app=cassandra'" request="{{range.items}}{{range .metadata.labels}}{{.}}:{{end}}{{end}}" diff --git a/hack/verify-flags/exceptions.txt b/hack/verify-flags/exceptions.txt index ff5086314f0..7952d992777 100644 --- a/hack/verify-flags/exceptions.txt +++ b/hack/verify-flags/exceptions.txt @@ -69,9 +69,9 @@ docs/getting-started-guides/coreos/azure/lib/deployment_logic/kubernetes.js: re docs/getting-started-guides/coreos/azure/lib/deployment_logic/kubernetes.js: return cloud_config.process_template(input_file, output_file, function(data) { docs/getting-started-guides/coreos/azure/lib/deployment_logic/kubernetes.js: var write_files_extra = cloud_config.write_files_from('addons', '/etc/kubernetes/addons'); docs/getting-started-guides/coreos/azure/lib/deployment_logic/kubernetes.js:var cloud_config = require('../cloud_config.js'); -examples/cassandra/image/run.sh: cluster_name \ examples/cluster-dns/images/frontend/client.py: service_address = socket.gethostbyname(hostname) -examples/vitess/env.sh: node_ip=$(get_node_ip) +examples/storage/cassandra/image/run.sh: cluster_name \ +examples/storage/vitess/env.sh: node_ip=$(get_node_ip) hack/jenkins/e2e-runner.sh: local -r image_project="$1" hack/local-up-cluster.sh: runtime_config="--runtime-config=${RUNTIME_CONFIG}" hack/local-up-cluster.sh: runtime_config="" diff --git a/pkg/api/v1/generated.proto b/pkg/api/v1/generated.proto index f2101dfc9ac..060b6cac429 100644 --- a/pkg/api/v1/generated.proto +++ b/pkg/api/v1/generated.proto @@ -117,27 +117,27 @@ message Capabilities { // Cephfs volumes do not support ownership management or SELinux relabeling. message CephFSVolumeSource { // Required: Monitors is a collection of Ceph monitors - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it repeated string monitors = 1; // Optional: Used as the mounted root, rather than the full Ceph tree, default is / optional string path = 2; // Optional: User is the rados user name, default is admin - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it optional string user = 3; // Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it optional string secretFile = 4; // Optional: SecretRef is reference to the authentication secret for User, default is empty. - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it optional LocalObjectReference secretRef = 5; // Optional: Defaults to false (read/write). ReadOnly here will force // the ReadOnly setting in VolumeMounts. - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it optional bool readOnly = 6; } @@ -844,16 +844,16 @@ message GitRepoVolumeSource { // Glusterfs volumes do not support ownership management or SELinux relabeling. message GlusterfsVolumeSource { // EndpointsName is the endpoint name that details Glusterfs topology. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod optional string endpoints = 1; // Path is the Glusterfs volume path. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod optional string path = 2; // ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. // Defaults to false. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod optional bool readOnly = 3; } @@ -1672,7 +1672,7 @@ message PersistentVolumeSource { // Glusterfs represents a Glusterfs volume that is attached to a host and // exposed to the pod. Provisioned by an admin. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md optional GlusterfsVolumeSource glusterfs = 4; // NFS represents an NFS mount on the host. Provisioned by an admin. @@ -1680,7 +1680,7 @@ message PersistentVolumeSource { optional NFSVolumeSource nfs = 5; // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md optional RBDVolumeSource rbd = 6; // ISCSI represents an ISCSI Disk resource that is attached to a @@ -2261,11 +2261,11 @@ message Probe { // RBD volumes support ownership management and SELinux relabeling. message RBDVolumeSource { // A collection of Ceph monitors. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it repeated string monitors = 1; // The rados image name. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it optional string image = 2; // Filesystem type of the volume that you want to mount. @@ -2277,28 +2277,28 @@ message RBDVolumeSource { // The rados pool name. // Default is rbd. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it. + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it. optional string pool = 4; // The rados user name. // Default is admin. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it optional string user = 5; // Keyring is the path to key ring for RBDUser. // Default is /etc/ceph/keyring. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it optional string keyring = 6; // SecretRef is name of the authentication secret for RBDUser. If provided // overrides keyring. // Default is nil. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it optional LocalObjectReference secretRef = 7; // ReadOnly here will force the ReadOnly setting in VolumeMounts. // Defaults to false. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it optional bool readOnly = 8; } @@ -2865,11 +2865,11 @@ message VolumeSource { // ISCSI represents an ISCSI Disk resource that is attached to a // kubelet's host machine and then exposed to the pod. - // More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md optional ISCSIVolumeSource iscsi = 8; // Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md optional GlusterfsVolumeSource glusterfs = 9; // PersistentVolumeClaimVolumeSource represents a reference to a @@ -2878,7 +2878,7 @@ message VolumeSource { optional PersistentVolumeClaimVolumeSource persistentVolumeClaim = 10; // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md optional RBDVolumeSource rbd = 11; // FlexVolume represents a generic volume resource that is diff --git a/pkg/api/v1/types.go b/pkg/api/v1/types.go index 5dc3afceb50..42a0b987925 100644 --- a/pkg/api/v1/types.go +++ b/pkg/api/v1/types.go @@ -241,17 +241,17 @@ type VolumeSource struct { NFS *NFSVolumeSource `json:"nfs,omitempty" protobuf:"bytes,7,opt,name=nfs"` // ISCSI represents an ISCSI Disk resource that is attached to a // kubelet's host machine and then exposed to the pod. - // More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md ISCSI *ISCSIVolumeSource `json:"iscsi,omitempty" protobuf:"bytes,8,opt,name=iscsi"` // Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" protobuf:"bytes,9,opt,name=glusterfs"` // PersistentVolumeClaimVolumeSource represents a reference to a // PersistentVolumeClaim in the same namespace. // More info: http://releases.k8s.io/HEAD/docs/user-guide/persistent-volumes.md#persistentvolumeclaims PersistentVolumeClaim *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty" protobuf:"bytes,10,opt,name=persistentVolumeClaim"` // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md RBD *RBDVolumeSource `json:"rbd,omitempty" protobuf:"bytes,11,opt,name=rbd"` // FlexVolume represents a generic volume resource that is // provisioned/attached using a exec based plugin. This is an @@ -311,13 +311,13 @@ type PersistentVolumeSource struct { HostPath *HostPathVolumeSource `json:"hostPath,omitempty" protobuf:"bytes,3,opt,name=hostPath"` // Glusterfs represents a Glusterfs volume that is attached to a host and // exposed to the pod. Provisioned by an admin. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md Glusterfs *GlusterfsVolumeSource `json:"glusterfs,omitempty" protobuf:"bytes,4,opt,name=glusterfs"` // NFS represents an NFS mount on the host. Provisioned by an admin. // More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#nfs NFS *NFSVolumeSource `json:"nfs,omitempty" protobuf:"bytes,5,opt,name=nfs"` // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md RBD *RBDVolumeSource `json:"rbd,omitempty" protobuf:"bytes,6,opt,name=rbd"` // ISCSI represents an ISCSI Disk resource that is attached to a // kubelet's host machine and then exposed to the pod. Provisioned by an admin. @@ -543,16 +543,16 @@ type EmptyDirVolumeSource struct { // Glusterfs volumes do not support ownership management or SELinux relabeling. type GlusterfsVolumeSource struct { // EndpointsName is the endpoint name that details Glusterfs topology. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod EndpointsName string `json:"endpoints" protobuf:"bytes,1,opt,name=endpoints"` // Path is the Glusterfs volume path. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod Path string `json:"path" protobuf:"bytes,2,opt,name=path"` // ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. // Defaults to false. - // More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod + // More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,3,opt,name=readOnly"` } @@ -560,10 +560,10 @@ type GlusterfsVolumeSource struct { // RBD volumes support ownership management and SELinux relabeling. type RBDVolumeSource struct { // A collection of Ceph monitors. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it CephMonitors []string `json:"monitors" protobuf:"bytes,1,rep,name=monitors"` // The rados image name. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it RBDImage string `json:"image" protobuf:"bytes,2,opt,name=image"` // Filesystem type of the volume that you want to mount. // Tip: Ensure that the filesystem type is supported by the host operating system. @@ -573,24 +573,24 @@ type RBDVolumeSource struct { FSType string `json:"fsType,omitempty" protobuf:"bytes,3,opt,name=fsType"` // The rados pool name. // Default is rbd. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it. + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it. RBDPool string `json:"pool,omitempty" protobuf:"bytes,4,opt,name=pool"` // The rados user name. // Default is admin. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it RadosUser string `json:"user,omitempty" protobuf:"bytes,5,opt,name=user"` // Keyring is the path to key ring for RBDUser. // Default is /etc/ceph/keyring. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it Keyring string `json:"keyring,omitempty" protobuf:"bytes,6,opt,name=keyring"` // SecretRef is name of the authentication secret for RBDUser. If provided // overrides keyring. // Default is nil. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it SecretRef *LocalObjectReference `json:"secretRef,omitempty" protobuf:"bytes,7,opt,name=secretRef"` // ReadOnly here will force the ReadOnly setting in VolumeMounts. // Defaults to false. - // More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,8,opt,name=readOnly"` } @@ -617,22 +617,22 @@ type CinderVolumeSource struct { // Cephfs volumes do not support ownership management or SELinux relabeling. type CephFSVolumeSource struct { // Required: Monitors is a collection of Ceph monitors - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it Monitors []string `json:"monitors" protobuf:"bytes,1,rep,name=monitors"` // Optional: Used as the mounted root, rather than the full Ceph tree, default is / Path string `json:"path,omitempty" protobuf:"bytes,2,opt,name=path"` // Optional: User is the rados user name, default is admin - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it User string `json:"user,omitempty" protobuf:"bytes,3,opt,name=user"` // Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it SecretFile string `json:"secretFile,omitempty" protobuf:"bytes,4,opt,name=secretFile"` // Optional: SecretRef is reference to the authentication secret for User, default is empty. - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it SecretRef *LocalObjectReference `json:"secretRef,omitempty" protobuf:"bytes,5,opt,name=secretRef"` // Optional: Defaults to false (read/write). ReadOnly here will force // the ReadOnly setting in VolumeMounts. - // More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it + // More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,6,opt,name=readOnly"` } diff --git a/pkg/api/v1/types_swagger_doc_generated.go b/pkg/api/v1/types_swagger_doc_generated.go index 7fe761a6731..c5eb00db3fe 100644 --- a/pkg/api/v1/types_swagger_doc_generated.go +++ b/pkg/api/v1/types_swagger_doc_generated.go @@ -93,12 +93,12 @@ func (Capabilities) SwaggerDoc() map[string]string { var map_CephFSVolumeSource = map[string]string{ "": "Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not support ownership management or SELinux relabeling.", - "monitors": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it", + "monitors": "Required: Monitors is a collection of Ceph monitors More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it", "path": "Optional: Used as the mounted root, rather than the full Ceph tree, default is /", - "user": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it", - "secretFile": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it", - "secretRef": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it", - "readOnly": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/cephfs/README.md#how-to-use-it", + "user": "Optional: User is the rados user name, default is admin More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it", + "secretFile": "Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it", + "secretRef": "Optional: SecretRef is reference to the authentication secret for User, default is empty. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it", + "readOnly": "Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts. More info: http://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it", } func (CephFSVolumeSource) SwaggerDoc() map[string]string { @@ -536,9 +536,9 @@ func (GitRepoVolumeSource) SwaggerDoc() map[string]string { var map_GlusterfsVolumeSource = map[string]string{ "": "Represents a Glusterfs mount that lasts the lifetime of a pod. Glusterfs volumes do not support ownership management or SELinux relabeling.", - "endpoints": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod", - "path": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod", - "readOnly": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md#create-a-pod", + "endpoints": "EndpointsName is the endpoint name that details Glusterfs topology. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod", + "path": "Path is the Glusterfs volume path. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod", + "readOnly": "ReadOnly here will force the Glusterfs volume to be mounted with read-only permissions. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod", } func (GlusterfsVolumeSource) SwaggerDoc() map[string]string { @@ -1056,9 +1056,9 @@ var map_PersistentVolumeSource = map[string]string{ "gcePersistentDisk": "GCEPersistentDisk represents a GCE Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#gcepersistentdisk", "awsElasticBlockStore": "AWSElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#awselasticblockstore", "hostPath": "HostPath represents a directory on the host. Provisioned by a developer or tester. This is useful for single-node development and testing only! On-host storage is not supported in any way and WILL NOT WORK in a multi-node cluster. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#hostpath", - "glusterfs": "Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md", + "glusterfs": "Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md", "nfs": "NFS represents an NFS mount on the host. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#nfs", - "rbd": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md", + "rbd": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md", "iscsi": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin.", "cinder": "Cinder represents a cinder volume attached and mounted on kubelets host machine More info: http://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md", "cephfs": "CephFS represents a Ceph FS mount on the host that shares a pod's lifetime", @@ -1342,14 +1342,14 @@ func (Probe) SwaggerDoc() map[string]string { var map_RBDVolumeSource = map[string]string{ "": "Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.", - "monitors": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", - "image": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", + "monitors": "A collection of Ceph monitors. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", + "image": "The rados image name. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", "fsType": "Filesystem type of the volume that you want to mount. Tip: Ensure that the filesystem type is supported by the host operating system. Examples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#rbd", - "pool": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it.", - "user": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", - "keyring": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", - "secretRef": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", - "readOnly": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md#how-to-use-it", + "pool": "The rados pool name. Default is rbd. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it.", + "user": "The rados user name. Default is admin. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", + "keyring": "Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", + "secretRef": "SecretRef is name of the authentication secret for RBDUser. If provided overrides keyring. Default is nil. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", + "readOnly": "ReadOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it", } func (RBDVolumeSource) SwaggerDoc() map[string]string { @@ -1700,10 +1700,10 @@ var map_VolumeSource = map[string]string{ "gitRepo": "GitRepo represents a git repository at a particular revision.", "secret": "Secret represents a secret that should populate this volume. More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#secrets", "nfs": "NFS represents an NFS mount on the host that shares a pod's lifetime More info: http://releases.k8s.io/HEAD/docs/user-guide/volumes.md#nfs", - "iscsi": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/iscsi/README.md", - "glusterfs": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/glusterfs/README.md", + "iscsi": "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md", + "glusterfs": "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md", "persistentVolumeClaim": "PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace. More info: http://releases.k8s.io/HEAD/docs/user-guide/persistent-volumes.md#persistentvolumeclaims", - "rbd": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/rbd/README.md", + "rbd": "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md", "flexVolume": "FlexVolume represents a generic volume resource that is provisioned/attached using a exec based plugin. This is an alpha feature and may change in future.", "cinder": "Cinder represents a cinder volume attached and mounted on kubelets host machine More info: http://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md", "cephfs": "CephFS represents a Ceph FS mount on the host that shares a pod's lifetime", diff --git a/pkg/kubectl/cmd/annotate_test.go b/pkg/kubectl/cmd/annotate_test.go index 3fd34040c7c..a903b2cf2ab 100644 --- a/pkg/kubectl/cmd/annotate_test.go +++ b/pkg/kubectl/cmd/annotate_test.go @@ -504,7 +504,7 @@ func TestAnnotateObjectFromFile(t *testing.T) { cmd := NewCmdAnnotate(f, buf) cmd.SetOutput(buf) options := &AnnotateOptions{} - options.filenames = []string{"../../../examples/cassandra/cassandra-controller.yaml"} + options.filenames = []string{"../../../examples/storage/cassandra/cassandra-controller.yaml"} args := []string{"a=b", "c-"} if err := options.Complete(f, buf, cmd, args); err != nil { t.Fatalf("unexpected error: %v", err) diff --git a/pkg/kubectl/cmd/get_test.go b/pkg/kubectl/cmd/get_test.go index 6f680e8a5f9..0be44dff53a 100644 --- a/pkg/kubectl/cmd/get_test.go +++ b/pkg/kubectl/cmd/get_test.go @@ -339,7 +339,7 @@ func TestGetObjectsIdentifiedByFile(t *testing.T) { cmd := NewCmdGet(f, buf) cmd.SetOutput(buf) - cmd.Flags().Set("filename", "../../../examples/cassandra/cassandra-controller.yaml") + cmd.Flags().Set("filename", "../../../examples/storage/cassandra/cassandra-controller.yaml") cmd.Run(cmd, []string{}) expected := []runtime.Object{&pods.Items[0]} @@ -807,7 +807,7 @@ func TestWatchResourceIdentifiedByFile(t *testing.T) { cmd.SetOutput(buf) cmd.Flags().Set("watch", "true") - cmd.Flags().Set("filename", "../../../examples/cassandra/cassandra-controller.yaml") + cmd.Flags().Set("filename", "../../../examples/storage/cassandra/cassandra-controller.yaml") cmd.Run(cmd, []string{}) expected := []runtime.Object{&pods[0], events[0].Object, events[1].Object} diff --git a/pkg/kubectl/cmd/label_test.go b/pkg/kubectl/cmd/label_test.go index d5b5af695da..2d51b24b72c 100644 --- a/pkg/kubectl/cmd/label_test.go +++ b/pkg/kubectl/cmd/label_test.go @@ -371,7 +371,7 @@ func TestLabelForResourceFromFile(t *testing.T) { buf := bytes.NewBuffer([]byte{}) cmd := NewCmdLabel(f, buf) options := &LabelOptions{ - Filenames: []string{"../../../examples/cassandra/cassandra-controller.yaml"}, + Filenames: []string{"../../../examples/storage/cassandra/cassandra-controller.yaml"}, } err := RunLabel(f, buf, cmd, []string{"a=b"}, options) diff --git a/test/e2e/examples.go b/test/e2e/examples.go index dddcfdb2181..a7d92f7418f 100644 --- a/test/e2e/examples.go +++ b/test/e2e/examples.go @@ -63,7 +63,7 @@ var _ = framework.KubeDescribe("[Feature:Example]", func() { framework.KubeDescribe("Redis", func() { It("should create and stop redis servers", func() { mkpath := func(file string) string { - return filepath.Join(framework.TestContext.RepoRoot, "examples/redis", file) + return filepath.Join(framework.TestContext.RepoRoot, "examples/storage/redis", file) } bootstrapYaml := mkpath("redis-master.yaml") sentinelServiceYaml := mkpath("redis-sentinel-service.yaml")