0

Phần 4 - Scheduling

Chia sẻ
  • 4 0
 Xuất bản Thứ Năm, 2:42 CH 4 0 0 5
  • 4 0

Sau khi Pod được tạo, Kubernetes Scheduler sẽ chọn Node phù hợp để Pod chạy.

Scheduler dựa trên các yếu tố:

  • Tài nguyên còn trống (CPU, Memory).
  • Labels và Selectors.
  • NodeSelector.
  • Affinity / Anti-Affinity.
  • Taints / Tolerations.

Scheduler chọn Node, còn Kubelet trên Node đó sẽ tạo và chạy Container.

Các khái niệm chính

  • Labels: Gắn nhãn (key=value) cho tài nguyên.
  • Selectors: Tìm tài nguyên dựa trên Labels.
  • NodeSelector: Chỉ cho Pod chạy trên Node có Label nhất định.
  • Affinity: Ưu tiên hoặc bắt buộc Pod chạy gần Node/Pod phù hợp.
  • Anti-Affinity: Tránh Pod chạy cùng Node hoặc gần Pod khác để tăng tính sẵn sàng.
  • Taints: Node từ chối các Pod không phù hợp.
  • Tolerations: Cho phép Pod được chạy trên Node có Taint.

Luồng hoạt động

Pod được tạo
      │
      ▼
Scheduler chọn Node
      │
      ├─ Kiểm tra tài nguyên
      ├─ Labels / Selectors
      ├─ NodeSelector
      ├─ Affinity / Anti-Affinity
      └─ Taints / Tolerations
      │
      ▼
Kubelet tạo Container

Ghi nhớ nhanh

  • Scheduler → Chọn Node.
  • Labels → Đánh dấu.
  • Selectors → Tìm kiếm.
  • NodeSelector → Chọn Node theo Label.
  • Affinity → Muốn chạy cùng.
  • Anti-Affinity → Muốn tách ra.
  • Taints → Node từ chối Pod.
  • Tolerations → Pod được phép vào Node có Taint.
Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí