From 8315ef689c4a174c591581d90c3691eb5b578816 Mon Sep 17 00:00:00 2001 From: Steve Perry Date: Thu, 13 Apr 2017 11:01:04 -0700 Subject: [PATCH] Move Guide topic: Projected Volume. (#3376) --- _data/tasks.yml | 1 + .../projected-volume.md | 73 +++++++++++++++++++ docs/user-guide/projected-volume/index.md | 67 +---------------- 3 files changed, 76 insertions(+), 65 deletions(-) create mode 100644 docs/tasks/configure-pod-container/projected-volume.md diff --git a/_data/tasks.yml b/_data/tasks.yml index ae329efac1..19b3211cca 100644 --- a/_data/tasks.yml +++ b/_data/tasks.yml @@ -19,6 +19,7 @@ toc: - docs/tasks/configure-pod-container/apply-resource-quota-limit.md - docs/tasks/configure-pod-container/configure-volume-storage.md - docs/tasks/configure-pod-container/configure-persistent-volume-storage.md + - docs/tasks/configure-pod-container/projected-volume.md - docs/tasks/configure-pod-container/environment-variable-expose-pod-information.md - docs/tasks/configure-pod-container/downward-api-volume-expose-pod-information.md - docs/tasks/configure-pod-container/distribute-credentials-secure.md diff --git a/docs/tasks/configure-pod-container/projected-volume.md b/docs/tasks/configure-pod-container/projected-volume.md new file mode 100644 index 0000000000..656e283d21 --- /dev/null +++ b/docs/tasks/configure-pod-container/projected-volume.md @@ -0,0 +1,73 @@ +--- +assignees: +- jpeeler +- pmorie +title: Using Projected volumes +--- + +The _projected volume_ is a volume that projects several existing volume sources +into the same directory. Currently, one can project configmaps, downward API, +and secrets. The resulting pod spec is also shorter when projecting to a single +volume as opposed to multiple different locations. See [all-in-one volume design document](https://github.com/kubernetes/community/blob/{{page.githubbranch}}/contributors/design-proposals/all-in-one-volume.md) +for more information. + +* TOC +{:toc} + +## Overview of a projected volume + +The projected volume encapsulates multiple volumes to be projected, with each +volume source respecting nearly the same parameters as supported by each +individual type. Consider the following example: + +```yaml +apiVersion: v1 +kind: Pod +metadata: + name: volume-test +spec: + containers: + - name: container-test + image: busybox + volumeMounts: + - name: all-in-one + mountPath: "/projected-volume" + readOnly: true + volumes: + - name: all-in-one + projected: + sources: + - secret: + name: mysecret + items: + - key: username + path: my-group/my-username + - secret: + name: mysecret2 + items: + - key: password + path: my-group/my-password + mode: 511 +``` + +Each volume source is listed in the spec under `sources`. As stated above the +parameters are nearly the same with two exceptions: + +* For secrets, the `secretName` field has been changed to `name` to be consistent +with config maps naming. +* The `defaultMode` can only be specified at the projected level and not for each +volume source. However, as illustrated above, you can explicitly set the `mode` +for each individual projection. + +## Creating projections + +A projected volume is created by passing in the pod spec to kubectl as normally +done to create a new pod: +```shell +kubectl create -f podspec.yaml +``` + +## Restrictions + +Both secrets and config maps are required to be in the same namespace as the +pod. diff --git a/docs/user-guide/projected-volume/index.md b/docs/user-guide/projected-volume/index.md index 656e283d21..5787ab1469 100644 --- a/docs/user-guide/projected-volume/index.md +++ b/docs/user-guide/projected-volume/index.md @@ -5,69 +5,6 @@ assignees: title: Using Projected volumes --- -The _projected volume_ is a volume that projects several existing volume sources -into the same directory. Currently, one can project configmaps, downward API, -and secrets. The resulting pod spec is also shorter when projecting to a single -volume as opposed to multiple different locations. See [all-in-one volume design document](https://github.com/kubernetes/community/blob/{{page.githubbranch}}/contributors/design-proposals/all-in-one-volume.md) -for more information. +{% include user-guide-content-moved.md %} -* TOC -{:toc} - -## Overview of a projected volume - -The projected volume encapsulates multiple volumes to be projected, with each -volume source respecting nearly the same parameters as supported by each -individual type. Consider the following example: - -```yaml -apiVersion: v1 -kind: Pod -metadata: - name: volume-test -spec: - containers: - - name: container-test - image: busybox - volumeMounts: - - name: all-in-one - mountPath: "/projected-volume" - readOnly: true - volumes: - - name: all-in-one - projected: - sources: - - secret: - name: mysecret - items: - - key: username - path: my-group/my-username - - secret: - name: mysecret2 - items: - - key: password - path: my-group/my-password - mode: 511 -``` - -Each volume source is listed in the spec under `sources`. As stated above the -parameters are nearly the same with two exceptions: - -* For secrets, the `secretName` field has been changed to `name` to be consistent -with config maps naming. -* The `defaultMode` can only be specified at the projected level and not for each -volume source. However, as illustrated above, you can explicitly set the `mode` -for each individual projection. - -## Creating projections - -A projected volume is created by passing in the pod spec to kubectl as normally -done to create a new pod: -```shell -kubectl create -f podspec.yaml -``` - -## Restrictions - -Both secrets and config maps are required to be in the same namespace as the -pod. +[Using Projected Volumes](/docs/tasks/configure-pod-container/projected-volume/)