FresherKỹ thuậtElasticsearch
Các trạng thái cluster green, yellow và red nghĩa là gì?
Thử trả lời trước
Đáp án mẫu
Trạng thái health của cluster tóm tắt việc cấp phát shard.
- green: mọi primary và replica shard đã được gán. Mọi thứ hoạt động và có dự phòng.
- yellow: mọi primary đã được gán, nhưng ít nhất một replica thì chưa. Search và ghi vẫn chạy và không mất dữ liệu, nhưng các shard đó không có dự phòng.
- red: ít nhất một primary shard chưa được gán. Một phần dữ liệu không truy cập được, search có thể trả kết quả thiếu hoặc lỗi, và ghi vào các shard đó thất bại.
GET _cluster/health
GET _cluster/health?level=indices
GET _cat/health?v
Lệnh đầu trả về status, number_of_nodes, active_primary_shards, unassigned_shards và nhiều thông tin khác. level=indices hiển thị trạng thái theo từng index, và trạng thái cluster là trạng thái tệ nhất của bất kỳ index nào.
Cluster một node mới với một replica mặc định hiển thị yellow, vì replica không có node thứ hai để đặt. Yellow sau khi mất node nghĩa là replica đang được dựng lại. Red sau khi mất node nghĩa là primary bị mất mà không còn bản sao.
Hãy cảnh báo ngay khi red và khi yellow kéo dài.
Green là đầy đủ, yellow là không có dự phòng, và red là thiếu dữ liệu.
Ý chính
- Green nghĩa là mọi shard đã được gán
- Yellow nghĩa là thiếu replica, không mất dữ liệu
- Red nghĩa là thiếu primary và dữ liệu không truy cập được
- Trạng thái cluster là trạng thái tệ nhất của các index
Câu hỏi nối tiếp thường gặp
- Tại sao cluster dev một node thường là yellow?
- Làm sao tìm index nào khiến cluster red?
Lỗi thường gặp
- Coi yellow là vô hại ở production
- Chỉ nhìn trạng thái cluster mà không xem trạng thái theo index