diff --git a/content/en/docs/tasks/configure-pod-container/assign-cpu-resource.md b/content/en/docs/tasks/configure-pod-container/assign-cpu-resource.md index e5abfb736d9dc..a45fe770b4b78 100644 --- a/content/en/docs/tasks/configure-pod-container/assign-cpu-resource.md +++ b/content/en/docs/tasks/configure-pod-container/assign-cpu-resource.md @@ -71,7 +71,7 @@ In this exercise, you create a Pod that has one Container. The Container has a C request of 0.5 cpu and a CPU limit of 1 cpu. Here's the configuration file for the Pod: -{{< code file="cpu-request-limit.yaml" >}} +{{< codenew file="pods/resource/cpu-request-limit.yaml" >}} In the configuration file, the `args` section provides arguments for the Container when it starts. The `-cpus "2"` argument tells the Container to attempt to use 2 cpus. @@ -79,7 +79,7 @@ The `-cpus "2"` argument tells the Container to attempt to use 2 cpus. Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/cpu-request-limit.yaml --namespace=cpu-example +kubectl create -f https://k8s.io/examples/pods/resource/cpu-request-limit.yaml --namespace=cpu-example ``` Verify that the Pod's Container is running: @@ -167,12 +167,12 @@ the capacity of any Node in your cluster. Here is the configuration file for a P that has one Container. The Container requests 100 cpu, which is likely to exceed the capacity of any Node in your cluster. -{{< code file="cpu-request-limit-2.yaml" >}} +{{< codenew file="pods/resource/cpu-request-limit-2.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/cpu-request-limit-2.yaml --namespace=cpu-example +kubectl create -f https://k8s.io/examples/pods/resource/cpu-request-limit-2.yaml --namespace=cpu-example ``` View the Pod's status: diff --git a/content/en/docs/tasks/configure-pod-container/assign-memory-resource.md b/content/en/docs/tasks/configure-pod-container/assign-memory-resource.md index 6120b3a4601ed..8d03fc86b9fc9 100644 --- a/content/en/docs/tasks/configure-pod-container/assign-memory-resource.md +++ b/content/en/docs/tasks/configure-pod-container/assign-memory-resource.md @@ -71,7 +71,7 @@ In this exercise, you create a Pod that has one Container. The Container has a m request of 100 MiB and a memory limit of 200 MiB. Here's the configuration file for the Pod: -{{< code file="memory-request-limit.yaml" >}} +{{< codenew file="pods/resource/memory-request-limit.yaml" >}} In the configuration file, the `args` section provides arguments for the Container when it starts. The `"--vm-bytes", "150M"` arguments tell the Container to attempt to allocate 150 MiB of memory. @@ -79,7 +79,7 @@ The `"--vm-bytes", "150M"` arguments tell the Container to attempt to allocate 1 Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/memory-request-limit.yaml --namespace=mem-example +kubectl create -f https://k8s.io/examples/pods/resource/memory-request-limit.yaml --namespace=mem-example ``` Verify that the Pod's Container is running: @@ -142,7 +142,7 @@ In this exercise, you create a Pod that attempts to allocate more memory than it Here is the configuration file for a Pod that has one Container. The Container has a memory request of 50 MiB and a memory limit of 100 MiB. -{{< code file="memory-request-limit-2.yaml" >}} +{{< codenew file="pods/resource/memory-request-limit-2.yaml" >}} In the configuration file, in the `args` section, you can see that the Container will attempt to allocate 250 MiB of memory, which is well above the 100 MiB limit. @@ -150,7 +150,7 @@ will attempt to allocate 250 MiB of memory, which is well above the 100 MiB limi Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/memory-request-limit-2.yaml --namespace=mem-example +kubectl create -f https://k8s.io/examples/pods/resource/memory-request-limit-2.yaml --namespace=mem-example ``` View detailed information about the Pod: @@ -253,12 +253,12 @@ capacity of any Node in your cluster. Here is the configuration file for a Pod t Container. The Container requests 1000 GiB of memory, which is likely to exceed the capacity of any Node in your cluster. -{{< code file="memory-request-limit-3.yaml" >}} +{{< codenew file="pods/resource/memory-request-limit-3.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/memory-request-limit-3.yaml --namespace=mem-example +kubectl create -f https://k8s.io/examples/pods/resource/memory-request-limit-3.yaml --namespace=mem-example ``` View the Pod's status: diff --git a/content/en/docs/tasks/configure-pod-container/attach-handler-lifecycle-event.md b/content/en/docs/tasks/configure-pod-container/attach-handler-lifecycle-event.md index c85f18bbe1b41..85dc63d6ab704 100644 --- a/content/en/docs/tasks/configure-pod-container/attach-handler-lifecycle-event.md +++ b/content/en/docs/tasks/configure-pod-container/attach-handler-lifecycle-event.md @@ -30,7 +30,7 @@ for the postStart and preStop events. Here is the configuration file for the Pod: -{{< code file="lifecycle-events.yaml" >}} +{{< codenew file="pods/lifecycle-events.yaml" >}} In the configuration file, you can see that the postStart command writes a `message` file to the Container's `/usr/share` directory. The preStop command shuts down @@ -38,7 +38,7 @@ nginx gracefully. This is helpful if the Container is being terminated because o Create the Pod: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/lifecycle-events.yaml + kubectl create -f https://k8s.io/examples/pods/lifecycle-events.yaml Verify that the Container in the Pod is running: diff --git a/content/en/docs/tasks/configure-pod-container/configure-liveness-readiness-probes.md b/content/en/docs/tasks/configure-pod-container/configure-liveness-readiness-probes.md index 8a8768302e0b7..d3e09d120837b 100644 --- a/content/en/docs/tasks/configure-pod-container/configure-liveness-readiness-probes.md +++ b/content/en/docs/tasks/configure-pod-container/configure-liveness-readiness-probes.md @@ -38,7 +38,7 @@ liveness probes to detect and remedy such situations. In this exercise, you create a Pod that runs a Container based on the `k8s.gcr.io/busybox` image. Here is the configuration file for the Pod: -{{< code file="exec-liveness.yaml" >}} +{{< codenew file="pods/probe/exec-liveness.yaml" >}} In the configuration file, you can see that the Pod has a single Container. The `periodSeconds` field specifies that the kubelet should perform a liveness @@ -62,7 +62,7 @@ code. After 30 seconds, `cat /tmp/healthy` returns a failure code. Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/exec-liveness.yaml +kubectl create -f https://k8s.io/examples/pods/probe/exec-liveness.yaml ``` Within 30 seconds, view the Pod events: @@ -122,7 +122,7 @@ Another kind of liveness probe uses an HTTP GET request. Here is the configurati file for a Pod that runs a container based on the `k8s.gcr.io/liveness` image. -{{< code file="http-liveness.yaml" >}} +{{< codenew file="pods/probe/http-liveness.yaml" >}} In the configuration file, you can see that the Pod has a single Container. The `periodSeconds` field specifies that the kubelet should perform a liveness @@ -163,7 +163,7 @@ checks will fail, and the kubelet will kill and restart the Container. To try the HTTP liveness check, create a Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/http-liveness.yaml +kubectl create -f https://k8s.io/examples/pods/probe/http-liveness.yaml ``` After 10 seconds, view Pod events to verify that liveness probes have failed and @@ -180,7 +180,7 @@ kubelet will attempt to open a socket to your container on the specified port. If it can establish a connection, the container is considered healthy, if it can’t it is considered a failure. -{{< code file="tcp-liveness-readiness.yaml" >}} +{{< codenew file="pods/probe/tcp-liveness-readiness.yaml" >}} As you can see, configuration for a TCP check is quite similar to an HTTP check. This example uses both readiness and liveness probes. The kubelet will send the @@ -198,7 +198,7 @@ will be restarted. To try the TCP liveness check, create a Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/tcp-liveness-readiness.yaml +kubectl create -f https://k8s.io/examples/pods/probe/tcp-liveness-readiness.yaml ``` After 15 seconds, view Pod events to verify that liveness probes: diff --git a/content/en/docs/tasks/configure-pod-container/configure-persistent-volume-storage.md b/content/en/docs/tasks/configure-pod-container/configure-persistent-volume-storage.md index 7d2e6802e8018..f770eacfbcb90 100644 --- a/content/en/docs/tasks/configure-pod-container/configure-persistent-volume-storage.md +++ b/content/en/docs/tasks/configure-pod-container/configure-persistent-volume-storage.md @@ -62,7 +62,7 @@ to set up Here is the configuration file for the hostPath PersistentVolume: -{{< code file="task-pv-volume.yaml" >}} +{{< codenew file="pods/storage/pv-volume.yaml" >}} The configuration file specifies that the volume is at `/mnt/data` on the cluster's Node. The configuration also specifies a size of 10 gibibytes and @@ -73,7 +73,7 @@ PersistentVolumeClaim requests to this PersistentVolume. Create the PersistentVolume: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/task-pv-volume.yaml + kubectl create -f https://k8s.io/examples/pods/storage/pv-volume.yaml View information about the PersistentVolume: @@ -94,11 +94,11 @@ access for at least one Node. Here is the configuration file for the PersistentVolumeClaim: -{{< code file="task-pv-claim.yaml" >}} +{{< codenew file="pods/storage/pv-claim.yaml" >}} Create the PersistentVolumeClaim: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/task-pv-claim.yaml + kubectl create -f https://k8s.io/examples/pods/storage/pv-claim.yaml After you create the PersistentVolumeClaim, the Kubernetes control plane looks for a PersistentVolume that satisfies the claim's requirements. If the control @@ -130,7 +130,7 @@ The next step is to create a Pod that uses your PersistentVolumeClaim as a volum Here is the configuration file for the Pod: -{{< code file="task-pv-pod.yaml" >}} +{{< codenew file="pods/storage/pv-pod.yaml" >}} Notice that the Pod's configuration file specifies a PersistentVolumeClaim, but it does not specify a PersistentVolume. From the Pod's point of view, the claim @@ -138,7 +138,7 @@ is a volume. Create the Pod: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/task-pv-pod.yaml + kubectl create -f https://k8s.io/examples/pods/storage/pv-pod.yaml Verify that the Container in the Pod is running; diff --git a/content/en/docs/tasks/configure-pod-container/configure-pod-initialization.md b/content/en/docs/tasks/configure-pod-container/configure-pod-initialization.md index c5ac3a21012d2..6ab76afd09f8e 100644 --- a/content/en/docs/tasks/configure-pod-container/configure-pod-initialization.md +++ b/content/en/docs/tasks/configure-pod-container/configure-pod-initialization.md @@ -26,7 +26,7 @@ container starts. Here is the configuration file for the Pod: -{{< code file="init-containers.yaml" >}} +{{< codenew file="pods/init-containers.yaml" >}} In the configuration file, you can see that the Pod has a Volume that the init container and the application container share. @@ -43,7 +43,7 @@ of the nginx server. Create the Pod: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/init-containers.yaml + kubectl create -f https://k8s.io/examples/pods/init-containers.yaml Verify that the nginx container is running: diff --git a/content/en/docs/tasks/configure-pod-container/configure-projected-volume-storage.md b/content/en/docs/tasks/configure-pod-container/configure-projected-volume-storage.md index 8e43e6ef40e30..19c5ecc7446cf 100644 --- a/content/en/docs/tasks/configure-pod-container/configure-projected-volume-storage.md +++ b/content/en/docs/tasks/configure-pod-container/configure-projected-volume-storage.md @@ -28,7 +28,7 @@ In this exercise, you create username and password Secrets from local files. You Here is the configuration file for the Pod: -{{< code file="projected-volume.yaml" >}} +{{< codenew file="pods/storage/projected.yaml" >}} 1. Create the Secrets: ```shell @@ -42,7 +42,7 @@ Here is the configuration file for the Pod: ``` 1. Create the Pod: ```shell - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/projected-volume.yaml + kubectl create -f https://k8s.io/examples/pods/storage/projected.yaml ``` 1. Verify that the Pod's Container is running, and then watch for changes to the Pod: diff --git a/content/en/docs/tasks/configure-pod-container/configure-volume-storage.md b/content/en/docs/tasks/configure-pod-container/configure-volume-storage.md index e3a73199ae04e..32db31cdbb413 100644 --- a/content/en/docs/tasks/configure-pod-container/configure-volume-storage.md +++ b/content/en/docs/tasks/configure-pod-container/configure-volume-storage.md @@ -33,11 +33,11 @@ Volume of type that lasts for the life of the Pod, even if the Container terminates and restarts. Here is the configuration file for the Pod: -{{< code file="pod-redis.yaml" >}} +{{< codenew file="pods/storage/redis.yaml" >}} 1. Create the Pod: - kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/pod-redis.yaml + kubectl create -f https://k8s.io/examples/pods/storage/redis.yaml 1. Verify that the Pod's Container is running, and then watch for changes to the Pod: diff --git a/content/en/docs/tasks/configure-pod-container/extended-resource.md b/content/en/docs/tasks/configure-pod-container/extended-resource.md index 108927af1e4f6..53484c9f451b7 100644 --- a/content/en/docs/tasks/configure-pod-container/extended-resource.md +++ b/content/en/docs/tasks/configure-pod-container/extended-resource.md @@ -36,14 +36,14 @@ descriptive resource name. Here is the configuration file for a Pod that has one Container: -{{< code file="extended-resource-pod.yaml" >}} +{{< codenew file="pods/resource/extended-resource-pod.yaml" >}} In the configuration file, you can see that the Container requests 3 dongles. Create a Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/extended-resource-pod.yaml +kubectl create -f https://k8s.io/examples/pods/resource/extended-resource-pod.yaml ``` Verify that the Pod is running: @@ -72,7 +72,7 @@ Requests: Here is the configuration file for a Pod that has one Container. The Container requests two dongles. -{{< code file="extended-resource-pod-2.yaml" >}} +{{< codenew file="pods/resource/extended-resource-pod-2.yaml" >}} Kubernetes will not be able to satisfy the request for two dongles, because the first Pod used three of the four available dongles. @@ -80,7 +80,7 @@ used three of the four available dongles. Attempt to create a Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/extended-resource-pod-2.yaml +kubectl create -f https://k8s.io/examples/pods/resource/extended-resource-pod-2.yaml ``` Describe the Pod diff --git a/content/en/docs/tasks/configure-pod-container/mem-limit-range.yaml b/content/en/docs/tasks/configure-pod-container/mem-limit-range.yaml deleted file mode 100644 index b98a5ae262561..0000000000000 --- a/content/en/docs/tasks/configure-pod-container/mem-limit-range.yaml +++ /dev/null @@ -1,11 +0,0 @@ -apiVersion: v1 -kind: LimitRange -metadata: - name: mem-limit-range -spec: - limits: - - default: - memory: 512Mi - defaultRequest: - memory: 256Mi - type: Container diff --git a/content/en/docs/tasks/configure-pod-container/pull-image-private-registry.md b/content/en/docs/tasks/configure-pod-container/pull-image-private-registry.md index f5022948945b1..877b577cb86e7 100644 --- a/content/en/docs/tasks/configure-pod-container/pull-image-private-registry.md +++ b/content/en/docs/tasks/configure-pod-container/pull-image-private-registry.md @@ -112,11 +112,11 @@ You have successfully set your Docker credentials as a Secret called `regcred` i Here is a configuration file for a Pod that needs access to your Docker credentials in `regcred`: -{{< code file="private-reg-pod.yaml" >}} +{{< codenew file="pods/private-reg-pod.yaml" >}} Download the above file: - wget -O my-private-reg-pod.yaml https://k8s.io/docs/tasks/configure-pod-container/private-reg-pod.yaml + wget -O my-private-reg-pod.yaml https://k8s.io/examples/pods/private-reg-pod.yaml In file `my-private-reg-pod.yaml`, replace `` with the path to an image in a private registry such as: @@ -142,4 +142,3 @@ Create a Pod that uses your Secret, and verify that the Pod is running: {{% /capture %}} - diff --git a/content/en/docs/tasks/configure-pod-container/quality-service-pod.md b/content/en/docs/tasks/configure-pod-container/quality-service-pod.md index 27356fed82aac..14d44096bc1a5 100644 --- a/content/en/docs/tasks/configure-pod-container/quality-service-pod.md +++ b/content/en/docs/tasks/configure-pod-container/quality-service-pod.md @@ -50,12 +50,12 @@ For a Pod to be given a QoS class of Guaranteed: Here is the configuration file for a Pod that has one Container. The Container has a memory limit and a memory request, both equal to 200 MiB. The Container has a cpu limit and a cpu request, both equal to 700 millicpu: -{{< code file="qos-pod.yaml" >}} +{{< codenew file="pods/qos/qos-pod.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/qos-pod.yaml --namespace=qos-example +kubectl create -f https://k8s.io/examples/pods/qos/qos-pod.yaml --namespace=qos-example ``` View detailed information about the Pod: @@ -106,12 +106,12 @@ A Pod is given a QoS class of Burstable if: Here is the configuration file for a Pod that has one Container. The Container has a memory limit of 200 MiB and a memory request of 100 MiB. -{{< code file="qos-pod-2.yaml" >}} +{{< codenew file="pods/qos/qos-pod-2.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/qos-pod-2.yaml --namespace=qos-example +kubectl create -f https://k8s.io/examples/pods/qos/qos-pod-2.yaml --namespace=qos-example ``` View detailed information about the Pod: @@ -151,12 +151,12 @@ have any memory or cpu limits or requests. Here is the configuration file for a Pod that has one Container. The Container has no memory or cpu limits or requests: -{{< code file="qos-pod-3.yaml" >}} +{{< codenew file="pods/qos/qos-pod-3.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/qos-pod-3.yaml --namespace=qos-example +kubectl create -f https://k8s.io/examples/pods/qos/qos-pod-3.yaml --namespace=qos-example ``` View detailed information about the Pod: @@ -187,7 +187,7 @@ kubectl delete pod qos-demo-3 --namespace=qos-example Here is the configuration file for a Pod that has two Containers. One container specifies a memory request of 200 MiB. The other Container does not specify any requests or limits. -{{< code file="qos-pod-4.yaml" >}} +{{< codenew file="pods/qos/qos-pod-4.yaml" >}} Notice that this Pod meets the criteria for QoS class Burstable. That is, it does not meet the criteria for QoS class Guaranteed, and one of its Containers has a memory request. @@ -195,7 +195,7 @@ criteria for QoS class Guaranteed, and one of its Containers has a memory reques Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/qos-pod-4.yaml --namespace=qos-example +kubectl create -f https://k8s.io/examples/pods/qos/qos-pod-4.yaml --namespace=qos-example ``` View detailed information about the Pod: diff --git a/content/en/docs/tasks/configure-pod-container/rq-compute-resources.yaml b/content/en/docs/tasks/configure-pod-container/rq-compute-resources.yaml deleted file mode 100644 index 9757018f19881..0000000000000 --- a/content/en/docs/tasks/configure-pod-container/rq-compute-resources.yaml +++ /dev/null @@ -1,11 +0,0 @@ -apiVersion: v1 -kind: ResourceQuota -metadata: - name: compute-resources -spec: - hard: - pods: "4" - requests.cpu: "1" - requests.memory: 1Gi - limits.cpu: "2" - limits.memory: 2Gi diff --git a/content/en/docs/tasks/configure-pod-container/security-context.md b/content/en/docs/tasks/configure-pod-container/security-context.md index 662ba725a161b..a89e0dfa53380 100644 --- a/content/en/docs/tasks/configure-pod-container/security-context.md +++ b/content/en/docs/tasks/configure-pod-container/security-context.md @@ -49,7 +49,7 @@ in the Pod specification. The `securityContext` field is a The security settings that you specify for a Pod apply to all Containers in the Pod. Here is a configuration file for a Pod that has a `securityContext` and an `emptyDir` volume: -{{< code file="security-context.yaml" >}} +{{< codenew file="pods/security/security-context.yaml" >}} In the configuration file, the `runAsUser` field specifies that for any Containers in the Pod, the first process runs with user ID 1000. The `fsGroup` field specifies that @@ -60,7 +60,7 @@ volume. Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/security-context.yaml +kubectl create -f https://k8s.io/examples/pods/security/security-context.yaml ``` Verify that the Pod's Container is running: @@ -141,12 +141,12 @@ there is overlap. Container settings do not affect the Pod's Volumes. Here is the configuration file for a Pod that has one Container. Both the Pod and the Container have a `securityContext` field: -{{< code file="security-context-2.yaml" >}} +{{< codenew file="pods/security/security-context-2.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/security-context-2.yaml +kubectl create -f https://k8s.io/examples/pods/security/security-context-2.yaml ``` Verify that the Pod's Container is running: @@ -194,12 +194,12 @@ of the root user. To add or remove Linux capabilities for a Container, include t First, see what happens when you don't include a `capabilities` field. Here is configuration file that does not add or remove any Container capabilities: -{{< code file="security-context-3.yaml" >}} +{{< codenew file="pods/security/security-context-3.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/security-context-3.yaml +kubectl create -f https://k8s.io/examples/pods/security/security-context-3.yaml ``` Verify that the Pod's Container is running: @@ -256,12 +256,12 @@ that it has additional capabilities set. Here is the configuration file for a Pod that runs one Container. The configuration adds the `CAP_NET_ADMIN` and `CAP_SYS_TIME` capabilities: -{{< code file="security-context-4.yaml" >}} +{{< codenew file="pods/security/security-context-4.yaml" >}} Create the Pod: ```shell -kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/security-context-4.yaml +kubectl create -f https://k8s.io/examples/pods/security/security-context-4.yaml ``` Get a shell into the running Container: diff --git a/content/en/docs/tasks/configure-pod-container/share-process-namespace.md b/content/en/docs/tasks/configure-pod-container/share-process-namespace.md index 01b18a6d63dd9..1e8d902384666 100644 --- a/content/en/docs/tasks/configure-pod-container/share-process-namespace.md +++ b/content/en/docs/tasks/configure-pod-container/share-process-namespace.md @@ -39,16 +39,21 @@ across the system: `--feature-gates=PodShareProcessNamespace=true`. Process Namespace Sharing is enabled using the `ShareProcessNamespace` field of `v1.PodSpec`. For example: -{{< code file="share-process-namespace.yaml" >}} +{{< codenew file="pods/share-process-namespace.yaml" >}} 1. Create the pod `nginx` on your cluster: - $ kubectl create -f https://k8s.io/docs/tasks/configure-pod-container/share-process-namespace.yaml + kubectl create -f https://k8s.io/examples/pods/share-process-namespace.yaml 1. Attach to the `shell` container and run `ps`: - $ kubectl attach -it nginx -c shell + ``` + kubectl attach -it nginx -c shell + ``` + If you don't see a command prompt, try pressing enter. + + ``` / # ps ax PID USER TIME COMMAND 1 root 0:00 /pause @@ -56,6 +61,7 @@ Process Namespace Sharing is enabled using the `ShareProcessNamespace` field of 14 101 0:00 nginx: worker process 15 root 0:00 sh 21 root 0:00 ps ax + ``` You can signal processes in other containers. For example, send `SIGHUP` to nginx to restart the worker process. This requires the `SYS_PTRACE` capability. diff --git a/content/en/docs/tasks/configure-pod-container/init-containers.yaml b/content/en/examples/pods/init-containers.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/init-containers.yaml rename to content/en/examples/pods/init-containers.yaml diff --git a/content/en/docs/tasks/configure-pod-container/lifecycle-events.yaml b/content/en/examples/pods/lifecycle-events.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/lifecycle-events.yaml rename to content/en/examples/pods/lifecycle-events.yaml diff --git a/content/en/docs/tasks/configure-pod-container/private-reg-pod.yaml b/content/en/examples/pods/private-reg-pod.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/private-reg-pod.yaml rename to content/en/examples/pods/private-reg-pod.yaml diff --git a/content/en/docs/tasks/configure-pod-container/exec-liveness.yaml b/content/en/examples/pods/probe/exec-liveness.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/exec-liveness.yaml rename to content/en/examples/pods/probe/exec-liveness.yaml diff --git a/content/en/docs/tasks/configure-pod-container/http-liveness.yaml b/content/en/examples/pods/probe/http-liveness.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/http-liveness.yaml rename to content/en/examples/pods/probe/http-liveness.yaml diff --git a/content/en/docs/tasks/configure-pod-container/tcp-liveness-readiness.yaml b/content/en/examples/pods/probe/tcp-liveness-readiness.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/tcp-liveness-readiness.yaml rename to content/en/examples/pods/probe/tcp-liveness-readiness.yaml diff --git a/content/en/docs/tasks/configure-pod-container/qos-pod-2.yaml b/content/en/examples/pods/qos/qos-pod-2.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/qos-pod-2.yaml rename to content/en/examples/pods/qos/qos-pod-2.yaml diff --git a/content/en/docs/tasks/configure-pod-container/qos-pod-3.yaml b/content/en/examples/pods/qos/qos-pod-3.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/qos-pod-3.yaml rename to content/en/examples/pods/qos/qos-pod-3.yaml diff --git a/content/en/docs/tasks/configure-pod-container/qos-pod-4.yaml b/content/en/examples/pods/qos/qos-pod-4.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/qos-pod-4.yaml rename to content/en/examples/pods/qos/qos-pod-4.yaml diff --git a/content/en/docs/tasks/configure-pod-container/qos-pod.yaml b/content/en/examples/pods/qos/qos-pod.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/qos-pod.yaml rename to content/en/examples/pods/qos/qos-pod.yaml diff --git a/content/en/docs/tasks/configure-pod-container/cpu-request-limit-2.yaml b/content/en/examples/pods/resource/cpu-request-limit-2.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/cpu-request-limit-2.yaml rename to content/en/examples/pods/resource/cpu-request-limit-2.yaml diff --git a/content/en/docs/tasks/configure-pod-container/cpu-request-limit.yaml b/content/en/examples/pods/resource/cpu-request-limit.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/cpu-request-limit.yaml rename to content/en/examples/pods/resource/cpu-request-limit.yaml diff --git a/content/en/docs/tasks/configure-pod-container/extended-resource-pod-2.yaml b/content/en/examples/pods/resource/extended-resource-pod-2.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/extended-resource-pod-2.yaml rename to content/en/examples/pods/resource/extended-resource-pod-2.yaml diff --git a/content/en/docs/tasks/configure-pod-container/extended-resource-pod.yaml b/content/en/examples/pods/resource/extended-resource-pod.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/extended-resource-pod.yaml rename to content/en/examples/pods/resource/extended-resource-pod.yaml diff --git a/content/en/docs/tasks/configure-pod-container/memory-request-limit-2.yaml b/content/en/examples/pods/resource/memory-request-limit-2.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/memory-request-limit-2.yaml rename to content/en/examples/pods/resource/memory-request-limit-2.yaml diff --git a/content/en/docs/tasks/configure-pod-container/memory-request-limit-3.yaml b/content/en/examples/pods/resource/memory-request-limit-3.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/memory-request-limit-3.yaml rename to content/en/examples/pods/resource/memory-request-limit-3.yaml diff --git a/content/en/docs/tasks/configure-pod-container/memory-request-limit.yaml b/content/en/examples/pods/resource/memory-request-limit.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/memory-request-limit.yaml rename to content/en/examples/pods/resource/memory-request-limit.yaml diff --git a/content/en/docs/tasks/configure-pod-container/security-context-2.yaml b/content/en/examples/pods/security/security-context-2.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/security-context-2.yaml rename to content/en/examples/pods/security/security-context-2.yaml diff --git a/content/en/docs/tasks/configure-pod-container/security-context-3.yaml b/content/en/examples/pods/security/security-context-3.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/security-context-3.yaml rename to content/en/examples/pods/security/security-context-3.yaml diff --git a/content/en/docs/tasks/configure-pod-container/security-context-4.yaml b/content/en/examples/pods/security/security-context-4.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/security-context-4.yaml rename to content/en/examples/pods/security/security-context-4.yaml diff --git a/content/en/docs/tasks/configure-pod-container/security-context.yaml b/content/en/examples/pods/security/security-context.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/security-context.yaml rename to content/en/examples/pods/security/security-context.yaml diff --git a/content/en/docs/tasks/configure-pod-container/share-process-namespace.yaml b/content/en/examples/pods/share-process-namespace.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/share-process-namespace.yaml rename to content/en/examples/pods/share-process-namespace.yaml diff --git a/content/en/docs/tasks/configure-pod-container/projected-volume.yaml b/content/en/examples/pods/storage/projected.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/projected-volume.yaml rename to content/en/examples/pods/storage/projected.yaml diff --git a/content/en/docs/tasks/configure-pod-container/task-pv-claim.yaml b/content/en/examples/pods/storage/pv-claim.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/task-pv-claim.yaml rename to content/en/examples/pods/storage/pv-claim.yaml diff --git a/content/en/docs/tasks/configure-pod-container/task-pv-pod.yaml b/content/en/examples/pods/storage/pv-pod.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/task-pv-pod.yaml rename to content/en/examples/pods/storage/pv-pod.yaml diff --git a/content/en/docs/tasks/configure-pod-container/task-pv-volume.yaml b/content/en/examples/pods/storage/pv-volume.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/task-pv-volume.yaml rename to content/en/examples/pods/storage/pv-volume.yaml diff --git a/content/en/docs/tasks/configure-pod-container/pod-redis.yaml b/content/en/examples/pods/storage/redis.yaml similarity index 100% rename from content/en/docs/tasks/configure-pod-container/pod-redis.yaml rename to content/en/examples/pods/storage/redis.yaml diff --git a/test/examples_test.go b/test/examples_test.go index b92a39fbf7677..32b2cac3aa3ba 100644 --- a/test/examples_test.go +++ b/test/examples_test.go @@ -379,45 +379,36 @@ func TestExampleObjectSchemas(t *testing.T) { "quota-pod-deployment": {&extensions.Deployment{}}, "quota-pvc-2": {&api.PersistentVolumeClaim{}}, }, - "docs/tasks/configure-pod-container": { - "cpu-request-limit": {&api.Pod{}}, - "cpu-request-limit-2": {&api.Pod{}}, - "exec-liveness": {&api.Pod{}}, - "extended-resource-pod": {&api.Pod{}}, - "extended-resource-pod-2": {&api.Pod{}}, - "http-liveness": {&api.Pod{}}, - "init-containers": {&api.Pod{}}, - "lifecycle-events": {&api.Pod{}}, - "mem-limit-range": {&api.LimitRange{}}, - "memory-request-limit": {&api.Pod{}}, - "memory-request-limit-2": {&api.Pod{}}, - "memory-request-limit-3": {&api.Pod{}}, - "oir-pod": {&api.Pod{}}, - "oir-pod-2": {&api.Pod{}}, - "pod-redis": {&api.Pod{}}, - "private-reg-pod": {&api.Pod{}}, - "projected-volume": {&api.Pod{}}, - "qos-pod": {&api.Pod{}}, - "qos-pod-2": {&api.Pod{}}, - "qos-pod-3": {&api.Pod{}}, - "qos-pod-4": {&api.Pod{}}, - "rq-compute-resources": {&api.ResourceQuota{}}, - "security-context": {&api.Pod{}}, - "security-context-2": {&api.Pod{}}, - "security-context-3": {&api.Pod{}}, - "security-context-4": {&api.Pod{}}, - "share-process-namespace": {&api.Pod{}}, - "task-pv-claim": {&api.PersistentVolumeClaim{}}, - "task-pv-pod": {&api.Pod{}}, - "task-pv-volume": {&api.PersistentVolume{}}, - "tcp-liveness-readiness": {&api.Pod{}}, + // TODO: decide whether federation examples should be added + "docs/tasks/inject-data-application": { + "commands": {&api.Pod{}}, + "dapi-envars-container": {&api.Pod{}}, + "dapi-envars-pod": {&api.Pod{}}, + "dapi-volume": {&api.Pod{}}, + "dapi-volume-resources": {&api.Pod{}}, + "envars": {&api.Pod{}}, + "podpreset-allow-db": {&settings.PodPreset{}}, + "podpreset-allow-db-merged": {&api.Pod{}}, + "podpreset-configmap": {&api.ConfigMap{}}, + "podpreset-conflict-pod": {&api.Pod{}}, + "podpreset-conflict-preset": {&settings.PodPreset{}}, + "podpreset-merged": {&api.Pod{}}, + "podpreset-multi-merged": {&api.Pod{}}, + "podpreset-pod": {&api.Pod{}}, + "podpreset-preset": {&settings.PodPreset{}}, + "podpreset-proxy": {&settings.PodPreset{}}, + "podpreset-replicaset-merged": {&api.Pod{}}, + "podpreset-replicaset": {&extensions.ReplicaSet{}}, + "secret": {&api.Secret{}}, + "secret-envars-pod": {&api.Pod{}}, + "secret-pod": {&api.Pod{}}, }, "examples/application/job": { - "job-tmpl": {&batch.Job{}}, - "cronjob": {&batch.CronJob{}}, + "job-tmpl": {&batch.Job{}}, + "cronjob": {&batch.CronJob{}}, }, "examples/application/job/rabbitmq": { - "job": {&batch.Job{}}, + "job": {&batch.Job{}}, }, "examples/application/job/redis": { "job": {&batch.Job{}}, @@ -425,12 +416,12 @@ func TestExampleObjectSchemas(t *testing.T) { "redis-service": {&api.Service{}}, }, "examples/application": { - "deployment": {&extensions.Deployment{}}, - "deployment-patch": {&extensions.Deployment{}}, - "deployment-scale": {&extensions.Deployment{}}, - "deployment-update": {&extensions.Deployment{}}, - "nginx-with-request": {&extensions.Deployment{}}, - "shell-demo": {&api.Pod{}}, + "deployment": {&extensions.Deployment{}}, + "deployment-patch": {&extensions.Deployment{}}, + "deployment-scale": {&extensions.Deployment{}}, + "deployment-update": {&extensions.Deployment{}}, + "nginx-with-request": {&extensions.Deployment{}}, + "shell-demo": {&api.Pod{}}, }, "examples/application/guestbook": { "frontend-deployment": {&extensions.Deployment{}}, @@ -445,8 +436,8 @@ func TestExampleObjectSchemas(t *testing.T) { "cassandra-statefulset": {&apps.StatefulSet{}, &storage.StorageClass{}}, }, "examples/application/web": { - "web": {&api.Service{}, &apps.StatefulSet{}}, - "web-parallel": {&api.Service{}, &apps.StatefulSet{}}, + "web": {&api.Service{}, &apps.StatefulSet{}}, + "web-parallel": {&api.Service{}, &apps.StatefulSet{}}, }, "examples/application/wordpress": { "mysql-deployment": {&api.Service{}, &api.PersistentVolumeClaim{}, &extensions.Deployment{}}, @@ -464,35 +455,48 @@ func TestExampleObjectSchemas(t *testing.T) { "replication": {&api.ReplicationController{}}, "nginx-deployment": {&extensions.Deployment{}}, }, - "examples/podpreset": { - "allow-db": {&settings.PodPreset{}}, - "allow-db-merged": {&api.Pod{}}, - "configmap": {&api.ConfigMap{}}, - "conflict-pod": {&api.Pod{}}, - "conflict-preset": {&settings.PodPreset{}}, - "merged": {&api.Pod{}}, - "multi-merged": {&api.Pod{}}, - "pod": {&api.Pod{}}, - "preset": {&settings.PodPreset{}}, - "proxy": {&settings.PodPreset{}}, - "replicaset-merged": {&api.Pod{}}, - "replicaset": {&extensions.ReplicaSet{}}, - }, "examples/pods": { - "commands": {&api.Pod{}}, - "pod-nginx": {&api.Pod{}}, - "pod-with-node-affinity": {&api.Pod{}}, - "pod-with-pod-affinity": {&api.Pod{}}, + "commands": {&api.Pod{}}, + "init-containers": {&api.Pod{}}, + "lifecycle-events": {&api.Pod{}}, + "pod-nginx": {&api.Pod{}}, + "pod-with-node-affinity": {&api.Pod{}}, + "pod-with-pod-affinity": {&api.Pod{}}, + "private-reg-pod": {&api.Pod{}}, + "share-process-namespace": {&api.Pod{}}, }, - "examples/pods/inject": { - "dapi-envars-container": {&api.Pod{}}, - "dapi-envars-pod": {&api.Pod{}}, - "dapi-volume": {&api.Pod{}}, - "dapi-volume-resources": {&api.Pod{}}, - "envars": {&api.Pod{}}, - "secret": {&api.Secret{}}, - "secret-envars-pod": {&api.Pod{}}, - "secret-pod": {&api.Pod{}}, + "examples/pods/probe": { + "exec-liveness": {&api.Pod{}}, + "http-liveness": {&api.Pod{}}, + "tcp-liveness-readiness": {&api.Pod{}}, + }, + "examples/pods/qos": { + "qos-pod": {&api.Pod{}}, + "qos-pod-2": {&api.Pod{}}, + "qos-pod-3": {&api.Pod{}}, + "qos-pod-4": {&api.Pod{}}, + }, + "examples/pods/resource": { + "cpu-request-limit": {&api.Pod{}}, + "cpu-request-limit-2": {&api.Pod{}}, + "memory-request-limit": {&api.Pod{}}, + "memory-request-limit-2": {&api.Pod{}}, + "memory-request-limit-3": {&api.Pod{}}, + "extended-resource-pod": {&api.Pod{}}, + "extended-resource-pod-2": {&api.Pod{}}, + }, + "examples/pods/security": { + "security-context": {&api.Pod{}}, + "security-context-2": {&api.Pod{}}, + "security-context-3": {&api.Pod{}}, + "security-context-4": {&api.Pod{}}, + }, + "examples/pods/storage": { + "projected": {&api.Pod{}}, + "pv-claim": {&api.PersistentVolumeClaim{}}, + "pv-pod": {&api.Pod{}}, + "pv-volume": {&api.PersistentVolume{}}, + "redis": {&api.Pod{}}, }, "examples/policy": { "privileged-psp": {&policy.PodSecurityPolicy{}}, @@ -513,11 +517,11 @@ func TestExampleObjectSchemas(t *testing.T) { "termination": {&api.Pod{}}, }, "examples/application/mysql": { - "mysql-configmap": {&api.ConfigMap{}}, - "mysql-deployment": {&api.Service{}, &extensions.Deployment{}}, - "mysql-pv": {&api.PersistentVolume{}, &api.PersistentVolumeClaim{}}, - "mysql-services": {&api.Service{}, &api.Service{}}, - "mysql-statefulset": {&apps.StatefulSet{}}, + "mysql-configmap": {&api.ConfigMap{}}, + "mysql-deployment": {&api.Service{}, &extensions.Deployment{}}, + "mysql-pv": {&api.PersistentVolume{}, &api.PersistentVolumeClaim{}}, + "mysql-services": {&api.Service{}, &api.Service{}}, + "mysql-statefulset": {&apps.StatefulSet{}}, }, "examples/application/hpa": { "php-apache": {&autoscaling.HorizontalPodAutoscaler{}},