Applied Style Changes (#10043)

* Applied Style Changes

* Add a few more light edits
This commit is contained in:
Julie Bruce
2018-08-22 10:49:09 -05:00
committed by k8s-ci-robot
parent 22f1f28bfa
commit 1d7e329fd9
@@ -21,28 +21,26 @@ Each node in your cluster must have at least 300 MiB of memory.
A few of the steps on this page require you to run the
[metrics-server](https://github.com/kubernetes-incubator/metrics-server)
service in your cluster. If you don't have metrics-server
+running, you can skip those steps.
service in your cluster. If you do not have the metrics-server
running, you can skip those steps.
If you are running minikube, run the following command to enable
If you are running Minikube, run the following command to enable the
metrics-server:
```shell
minikube addons enable metrics-server
```
To see whether metrics-server (or another provider of the resource metrics
API, `metrics.k8s.io`) is running, enter this command:
To see whether the metrics-server is running, or another provider of the resource metrics
API (`metrics.k8s.io`), run the following command:
```shell
kubectl get apiservices
```
If the resource metrics API is available, the output will include a
If the resource metrics API is available, the output includes a
reference to `metrics.k8s.io`.
```shell
NAME
v1beta1.metrics.k8s.io
@@ -50,7 +48,6 @@ v1beta1.metrics.k8s.io
{{% /capture %}}
{{% capture steps %}}
## Create a namespace
@@ -73,7 +70,7 @@ for the Pod:
{{< codenew file="pods/resource/memory-request-limit.yaml" >}}
In the configuration file, the `args` section provides arguments for the Container when it starts.
The `args` section in the configuration file provides arguments for the Container when it starts.
The `"--vm-bytes", "150M"` arguments tell the Container to attempt to allocate 150 MiB of memory.
Create the Pod:
@@ -82,7 +79,7 @@ Create the Pod:
kubectl create -f https://k8s.io/examples/pods/resource/memory-request-limit.yaml --namespace=mem-example
```
Verify that the Pod's Container is running:
Verify that the Pod Container is running:
```shell
kubectl get pod memory-demo --namespace=mem-example
@@ -108,7 +105,7 @@ resources:
...
```
Use `kubectl top` to fetch the metrics for the pod:
Run `kubectl top` to fetch the metrics for the pod:
```shell
kubectl top pod memory-demo --namespace=mem-example
@@ -129,22 +126,21 @@ Delete your Pod:
kubectl delete pod memory-demo --namespace=mem-example
```
## Exceed a Container's memory limit
A Container can exceed its memory request if the Node has memory available. But a Container
is not allowed to use more than its memory limit. If a Container allocates more memory than
its limit, the Container becomes a candidate for termination. If the Container continues to
consume memory beyond its limit, the Container is terminated. If a terminated Container is
restartable, the kubelet will restart it, as with any other type of runtime failure.
consume memory beyond its limit, the Container is terminated. If a terminated Container can be
restarted, the kubelet restarts it, as with any other type of runtime failure.
In this exercise, you create a Pod that attempts to allocate more memory than its limit.
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.
Here is the configuration file for a Pod that has one Container with a
memory request of 50 MiB and a memory limit of 100 MiB:
{{< codenew file="pods/resource/memory-request-limit-2.yaml" >}}
In the configuration file, in the `args` section, you can see that the Container
In the `args` section of the configuration file, you can see that the Container
will attempt to allocate 250 MiB of memory, which is well above the 100 MiB limit.
Create the Pod:
@@ -159,22 +155,20 @@ View detailed information about the Pod:
kubectl get pod memory-demo-2 --namespace=mem-example
```
At this point, the Container might be running, or it might have been killed. If the
Container has not yet been killed, repeat the preceding command until you see that
the Container has been killed:
At this point, the Container might be running or killed. Repeat the preceding command until the Container is killed:
```shell
NAME READY STATUS RESTARTS AGE
memory-demo-2 0/1 OOMKilled 1 24s
```
Get a more detailed view of the Container's status:
Get a more detailed view of the Container status:
```shell
kubectl get pod memory-demo-2 --output=yaml --namespace=mem-example
```
The output shows that the Container has been killed because it is out of memory (OOM).
The output shows that the Container was killed because it is out of memory (OOM):
```shell
lastState:
@@ -186,14 +180,14 @@ lastState:
startedAt: null
```
The Container in this exercise is restartable, so the kubelet will restart it. Enter
this command several times to see that the Container gets repeatedly killed and restarted:
The Container in this exercise can be restarted, so the kubelet restarts it. Repeat
this command several times to see that the Container is repeatedly killed and restarted:
```shell
kubectl get pod memory-demo-2 --namespace=mem-example
```
The output shows that the Container gets killed, restarted, killed again, restarted again, and so on:
The output shows that the Container is killed, restarted, killed again, restarted again, and so on:
```
stevepe@sperry-1:~/steveperry-53.github.io$ kubectl get pod memory-demo-2 --namespace=mem-example
@@ -204,8 +198,7 @@ NAME READY STATUS RESTARTS AGE
memory-demo-2 1/1 Running 2 40s
```
View detailed information about the Pod's history:
View detailed information about the Pod history:
```
kubectl describe pod memory-demo-2 --namespace=mem-example
@@ -213,7 +206,6 @@ kubectl describe pod memory-demo-2 --namespace=mem-example
The output shows that the Container starts and fails repeatedly:
```
... Normal Created Created container with id 66a3a20aa7980e61be4922780bf9d24d1a1d8b7395c09861225b0eba1b1f8511
... Warning BackOff Back-off restarting failed container
@@ -221,7 +213,6 @@ The output shows that the Container starts and fails repeatedly:
View detailed information about your cluster's Nodes:
```
kubectl describe nodes
```
@@ -250,7 +241,7 @@ has enough available memory to satisfy the Pod's memory request.
In this exercise, you create a Pod that has a memory request so big that it exceeds the
capacity of any Node in your cluster. Here is the configuration file for a Pod that has one
Container. The Container requests 1000 GiB of memory, which is likely to exceed the capacity
Container with a request for 1000 GiB of memory, which likely exceeds the capacity
of any Node in your cluster.
{{< codenew file="pods/resource/memory-request-limit-3.yaml" >}}
@@ -261,15 +252,13 @@ Create the Pod:
kubectl create -f https://k8s.io/examples/pods/resource/memory-request-limit-3.yaml --namespace=mem-example
```
View the Pod's status:
View the Pod status:
```shell
kubectl get pod memory-demo-3 --namespace=mem-example
```
The output shows that the Pod's status is PENDING. That is, the Pod has not been
scheduled to run on any Node, and it will remain in the PENDING state indefinitely:
The output shows that the Pod status is PENDING. That is, the Pod is not scheduled to run on any Node, and it will remain in the PENDING state indefinitely:
```
kubectl get pod memory-demo-3 --namespace=mem-example
@@ -279,14 +268,12 @@ memory-demo-3 0/1 Pending 0 25s
View detailed information about the Pod, including events:
```shell
kubectl describe pod memory-demo-3 --namespace=mem-example
```
The output shows that the Container cannot be scheduled because of insufficient memory on the Nodes:
```shell
Events:
... Reason Message
@@ -310,9 +297,9 @@ Delete your Pod:
kubectl delete pod memory-demo-3 --namespace=mem-example
```
## If you dont specify a memory limit
## If you do not specify a memory limit
If you dont specify a memory limit for a Container, then one of these situations applies:
If you do not specify a memory limit for a Container, one of the following situations applies:
* The Container has no upper bound on the amount of memory it uses. The Container
could use all of the memory available on the Node where it is running.