Bỏ qua

08.kubelet

1. kubelet - "Thuyền trưởng" trên mỗi Worker Node 👨‍✈️

Nếu Master Node là "Tàu Chỉ Huy", thì mỗi Worker Node là một "Tàu Hàng", và kubelet chính là thuyền trưởng của con tàu đó. Nó là agent chính, chịu trách nhiệm cho mọi hoạt động diễn ra trên node của mình.

kubeletđiểm liên lạc duy nhất của Master Node trên mỗi Worker Node. Mọi mệnh lệnh từ kube-api-server xuống Worker Node đều do kubelet tiếp nhận và thực thi.


2. Các Nhiệm vụ chính của "Thuyền trưởng" kubelet

kubelet có 3 nhiệm vụ cốt lõi:

  1. Đăng ký Node (Node Registration):

  2. Khi một Worker Node mới khởi động, kubelet sẽ làm "thủ tục giấy tờ" cần thiết để đăng ký Node này với cụm Kubernetes, báo cáo rằng: "Thuyền trưởng xin báo, tàu hàng số hiệu X đã sẵn sàng nhận nhiệm vụ!".

  3. Tạo và Quản lý Vòng đời Pod (Pod Lifecycle):

  4. Sau khi kube-scheduler đã quyết định một Pod sẽ chạy trên Node này, kube-api-server sẽ gửi chỉ thị đến kubelet.

  5. kubelet nhận lệnh và ra chỉ thị cho Container Runtime Engine (ví dụ: Docker, ContainerD) để kéo image cần thiết và khởi chạy các container bên trong Pod.
  6. Nó cũng chịu trách nhiệm hủy Pod khi có lệnh.

  7. Báo cáo Trạng thái (Status Reporting):

  8. kubelet liên tục theo dõi "sức khỏe" của các Pod và container đang chạy trên node của mình.

  9. Nó đều đặn gửi các báo cáo trạng thái này về cho kube-api-server, thông báo tình hình của "con tàu" và các "thùng hàng" trên đó.

3. Cài đặt kubelet - Một điểm "Đặc biệt" ⚠️

Đây là một điểm rất quan trọng bạn cần nhớ, khác biệt so với các thành phần Master Node khác:

  • Ngay cả khi bạn sử dụng công cụ kubeadm để dựng cụm, kubeadm KHÔNG tự động cài đặt kubelet cho bạn.
  • Bạn phải luôn luôn cài đặt kubelet một cách thủ công trên tất cả các Worker Node (và cả Master Node).
  • Quá trình cài đặt thường bao gồm việc tải file cài đặt, giải nén và cấu hình nó chạy như một service hệ thống.

4. Xem tiến trình kubelet đang chạy

Để xem kubelet có đang chạy trên một node hay không và với các tùy chọn nào, bạn có thể dùng lệnh sau trên node đó:

ps -aux | grep kubelet

5. "Chốt hạ" cho Kỳ thi CKA 📝

  • kubelet là agent chính, chạy trên mỗi Worker Node (và cả Master Node).
  • Nó là người thực thi - nhận lệnh từ api-server và ra lệnh cho Container Runtime để chạy/dừng container.
  • Nó là người báo cáo - liên tục gửi trạng thái của Node và các Pod về cho Master.
  • Quan trọng: kubeadm không tự cài kubelet. Bạn phải luôn cài đặt nó thủ công.

Hiểu rõ vai trò của kubelet là bạn đã hiểu được "cánh tay nối dài" của Master Node hoạt động như thế nào trên từng Worker Node rồi đó. Chúc bạn buổi chiều học tập hiệu quả!

Bình luận