728x90
반응형
개요
기본 scheduler가 아닌 사용자가 만든 scheduler를 생성 하고 사용하는 방법을 알아보겠습니다.
사용 이유
GPT가 아래의 경우에 사용한다고 알려줌..(좋다 GPT)
- Resource allocation customization: Kubernetes의 기본 스케줄러는 Pod을 가용한 리소스 (예: CPU, 메모리)에 따라 스케줄링합니다. 그러나 애플리케이션의 특성에 따라 다른 스케줄링 로직이 필요할 수 있습니다. 예를 들어, Batch Job의 경우 스케줄러는 가능한 빨리 완료되어야 하므로 다른 스케줄링 알고리즘이 필요합니다. 이러한 경우 multiple scheduler를 사용하여 리소스 할당에 대한 다양한 사용자 정의 규칙을 적용할 수 있습니다.
- Isolation: Multiple scheduler를 사용하면 서로 다른 스케줄러를 사용하여 Pod을 분리할 수 있습니다. 이는 서로 다른 애플리케이션이나 팀에 속한 Pod을 분리하거나, 운영 및 개발 환경을 분리하는 데 도움이 됩니다.
- Fault tolerance: Multiple scheduler를 사용하면 하나의 스케줄러가 장애가 발생하여 동작하지 않을 때 다른 스케줄러가 Pod을 스케줄링할 수 있습니다. 이렇게 하면 전체 클러스터의 가용성이 향상됩니다.
- Policy enforcement: Multiple scheduler를 사용하면 각각의 스케줄러가 다른 정책을 적용할 수 있습니다. 예를 들어, Pod의 로깅을 강제로 활성화하는 스케줄러와 Pod의 로깅을 비활성화하는 스케줄러를 분리할 수 있습니다
생성 방법
https://kubernetes.io/ko/docs/tasks/extend-kubernetes/configure-multiple-schedulers/
위 링크에서 제공하는 yaml 파일을 사용 하면 쉽게 만들수 있습니다.
custom scheduler를 이용한 배포
schedulerName에 custom scheduler를 입력 하면 됩니다.
apiVersion: v1
kind: Pod
metadata:
labels:
app: custom-scheduler
name: custom-scheduler-pod
spec:
containers:
- image: nginx
name: label-pod-1
schedulerName: my-scheduler
정리
scheduler를 사용자가 따로 설정 할 수있다.
Next Post
[CKA] 14. scheduler profile 설정
728x90
반응형
'Cloud > k8s-CKA' 카테고리의 다른 글
[CKA] 15. k8s Monitoring (METRIC SERVER) and log (0) | 2023.03.19 |
---|---|
[CKA] 14. scheduler profile 설정 (0) | 2023.03.07 |
[CKA] 12. Static Pod (0) | 2023.03.05 |
[CKA] 11. DaemonSet (0) | 2023.03.04 |
[CKA] 10. Namespace resource 제어 방법 (0) | 2023.03.04 |