<1> 특정 네임스페이스에 생성 가능한 Pod수를 제한해보자~
<2> 삭제
<1> 특정 네임스페이스에 생성 가능한 Pod수를 제한해보자~
1
topasvga@cloudshell:~ (ap-seoul-1)$ cat << EOF > ns3-quota-pod-count.yaml
> apiVersion: v1
> kind: Namespace
> metadata:
> name: ns3
> ---
> apiVersion: v1
> kind: ResourceQuota
> metadata:
> name: resource-quota-pod-count
> namespace: ns3
> spec:
> hard:
> count/pods: 3
> count/services: 1
> EOF
2
ns3 네임 스페이스 만들어짐
quota-pod-count 만들어짐
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl apply -f ns3-quota-pod-count.yaml
namespace/ns3 created
resourcequota/resource-quota-pod-count created
3
현재 네임 스페이스들 확인
ns3 네임 스페이스가 생김
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl get ns
NAME STATUS AGE
default Active 8d
hello Active 41h
kube-node-lease Active 8d
kube-public Active 8d
kube-system Active 8d
ns3 Active 108s
4
ns3에 쿼터(제약사항)가 생김
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl get quota -n ns3
NAME AGE REQUEST LIMIT
resource-quota-pod-count 34s count/pods: 0/3, count/services: 0/1
현재 ns3에 파드가 없음
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl get pod -n ns3
No resources found in ns3 namespace.
5
디폴트에는 쿼터 제한이 없음
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl get quota
No resources found in default namespace.
ns3에만 쿼터 제한이 있음
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl get quota -n ns3
NAME AGE REQUEST LIMIT
resource-quota-pod-count 2m16s count/pods: 0/3, count/services: 0/1
6
ns3에 파드를 4개 만들어 봄.
현재 pod 수 쿼터 제한은 3개임.
4번째는 안만들어져야 함 ~
topasvga@cloudshell:~ (ap-seoul-1)$ for i in {1..4}; do kubectl run -n ns3 over-pod-$i --image=nginx --restart=Never; echo "--------------"; sleep 10; done;
pod/over-pod-1 created
--------------
pod/over-pod-2 created
--------------
pod/over-pod-3 created
--------------
Error from server (Forbidden): pods "over-pod-4" is forbidden: exceeded quota: resource-quota-pod-count, requested: count/pods=1, used: count/pods=3, limited: count/pods=3
--------------
7
yaml로 만든 ns3 삭제, 쿼터 제한 삭제
topasvga@cloudshell:~ (ap-seoul-1)$ kubectl delete -f ns3-quota-pod-count.yaml
namespace "ns3" deleted
resourcequota "resource-quota-pod-count" deleted
감사합니다.