Nếu đây là hệ thống Linux, bạn có thể tự tính toán mức sử dụng đĩa - ngôn ngữ bạn chọn để triển khai nó sẽ sử dụng cùng một khái niệm.
Hạt nhân của bạn có nhiều khả năng sử dụng nhất sysfs, tạo nhiều thông tin về hệ thống của bạn có sẵn tại /sys
; chúng tôi có thể lấy thông tin về đĩa mong muốn của chúng tôi tại một khoảng thời gian thường xuyên, và tính toán sử dụng dựa trên sự khác biệt giữa chúng.
Trên hệ thống của tôi, tôi sẽ xem đĩa, sda
, máy của bạn có thể khác.
$ cat /sys/class/block/sda/stat
42632 25 2045318 247192 6956543 7362278 123236256 23878974 0 3703033 24119492
Bây giờ nếu chúng ta nhìn vào the Kernel documentation cho /sys/class/block/<dev>/stat
chúng ta có thể thấy các mô tả sau đây cho mỗi cột của đầu ra.
Name units description
---- ----- -----------
read I/Os requests number of read I/Os processed
read merges requests number of read I/Os merged with in-queue I/O
read sectors sectors number of sectors read
read ticks milliseconds total wait time for read requests
write I/Os requests number of write I/Os processed
write merges requests number of write I/Os merged with in-queue I/O
write sectors sectors number of sectors written
write ticks milliseconds total wait time for write requests
in_flight requests number of I/Os currently in flight
io_ticks milliseconds total time this block device has been active
time_in_queue milliseconds total wait time for all requests
Nếu chúng ta chạy theo một lịch trình định kỳ, và diff một số thời gian chờ đợi, chúng ta có thể thấy chỉ trong bao lâu chúng ta đang chờ đợi vào mỗi hoạt động. Bạn cũng sẽ có các chỉ số khác về tổng số IOPS và băng thông RW. Tài liệu hướng dẫn sâu hơn về từng lĩnh vực.
Dù ngôn ngữ được chọn, mô tả tập tin để mở để có được thông tin về đĩa sẽ
/sys/class/block/<dev>/stat
Nếu chúng ta làm điều này trên một lịch trình, chúng ta có thể vẽ đồ thị ưa thích;)
Nguồn
2017-06-05 23:41:41
Vâng, bạn chắc chắn có thể kích hoạt tất cả các loại tiện ích hệ thống và đánh giá đầu ra của chúng để nhận bất kỳ thông tin nào bạn cũng có thể vẽ như một con người. Tuy nhiên tôi nghi ngờ rằng điều này thực sự giúp trong kịch bản bạn mô tả. "Đĩa cứng" bạn thấy trong hệ thống ảo hóa chỉ được mô phỏng. Vì vậy, các tiện ích có thể hiển thị một số thông tin, nhưng câu hỏi là có bao nhiêu sự thật trong đó. Hiệu suất kém trong các kịch bản như vậy không nằm trong phần cứng hệ thống (dù sao là ảo), nhưng trong toàn bộ cụm mạng được cung cấp tất cả các dịch vụ mà bạn không thể kiểm soát hoặc dự đoán được. – arkascha
Tôi muốn nhận được nhà cung cấp tốt hơn hoặc ưu đãi tốt hơn nếu bạn gặp sự cố với giải pháp hiện tại của mình. Có _huge_ sự khác biệt giữa các nhà cung cấp khác nhau. Thông thường các nhà cung cấp ít được biết đến cung cấp một hiệu suất tốt hơn nhiều so với các công ty nổi tiếng. – arkascha
Tôi nên thêm rằng tôi không còn tham gia dự án nữa (và không biết ơn). Hệ thống có độ trễ không đúng về HDD. Caching vào ổ cứng thay vì DB thực sự gây ra các kết nối đến thời gian ra ngoài. Đó là nền tảng tồi tệ nhất mà tôi từng làm việc. Tôi đã kết thúc việc lưu trữ vars config trong DB vì nó nhanh hơn để có được chúng theo cách đó. –