Vòng lặp lỗi khởi động
Thuộc phần Giới thiệu về Kubernetes trong hành trình Terminal của Coddy. Bài học 24 trên 45.
Một container được kỳ vọng sẽ tiếp tục chạy. Khi tiến trình của nó thoát, Kubernetes sẽ khởi động lại container đó (theo mặc định, restartPolicy của Pod là Always). Nếu container liên tục thoát, trạng thái sẽ chuyển thành CrashLoopBackOff và cột RESTARTS tăng lên, đồng thời thời gian chờ trước mỗi lần khởi động lại cũng dài hơn.
Đây là một container in ra thông báo rồi cố ý gặp lỗi:
kubectl run crash --image=busybox -- sh -c "echo boom; exit 1"Mọi thứ sau -- là lệnh mà container chạy. Liệt kê các Pod vài lần và theo dõi trạng thái chuyển từ Running sang Error rồi đến CrashLoopBackOff.
Nguyên nhân nằm trong nhật ký: kubectl logs crash in ra boom, điều cuối cùng mà container nói. Ngay cả image không có gì để chạy, như busybox thông thường, cũng thoát ngay lập tức và rơi vào cùng một vòng lặp: Pod cần một tiến trình tiếp tục chạy.
Thử thách
DễTạo một Pod tên là crash từ image busybox, chạy lệnh sh -c "echo boom; exit 1". In nhật ký của Pod, sau đó liệt kê các Pod hai lần và theo dõi cho đến khi trạng thái chuyển thành CrashLoopBackOff.
Tự làm thử
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Giới thiệu về Kubernetes
4Deployment
Tạo DeploymentMở rộng quy môTạo Deployment từ manifestCập nhật imageKhôi phục phiên bản trướcÔn tập: Trình quản lý Deployment10Dự án cửa hàng trực tuyến
Tổng quan dự ánViết cấu hình triển khai8Không gian tên và công việc
Không gian tênLàm việc trong không gian tênCông việcÔn tập: người dẫn đường trong không gian tênTự luyện tập: Playground Terminal