어 ?
쿠버네티스 대시보드에 네임스페이스 한 번 만들러 갈래 ?
그래 따라와 ~
(1) Namespace 설정 방법
# Namespace 생성
apiVersion: v1
kind: Namespace
metadata:
name: nm-1
# Pod 생성
apiVersion: v1
kind: Pod
metadata:
name: pod-1
namespace: nm-1 # Namespace 지정
spec:
containers:
- name: container
image: ubuntu:latest
command: ["/bin/sh", "-ec", "while :; do echo '.'; sleep 5 ; done"]
(2) ResourceQuota
▷ 네임스페이스별 총 리소스 사용을 제한하는 제약 조건 제공 : 오브젝트 수 / 총 컴퓨트 리소스 양 제한
▷ 클러스터 공유 시, 과도한 사용을 제한하기 위한 도구
# Namespace 생성
apiVersion: v1
kind: Namespace
metadata:
name: nm-2
# ResourceQuota 생성
apiVersion: v1
kind: ResourceQuota
metadata:
name: rq-1
namespace: nm-2
spec:
hard: # 메모리 제한
requests.memory: 1Gi
limits.memory: 2Gi
# Pod 생성
apiVersion: v1
kind: Pod
metadata:
name: pod-1
namespace: nm-1
spec:
containers:
- name: container
image: ubuntu:latest
command: ["/bin/sh", "-ec", "while :; do echo '.'; sleep 5 ; done"]
resources:
requests:
memory: 500Mi
limits:
memory: 1Gi
(3) LimitRange
▷ 하나의 파드 또는 컨테이너가 ResourceQuota 에서 생성한 모든 리소스를 독점하는 것을 방지
# Namespace 생성
apiVersion: v1
kind: Namespace
metadata:
name: nm-3
# ResourceQuota 생성
apiVersion: v1
kind: ResourceQuota
metadata:
name: rq-2
namespace: nm-3
spec:
hard:
requests.memory: 1Gi
limits.memory: 2Gi
# LimitRange 생성
apiVersion: v1
kind: LimitRange
metadata:
name: lr-1
namespace: nm-3
spec:
limits:
- type: Container
min:
memory: 0.1Gi # 최소 메모리
max:
memory: 0.4Gi # 최대 메모리
maxLimitRequestRatio:
memory: 3 # 최소/최대 비율 제한
defaultRequest:
memory: 0.1Gi
default:
memory: 0.2Gi
# Pod 생성
apiVersion: v1
kind: Pod
metadata:
name: pod-1
namespace: nm-3
spec:
containers:
- name: container
image: ubuntu:latest
command: ["/bin/sh", "-ec", "while :; do echo '.'; sleep 5 ; done"]
resources:
requests:
memory: 0.15Gi
limits:
memory: 0.3Gi
'CLOUD > Docker&Kubernetes' 카테고리의 다른 글
[Kubernetes] K8S 구조 - K8S 네트워크 (0) | 2023.05.03 |
---|---|
[Kubernetes] K8S 구조 - K8S 컴포넌트 (0) | 2023.05.03 |
[Kubernetes] MSA 실습하기 - Admin & Main MSA (0) | 2023.04.28 |
[Kubernetes] MSA 실습하기 - RabbitMQ (0) | 2023.04.28 |
[Kubernetes] AutoScaling (HPA) (0) | 2023.04.26 |