Trả lời nhanh: Cần hai lớp: theo dõi từ bên ngoài để biết dịch vụ có sống với người dùng không, và theo dõi từ bên trong để biết vì sao. Năm chỉ số nên cảnh báo là dịch vụ không phản hồi, đĩa gần đầy, ổ hỏng, sao lưu thất bại và chứng chỉ sắp hết hạn. Cảnh báo phải tới được người thực sự đọc.
Hệ thống giám sát mà không ai đọc cảnh báo thì chỉ là một máy chủ tốn điện. Bài này tập trung vào cách dựng một bộ giám sát tối thiểu nhưng thực sự hữu ích, thay vì một bảng điều khiển đẹp mà không ai mở.
Hai lớp giám sát
Từ bên ngoài. Một dịch vụ ở nơi khác gọi vào hệ thống của bạn theo chu kỳ và kiểm xem có phản hồi không. Đây là lớp trả lời câu hỏi quan trọng nhất: người dùng có truy cập được không.
Lợi thế lớn nhất là nó độc lập. Cả trung tâm dữ liệu mất mạng thì lớp này vẫn báo, còn hệ thống giám sát đặt bên trong sẽ im lặng cùng mọi thứ khác.
Từ bên trong. Một tác nhân chạy trên mỗi máy chủ, thu thập chỉ số về CPU, bộ nhớ, đĩa, mạng, tiến trình. Đây là lớp trả lời câu hỏi tiếp theo: vì sao hỏng.
Cả hai đều cần. Chỉ có lớp ngoài thì bạn biết hỏng nhưng không biết vì sao. Chỉ có lớp trong thì bạn có rất nhiều biểu đồ nhưng không biết người dùng đang gặp gì.
Năm cảnh báo cốt lõi
Bắt đầu bằng đúng năm cái này, đừng bật hàng trăm quy tắc ngay từ đầu.
- Dịch vụ không phản hồi. Kiểm từ bên ngoài, mỗi phút một lần, và chỉ báo sau vài lần thất bại liên tiếp để tránh báo giả vì một gói tin rớt.
- Đĩa gần đầy. Cảnh báo ở mức tám mươi phần trăm và báo gấp ở mức chín mươi. Đĩa đầy là nguyên nhân sự cố phổ biến nhất và cũng là cái dễ phòng nhất.
- Ổ đĩa hỏng hoặc nhóm chịu lỗi đang thiếu ổ. Đây là thứ mà nếu không có cảnh báo thì có thể vài tháng không ai biết.
- Tác vụ sao lưu thất bại. Sao lưu hỏng âm thầm là tình huống rất phổ biến và rất đắt khi cần tới.
- Chứng chỉ sắp hết hạn. Nhắc trước ba mươi ngày. Chứng chỉ hết hạn làm dịch vụ dừng và luôn xảy ra vào lúc bất tiện nhất.
Sau khi năm cái này chạy ổn định vài tháng, hãy thêm dần các chỉ số khác theo nhu cầu thực tế của bạn.
Tránh mệt vì cảnh báo
Đây là vấn đề lớn hơn việc thiếu cảnh báo. Khi mỗi ngày có ba mươi thông báo mà hai mươi chín cái là bình thường, người ta ngừng đọc, và cái thứ ba mươi trôi qua không ai để ý.
Bốn cách giảm nhiễu:
- Chỉ cảnh báo thứ cần hành động. Nếu bạn không làm gì khi nhận được nó thì đó không phải cảnh báo mà là thông tin, hãy để trên bảng điều khiển thay vì gửi đi.
- Đặt ngưỡng theo thực tế của bạn, không dùng ngưỡng mặc định. CPU chín mươi phần trăm là bình thường với máy chủ tính toán và bất thường với máy chủ web.
- Yêu cầu trạng thái duy trì. Chỉ báo khi vượt ngưỡng liên tục vài phút, không báo ngay ở lần đo đầu tiên.
- Gom nhóm. Một máy chủ chết thì gửi một cảnh báo, đừng gửi ba mươi cảnh báo cho ba mươi dịch vụ trên máy đó.
Rà lại danh sách cảnh báo mỗi quý và tắt những cái mà trong ba tháng qua bạn chưa từng hành động khi nhận được.
Cảnh báo tới đâu
Đây là chỗ nhiều hệ thống giám sát tốt trở nên vô dụng.
Đừng gửi vào một hộp thư chung mà không ai nhận trách nhiệm. Đây là cách thất bại kinh điển: cảnh báo có đủ, gửi đều đặn, và không ai đọc.
Phân mức theo mức khẩn. Sự cố cần xử lý ngay thì gửi vào kênh gây chú ý, chẳng hạn ứng dụng nhắn tin của đội hoặc tin nhắn điện thoại. Cảnh báo cần xử lý trong ngày thì gửi thư điện tử.
Chỉ định người trực rõ ràng. Kể cả đội hai người cũng nên có quy ước ai xử lý cảnh báo trong khung giờ nào.
Kiểm tra định kỳ. Mỗi quý gây một cảnh báo giả để xác nhận nó vẫn tới đúng nơi. Rất nhiều hệ thống ngừng gửi được sau khi đổi mật khẩu thư hoặc đổi cấu hình mà không ai biết.
Đặt hệ thống giám sát ở đâu
Nguyên tắc bắt buộc: hệ thống giám sát không được nằm trong thứ mà nó giám sát.
Nếu máy chủ giám sát chạy trên chính cụm ảo hóa mà nó theo dõi, thì khi cụm chết bạn không nhận được cảnh báo nào. Đây là lỗi thiết kế rất phổ biến.
Ba cách bố trí hợp lý:
- Dịch vụ giám sát từ bên ngoài cho lớp kiểm tra từ ngoài. Có nhiều dịch vụ với gói miễn phí đủ dùng cho vài chục điểm kiểm tra.
- Máy chủ giám sát nội bộ đặt ngoài cụm chính, chẳng hạn một máy ảo nhỏ ở nhà cung cấp khác hoặc một thiết bị nhỏ trong văn phòng.
- Giám sát chéo nếu bạn có hai địa điểm: mỗi nơi giám sát nơi kia.
Và đừng quên giám sát chính hệ thống giám sát, bằng một cơ chế đơn giản báo khi nó ngừng gửi tín hiệu sống.
Năm cảnh báo cốt lõi, đủ cho phần lớn hệ thống
| Cảnh báo | Ngưỡng gợi ý | Vì sao quan trọng |
|---|---|---|
| Ổ đĩa sắp đầy | Còn dưới 20 phần trăm | Ổ đầy làm dịch vụ dừng, và đây là sự cố dễ phòng nhất |
| Dịch vụ chính không trả lời | Kiểm mỗi phút, báo sau hai lần liên tiếp thất bại | Báo sau một lần thất bại sẽ gây quá nhiều cảnh báo giả |
| Ổ đĩa vật lý báo lỗi | Bất kỳ chỉ số lỗi nào tăng | Cho bạn thời gian thay ổ trước khi nó chết hẳn |
| Sao lưu thất bại | Ngay lần đầu thất bại | Đây là cảnh báo hay bị bỏ qua nhất và tốn kém nhất khi bỏ qua |
| Chứng chỉ sắp hết hạn | Trước 30 ngày | Chứng chỉ hết hạn gây gián đoạn dịch vụ và rất dễ phòng |
Bắt đầu với đúng năm cảnh báo này. Thêm cảnh báo mới chỉ khi bạn đã gặp một sự cố mà năm cái này không bắt được.
Bốn nguyên tắc để cảnh báo còn được đọc
# Canh bao gia lam nguoi ta ngung doc canh bao.# Mot he thong bao 50 lan moi ngay bang mot he thong khong bao gi. # Bon nguyen tac: # 1. Moi canh bao phai keo theo mot HANH DONG cu the# Neu ban doc xong va khong lam gi, hay xoa canh bao do # 2. Dat nguong theo du lieu that, khong theo cam tinh# Do trong hai tuan roi moi dat nguong # 3. Yeu cau that bai lien tiep vai lan truoc khi bao# Mot lan mat goi tin khong phai su co # 4. Tach canh bao khan va canh bao thong thuong ra hai duong khac nhau# Khan thi goi dien hoac nhan tin, thong thuong thi gui email # Ra soat hang thang: canh bao nao ban da bo qua nhieu lan nhat.# Do la canh bao can sua nguong hoac can xoa han.Đừng đặt giám sát trên chính máy nó theo dõi
- Không đặt trên chính máy chủ mà nó giám sát. Máy chết là mất luôn khả năng biết máy đã chết.
- Nên đặt ở một nơi khác về mặt hạ tầng, để mất điện hoặc mất mạng ở nơi chính không làm mất luôn cảnh báo.
- Kiểm tra chính hệ thống giám sát cũng cần được giám sát. Ít nhất hãy đặt nó gửi một tin nhắn báo sống mỗi ngày, để bạn biết nó vẫn chạy.
Câu hỏi thường gặp
Nên dùng công cụ giám sát nào
Với hệ thống nhỏ, một dịch vụ kiểm tra từ bên ngoài cộng với cảnh báo có sẵn của nhà cung cấp máy chủ là đủ. Từ vài máy chủ trở lên, các bộ công cụ mã nguồn mở phổ biến cho khả năng theo dõi sâu hơn, đổi lại tốn công dựng và bảo trì.
Giám sát tốn bao nhiêu tài nguyên
Tác nhân trên mỗi máy chủ rất nhẹ, gần như không đáng kể. Phần tốn tài nguyên là máy chủ thu thập và lưu trữ chỉ số, nhất là khi bạn giữ dữ liệu chi tiết trong thời gian dài. Hãy đặt chính sách gộp dữ liệu cũ để kiểm soát dung lượng.
Nên giữ dữ liệu giám sát bao lâu
Chi tiết theo phút trong hai tuần, gộp theo giờ trong ba tháng, gộp theo ngày trong một năm là một chính sách hợp lý. Dữ liệu dài hạn hữu ích cho việc lập kế hoạch dung lượng và cho việc chứng minh xu hướng khi cần xin ngân sách.
Cảnh báo giả nhiều quá thì làm gì
Đừng tắt hết. Hãy rà từng cảnh báo và hỏi hai câu: lần cuối tôi hành động vì nó là khi nào, và ngưỡng có phù hợp với hệ thống này không. Phần lớn nhiễu đến từ việc dùng ngưỡng mặc định thay vì ngưỡng đo từ chính hệ thống của bạn.
