lecture2
lecture2
● Commands
● Resources Limits
● NameSpaces
● Taint & Tolerations
● Node Selectors
● Node Affinity
Demo: Specify a memory request and a memory limit
apiVersion: v1
kind: Pod
metadata:
name: memory-demo
namespace: mem-example
spec:
containers:
- name: memory-demo-ctr
image: polinux/stress
resources:
limits:
memory: "200Mi"
requests:
memory: "100Mi"
command: ["stress"]
args: ["--vm", "1", "--vm-bytes", "150M", "--vm-hang", "1"]
Demo: Exceed a Container's memory limit
apiVersion: v1
kind: Pod
metadata:
name: memory-demo-2
namespace: mem-example
spec:
containers:
- name: memory-demo-2-ctr
image: polinux/stress
resources:
requests:
memory: "50Mi"
limits:
memory: "100Mi"
command: ["stress"]
args: ["--vm", "1", "--vm-bytes", "250M", "--vm-hang", "1"]
Demo: Specify a memory request that is too big for your Nodes
apiVersion: v1
kind: Pod
metadata:
name: memory-demo-3
namespace: mem-example
spec:
containers:
- name: memory-demo-3-ctr
image: polinux/stress
resources:
limits:
memory: "1000Gi"
requests:
memory: "1000Gi"
command: ["stress"]
args: ["--vm", "1", "--vm-bytes", "150M", "--vm-hang", "1"]
Demo: Specify a CPU request and a CPU limit
apiVersion: v1
kind: Pod
metadata:
name: cpu-demo
namespace: cpu-example
spec:
containers:
- name: cpu-demo-ctr
image: vish/stress
resources:
limits:
cpu: "1"
requests:
cpu: "0.5"
args:
- -cpus
- "2"
Note: you could also limit the total number of
other kinds of object. For example, you might
decide to limit how many Deployments that can
live in a single namespace.
Configure Memory and CPU Quotas for a Namespace
apiVersion: v1
kind: ResourceQuota
metadata:
name: mem-cpu-demo
spec:
hard:
requests.cpu: "1"
requests.memory: 1Gi
limits.cpu: "2"
limits.memory: 2Gi
apiVersion: v1
kind: Pod
metadata:
name: quota-mem-cpu-demo-2
spec:
containers:
- name: quota-mem-cpu-demo-2-ctr
image: redis
resources:
limits:
memory: "1Gi"
cpu: "800m"
requests:
memory: "700Mi"
cpu: "400m"
apiVersion: v1 status:
kind: ResourceQuota hard:
metadata: pods: "2"
name: pod-demo used:
pods: "0"
spec:
hard:
pods: "2"
apiVersion: v1
kind: LimitRange
metadata:
name: mem-limit-range
spec:
limits:
- default:
memory: 512Mi
defaultRequest:
memory: 256Mi
type: Container
apiVersion: v1 containers:
- image: nginx
kind: Pod imagePullPolicy: Always
metadata: name: default-mem-demo-ctr
name: default-mem-demo resources:
limits:
spec: memory: 512Mi
containers: requests:
- name: default-mem-demo-ctr memory: 256Mi
image: nginx
apiVersion: v1
kind: Pod
metadata:
name: default-mem-demo-2 resources:
spec: limits:
containers: memory: 1Gi
requests:
- name: default-mem-demo-2-ctr
memory: 1Gi
image: nginx
resources:
limits:
memory: "1Gi"
apiVersion: v1
kind: Pod
metadata:
name: default-mem-demo-3
spec: resources:
limits:
containers:
memory: 512Mi
- name: default-mem-demo-3-ctr requests:
image: nginx memory: 128Mi
resources:
requests:
memory: "128Mi"
apiVersion: v1
kind: LimitRange
metadata:
name: cpu-limit-range
spec:
limits:
- default:
cpu: 1
defaultRequest:
cpu: 0.5
type: Container
containers:
apiVersion: v1 - image: nginx
kind: Pod imagePullPolicy: Always
metadata: name: default-cpu-demo-ctr
name: default-cpu-demo resources:
spec: limits:
cpu: "1"
containers:
requests:
- name: default-cpu-demo-ctr cpu: 500m
image: nginx
apiVersion: v1
kind: Pod
metadata:
name: default-cpu-demo-2
spec: resources:
containers: limits:
- name: default-cpu-demo-2-ctr cpu: "1"
requests:
image: nginx
cpu: "1"
resources:
limits:
cpu: "1"
apiVersion: v1
kind: Pod
metadata:
name: default-cpu-demo-3
spec: resources:
limits:
containers:
cpu: "1"
- name: default-cpu-demo-3-ctr requests:
image: nginx cpu: 750m
resources:
requests:
cpu: "0.75"
apiVersion: v1
kind: Pod
metadata:
name: constraints-mem-demo-2
spec:
containers:
- name:
constraints-mem-demo-2-ctr
image: nginx
resources:
limits:
memory: "1.5Gi"
requests:
memory: "800Mi”
apiVersion: v1
kind: Pod
metadata:
name: constraints-mem-demo-3
spec:
containers:
- name:
constraints-mem-demo-3-ctr
image: nginx
resources:
limits:
memory: "800Mi"
requests:
memory: "100Mi"
apiVersion: v1
kind: Pod
metadata:
name: constraints-mem-demo-4 resources:
spec: limits:
containers: memory: 1Gi
- name: constraints-mem-demo-4-ctr requests:
image: nginx memory: 1Gi
apiVersion: v1
kind: Pod
metadata:
name: constraints-cpu-demo-2
spec:
containers:
- name:
constraints-cpu-demo-2-ctr
image: nginx
resources:
limits:
cpu: "1.5"
requests:
cpu: "500m"
apiVersion: v1
kind: Pod
metadata:
name: constraints-cpu-demo-3
spec:
containers:
- name:
constraints-cpu-demo-3-ctr
image: nginx
resources:
limits:
cpu: "800m"
requests:
cpu: "100m"
apiVersion: v1
kind: Pod
metadata:
resources:
name: constraints-cpu-demo-4
limits:
spec: cpu: 800m
containers: requests:
- name: constraints-cpu-demo-4-ctr cpu: 800m
image: vish/stress
● https://www.udemy.com/course/certified-kubernetes-administ
rator-with-practice-tests
● https://www.udemy.com/course/certified-kubernetes-applicati
on-developer
● https://kubernetes.io/docs