Off-CPU và Độ Trễ Scheduler: Đo Thời Gia...
LinuxPerformance

Off-CPU và Độ Trễ Scheduler: Đo Thời Gian Tiến Trình KHÔNG Chạy

Profiling on-CPU (Bài 17) chỉ thấy lúc CPU bận. Nhưng phần lớn độ trễ một ứng dụng cảm nhận lại nằm ở lúc nó KHÔNG chạy: chờ đĩa, chờ khóa, chờ tới lượt CPU. eBPF đo được khoảng off-CPU đó qua tracepoint của scheduler. Bài này đo hai thứ trên node thật: run-queue latency — thời gian từ lúc một tác vụ được đánh thức tới lúc thật sự chạy, phơi ra cái đuôi 16-32ms khi CPU bị tranh; và off-CPU time — một tác vụ nằm ngoài CPU bao lâu mỗi lần, với đuôi tới vài giây cho tác vụ bị chặn.

K
KaiMay 24, 2026
Scheduler và scheduling framework
DevOpsKubernetes

Scheduler và scheduling framework

Mỗi pod ta tạo đều có ai đó âm thầm chọn node cho nó — đó là kube-scheduler, thứ ta đã dựng ở Bài 8 mà chưa nhìn kỹ. Bài này mở Part VII bằng cách đào đúng cách nó chọn: lọc bỏ node không vừa (filter), chấm điểm node còn lại (score), rồi bind. Test thật một pod bị treo vì không node nào đủ chỗ, một pod được chọn node, và xem scoring dồn pod vào node ít tải hơn — không phải chia đều ngây thơ.

K
KaiMay 24, 2026
controller-manager và scheduler: Control...
DevOpsArchitecture

controller-manager và scheduler: Control Loop và Leader Election

Hai thành phần biến trạng thái mong muốn thành hành động: kube-controller-manager chạy hàng chục control loop, kube-scheduler chọn node cho pod. Bài này dựng cả hai trên ba controller, giải thích cách scheduler lọc và chấm điểm node, rồi xem leader election hoạt động thật — ba bản chạy nhưng chỉ một làm việc.

K
KaiMay 24, 2026