Cẩm nang Elasticsearch: Bộ câu lệnh giám sát – chẩn đoán – tối ưu mà kỹ sư nào cũng cần

Tài liệu này tổng hợp những câu lệnh thiết yếu nhất trong quá trình vận hành thực tế, kèm theo giải thích rõ ràng và hướng dẫn sử dụng.

Elasticsearch là nền tảng tìm kiếm mạnh mẽ, nhưng để vận hành ổn định và hiệu quả, kỹ sư cần theo dõi liên tục sức khỏe của cluster, hiệu năng tìm kiếm, dung lượng lưu trữ và nhiều thông số quan trọng khác.

Khi hệ thống Elasticsearch bắt đầu lớn dần, chúng ta không chỉ quan tâm đến dữ liệu, mà còn phải theo dõi “sức khỏe” của cluster, hiệu năng tìm kiếm, chỉ số lưu trữ, cấu hình node và rất nhiều yếu tố khác. Bộ câu lệnh dưới đây là những lệnh thực tế, thường xuyên được dùng để giám sát – phân tích – khắc phục sự cố.

Bài viết sẽ giúp bạn hiểu ý nghĩa – mục đích – khi nào nên sử dụng từng câu lệnh, để biến việc vận hành Elasticsearch trở nên chủ động và hiệu quả hơn.


1. Nhóm lệnh _cat: Giám sát nhanh, trực quan

Các API _cat của Elasticsearch thường trả về dữ liệu dạng bảng rất dễ đọc.

1.1 Kiểm tra shards

➡️ Hiển thị danh sách shard, trạng thái, node đang giữ shard. Dùng khi: kiểm tra shard bị đỏ, shard unassigned hoặc số shard quá nhiều.


1.2 Kiểm tra nodes

➡️ Xem danh sách node: IP, tên node, % RAM, % heap, role, uptime. Dùng khi: cần phát hiện node sắp hết heap, node vừa restart hoặc node bất thường.


1.3 Kiểm tra indices cơ bản

➡️ Xem nhanh số lượng tài liệu và dung lượng mỗi index.

Danh sách index nặng nhất:

➡️ Rất hữu ích khi điều tra index chiếm nhiều dung lượng nhất gây đầy ổ đĩa.


2. Nhóm lệnh kiểm tra Node Stats

2.1 Thống kê node tổng quát

➡️ Cung cấp toàn bộ thống kê của node: CPU, RAM, JVM, IO, network…


➡️ Xem latency search, query time, fetch time. Dùng khi: điều tra search chậm.


2.3 Thông tin của node cụ thể

➡️ Hữu ích khi chỉ một node gặp sự cố (latency cao, heap đầy…).


2.4 Slowlog hiện tại

➡️ Lấy danh sách truy vấn chậm đã được Elasticsearch ghi log.


2.5 Thống kê JVM

➡️ Dùng để xem GC time, memory pool, heap usage — rất quan trọng trong tuning hiệu năng.


2.6 Nút “hot thread”

➡️ Hiển thị các thread đang tiêu tốn CPU cao. Dùng khi: node bị treo, CPU spike, search chậm bất thường.


3. Nhóm lệnh _cluster: Kiểm tra toàn hệ thống

3.1 Tình trạng chung của cluster

➡️ Màu sắc (green / yellow / red) phản ánh toàn bộ trạng thái cluster.


3.2 Thống kê tổng quan

➡️ Số node, index, shard, dung lượng, field types…


3.3 Xem settings cluster

➡️ Dùng để xem các cấu hình hiện tại hoặc cả giá trị mặc định.


3.4 Nhiệm vụ đang pending

➡️ Phát hiện bottleneck trong cluster, đặc biệt khi reallocation chậm.


3.5 Tổng dung lượng tất cả index

➡️ Trả về một con số duy nhất – rất tiện khi monitoring.


4. Nhóm lệnh thống kê hiệu năng index

4.1 Thống kê tổng quan index


4.2 Kiểm tra cache của từng index

➡️ Hữu ích để đánh giá cache có hoạt động như kỳ vọng không.


4.3 Kiểm tra lượng dữ liệu lưu trong store


5. Nhóm lệnh Tasks: Theo dõi và xử lý tác vụ

➡️ Dùng khi search bị treo hoặc chiếm tài nguyên lâu.


5.2 Hủy tất cả task đang chạy

➡️ Cứu cluster khi có truy vấn quá nặng, task lang thang gây nghẽn.


6. Snapshot & Restore

➡️ Dùng khi theo dõi tiến trình snapshot hoặc kiểm tra repository.


7. Nhóm lệnh Settings của index và cluster

7.1 Xem hoặc thay đổi settings

➡️ Điều chỉnh giới hạn fields, result window… tùy theo nhu cầu.

Ví dụ tăng giới hạn:


7.2 Cài đặt slowlog

➡️ Giúp phát hiện truy vấn hoặc indexing operation chậm.


7.3 Gỡ block read-only

➡️ Thường dùng khi cluster bị đầy disk khiến ES tự động khóa chỉ mục.


7.4 Điều chỉnh watermark tạm thời

➡️ Cứu cụm tạm thời khi sắp đầy ổ đĩa.


8. Các lệnh vệ sinh hệ thống

8.1 Xóa cache

8.2 Xóa toàn bộ scroll context

➡️ Dùng khi scroll query để lại session nặng gây tăng RAM.


Kết luận

Tài liệu này không chỉ liệt kê câu lệnh mà còn cung cấp ý nghĩa và ngữ cảnh sử dụng. Khi bạn nắm vững bộ lệnh này, việc giám sát – tối ưu – xử lý sự cố Elasticsearch trở nên chủ động và tiết kiệm thời gian hơn rất nhiều.

Last updated

Was this helpful?