Apache đã vượt khỏi tầm kiểm soát trong vài ngày qua và khiến MySQL bị sập hai lần. Tất cả bắt đầu khi tôi di chuyển một trang web WordPress cũng chứa một diễn đàn phpBB.
Tôi không có nhiều kinh nghiệm trong quản trị máy chủ nên tôi rất khó xác định chính xác nguyên nhân gây ra sự cố. Khi tôi nhận thấy rằng MySQL bị hỏng, tôi đã chạy TOP và thấy mức tăng tải hệ thống của tôi lên 98,00. Máy chủ chạy 10 V-HOSTS tất cả đều nhận được lưu lượng truy cập tốt, vì vậy tôi rõ ràng đã thấy nhiều quá trình apache-2 đang chạy.
Tải máy chủ cao tiếp tục trong 10 phút và sau đó nó trở lại trạng thái bình thường. Tôi đã không thấy lưu lượng truy cập mạng tăng đột biến vào thời điểm này.
Thật không may, ghi nhật ký lỗi MySQL đã bị vô hiệu hóa (hiện đã được bật lại) nên không có manh mối nào ở đó. Nhưng tôi khá chắc chắn rằng đó là do Apache đã tiêu thụ tất cả các tài nguyên, vì vậy ID tiến trình MySQL đã bị giết.
Câu hỏi của tôi là:
Lần tiếp theo điều này xảy ra - làm thế nào tôi có thể xác định được nguyên nhân gây ra tải hệ thống tăng đột biến? Nó có thể là một kịch bản php đã phát điên? Nó có thể là một cuộc tấn công DDOS?
Có cách nào tự động khởi động lại MySQL khi nó gặp sự cố không?
Tôi đã cài đặt htop
. Điều này có thể hữu ích hơn top
?
Đây là số liệu thống kê máy chủ của tôi:
m1.xlarge (8 ECUs, 4 vCPUs, 15 GiB memory, 4 x 420 GiB Storage Capacity)
Ubuntu Server 12.04.3 LTS
dmesg
giúp đỡ?