Cài đặt và sử dụng công cụ giám sát hiệu suất collectl trên Ubuntu 18.04 LTS

theanh

Administrator
Nhân viên
Giám sát tài nguyên hệ thống & phân tích hiệu suất là nhiệm vụ quan trọng của bất kỳ quản trị viên hệ thống nào. Có nhiều công cụ có sẵn cho Linux để giám sát hiệu suất hệ thống bao gồm top, htop, free, v.v. Collectl là một công cụ giám sát hiệu suất miễn phí, mã nguồn mở và nhẹ có thể được sử dụng để thu thập thông tin về tài nguyên hệ thống như cpu, disk, memory, network, Infiniband, lustre, memory, nfs, slabs và nhiều hơn nữa. Không giống như các công cụ giám sát khác, collectl tập trung vào một tập hợp nhỏ các số liệu thống kê. Collectl có khả năng giám sát các thông số khác nhau cùng một lúc và báo cáo chúng theo cách phù hợp. Collectl đi kèm với nhiều tùy chọn giúp bạn xác định bất kỳ loại sự cố hiệu suất hệ thống nào. Sử dụng collectl, bạn có thể tạo cùng một đầu ra của mpstat, netstat, nfsstat, sar, ps, top và iostat.

Tính năng
  • Khả năng hiển thị đầu ra ở nhiều định dạng.
  • Xuất dữ liệu ở nhiều định dạng tệp khác nhau.
  • Khả năng chạy như một dịch vụ để giám sát các máy từ xa.
  • Giám sát hầu hết mọi hệ thống con.
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt và sử dụng Collectl trên máy chủ Ubuntu 18.04.

Yêu cầu​

  • Máy chủ chạy Ubuntu 18.04.
  • Mật khẩu root được thiết lập cho máy chủ của bạn.

Bắt đầu​

Trước khi bắt đầu, bạn sẽ cần cập nhật hệ thống của mình lên phiên bản mới nhất. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Mã:
apt-get update -y
 apt-get upgrade -y
Sau khi máy chủ của bạn được cập nhật, hãy khởi động lại máy chủ để áp dụng các thay đổi.

Cài đặt Collectl​

Theo mặc định, Collectl có sẵn trong kho lưu trữ mặc định của Ubuntu 18.04. Bạn có thể cài đặt bằng cách chạy lệnh sau:
Mã:
apt-get install collectl -y
Sau khi cài đặt hoàn tất, bạn có thể chạy lệnh sau để liệt kê tất cả các tùy chọn có sẵn với collectl:
Mã:
collectl --h
Bạn sẽ thấy đầu ra sau:
Mã:
Đây là một tập hợp con của các công tắc phổ biến nhất và ngay cả phần mô tả cũngđược rút gọn. Để xem tất cả các loại 'collectl -x', để bắt đầu chỉ cần nhập 'collectl'sử dụng: collectl [switches] -c, --count count thu thập số lượng mẫu này và thoát -f, --filename tên tệp của thư mục/tệp để ghi vào -i, --interval int khoảng thời gian thu thập tính bằng giây [mặc định = 1] -o, --options options các tùy chọn định dạng khác nhau, --showoptions cho tất cả d|D - bao gồm ngày trong đầu ra T - bao gồm thời gian trong đầu ra z - tắt nén tệp plot -p, --playback kết quả phát lại tệp từ 'file' (đảm bảo trích dẫn nếu sử dụng ký tự đại diện) nếu không shell có thể làm hỏng nó -P, --plot tạo đầu ra ở định dạng 'plot' -s, --subsys subsys chỉ định một hoặc nhiều hệ thống con [mặc định = cdn] --verbose hiển thị đầu ra ở định dạng verbose (tự động chọn khi brief không có nghĩa)Nhiều loại trợ giúp -h, --help in văn bản này -v, --version in phiên bản -V, --showdefs in mặc định hoạt động -x, --helpextend trợ giúp mở rộng, mô tả chi tiết hơn nữa -X, --helpall hiển thị tất cả trợ giúp được nối với nhau --showoptions hiển thị tất cả các tùy chọn --showsubsys hiển thị tất cả các hệ thống con --showsubopts hiển thị tất cả các tùy chọn dành riêng cho hệ thống con --showtopopts hiển thị --top options --showheader hiển thị tiêu đề tệp 'sẽ được' tạo --showcolheaders hiển thị tiêu đề cột 'sẽ được' tạo --showslabaliases cho bộ phân bổ SLUB, hiển thị các bí danh không phải gốc --showrootslabs giống như --showslabaliases nhưng sử dụng tên 'gốc'Bản quyền 2003-2016 Hewlett-Packard Development Company, L.P.collectl chỉ có thể được sao chép theo các điều khoản của Giấy phép Nghệ thuậthoặc Giấy phép Công cộng GNU, có thể tìm thấy trong bộ công cụ nguồn

Làm việc với Collectl​

Bây giờ, hãy chạy collectl mà không có bất kỳ tùy chọn nào sẽ hiển thị thông tin về số liệu thống kê về CPU, đĩa và mạng trong một thời gian rất ngắn và dễ hiểu định dạng có thể đọc được.
Mã:
collectl
Bạn sẽ thấy kết quả đầu ra sau:
Mã:
đang chờ mẫu 1 giây...##cpu sys inter ctxsw KBRead Đọc KBWrit Ghi KBIn PktIn KBOut PktOut 17 11 503 320 4 1 20 3 0 0 0 0 2 1 565 165 0 0 0 0 0 2 0 2 6 3 545 83 0 0 0 0 0 2 0 2 0 0 508 39 0 0 0 0 0 2 0 2 1 1 517 42 0 0 0 0 0 2 0 2 1 1 442 37 0 0 0 0 0 2 0 2 1 1 538 65 0 0 20 2 0 2 0 2 1 1 443 39 0 0 0 0 0 2 0 2 1 1 409 39 0 0 0 0 0 2 0 2 1 1 381 38 0 0 0 0 0 2 0 2 1 1 451 44 0 0 0 0 0 2 0 2 3 2 482 42 0 0 0 0 0 2 0 2 9 2 528 101 0 0 0 0 0 2 0 2 1 1 428 39 0 0 0 0 0 2 0 2
Bạn cũng có thể liệt kê số liệu thống kê cho tất cả các hệ thống con bằng lệnh sau:
Mã:
collectl --all
Đầu ra:
Mã:
đang chờ mẫu 1 giây...##cpu sys inter ctxsw Cpu0 Free Buff Cach Inac Slab Map Fragments KBRead Đọc KBWrit Ghi KBIn PktIn KBOut PktOut IP Tcp Udp Icmp Tcp Udp Raw Frag Handle Inodes Đọc Ghi Meta Comm 3 0 459 48 459 139M 63M 573M 413M 93M 136M jibaa4a59ab 0 0 0 0 0 0 0 0 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 12 7 528 142 530 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 1 2 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 3 1 477 57 477 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 0 2 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 5 2 437 55 435 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 0 2 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 1 0 426 43 426 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 0 2 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 4 1 435 54 435 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 0 2 0 0 0 0 144 0 0 0 1088 44711 0 0 0 0 4 2 471 49 472 139M 63M 573M 413M 93M 136M jhbaa5959ab 0 0 0 0 0 2 0 2 0 0 0 0 144 0 0 0 0 1088 44712 0 0 0 0
Bạn cũng có thể sử dụng lệnh collectl với tùy chọn --top như hiển thị bên dưới:
Mã:
collectl --top
Đầu ra:
Mã:
# TOP PROCESSES được sắp xếp theo thời gian (bộ đếm là /giây) 14:14:24# PID User PR PPID THRD S VSZ RSS CP SysT UsrT Pct AccuTime RKB WKB MajF MinF Command 5194 root 20 1233 0 R 66M 27M 0 0.06 0.13 19 00:02.79 0 0 0 0 /usr/bin/perl 8 gốc 20 2 0 Tôi 0 0 0 0,01 0,00 1 00:01,86 0 0 0 0 rcu_sched 1165 gốc 20 866 0 S 103M 7M 0 0,01 0,00 1 00:05,00 0 0 0 sshd: 3593 gốc 20 2 0 Tôi 0 0 0 0,01 0,00 1 00:01,45 0 0 0 0 kworker/0:0 1 gốc 20 0 0 S 76M 9M 0 0,00 0,00 0 0 0:10,28 0 0 0 0 /sbin/init 2 gốc 20 0 0 S 0 0 0 0,00 0,00 0 00:00.02 0 0 0 0 kthreadd 4 gốc 0 2 0 Tôi 0 0 0 0,00 0,00 0 00:00.00 0 0 0 0 kworker/0:0H 6 gốc 0 2 0 Tôi 0 0 0 0,00 0,00 0 0:00.00 0 0 0 0 mm_percpu_wq 7 gốc 20 2 0 S 0 0 0 0,00 0,00 0 00:02,75 0 0 0 0 ksoftirqd/0 9 gốc 20 2 0 Tôi 0 0 0 0,00 0,00 0 00:00.00 0 0 0 0 rcu_bh 10 gốc RT 2 0 S 0 0 0 0,00 0,00 0 00:00.00 0 0 0 di chuyển/0 11 gốc RT 2 0 S 0 0 0 0,00 0,00 0 00:00.03 0 0 0 0 watchdog/0 12 gốc 20 2 0 S 0 0 0 0,00 0,00 0 0:00.00 0 0 0 0 cpuhp/0 13 gốc 20 2 0 S 0 0 0 0,00 0,00 0 0:00.00 0 0 0 kdevtmpfs 14 gốc 0 2 0 I 0 0 0 0,00 0,00 0 00:00.00 0 0 0 0 netns 15 root 20 2 0 S 0 0 0 0.00 0.00 0 0 0 0 rcu_tasks_kthre 16 root 20 2 0 S 0 0 0 0.00 0.00 0 0 0 0:00.00 0 0 0 0 kauditd

Giám sát mức sử dụng CPU, bộ nhớ và đĩa​

Bạn có thể giám sát mức sử dụng CPU bằng cách chạy collectl với tùy chọn -sc:
Mã:
collectl -sc
Đầu ra:
Mã:
đang chờ mẫu 1 giây...##cpu sys inter ctxsw 1 1 461 35 2 2 631 71 11 0 472 109 1 1 552 48 1 1 457 39 0 0 566 46 5 3 572 101 0 0 543 38 1 1 445 40 1 1 591 43 1 1 441 36 0 0 565 51
Bạn cũng có thể xem thông tin chi tiết về mức sử dụng CPU bằng lệnh sau:
Mã:
collectl -sC
Đầu ra:
Mã:
đang chờ mẫu 1 giây...# THỐNG KÊ CPU ĐƠN# Cpu Người dùng Nice Sys Chờ IRQ Soft Steal Khách NiceG Nhàn rỗi 0 2 0 3 0 0 0 0 0 0 94 0 0 0 1 0 0 0 0 0 0 98 0 0 0 1 0 0 0 0 0 0 98 0 0 0 0 0 0 1 0 0 0 98 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 100 0 1 0 1 0 0 0 0 0 0 97 0 0 0 0 0 0 0 0 0 0 100 0 0 0 1 1 0 1 0 0 0 96 0 0 0 0 0 0 0 0 0 0 100 0 0 0 1 0 0 0 0 0 0 98
Để theo dõi việc sử dụng bộ nhớ của hệ thống, hãy chạy lệnh sau:
Mã:
collectl -sm
Đầu ra:
Mã:
đang chờ mẫu 1 giây...##Bản đồ Buff Cach Inac Slab miễn phí 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M 139M 63M 573M 413M 93M 136M
Theo dõi mức sử dụng bộ nhớ với thông tin chi tiết bằng lệnh sau:
Mã:
collectl -sM
Đầu ra:
Mã:
đang chờ mẫu 1 giây...# THỐNG KÊ BỘ NHỚ# Tổng số nút đã sử dụng Bản đồ phiến trống Anon AnonH Đã khóa Không hoạt động HitPct 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100,00 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100,00 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100.00 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100.00 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100.00 0 985M 866844K 142800K 95928K 46160K 93416K 0 5408K 423952K 100.00 0 985M 866968K 142676K 95928K 46160K 93416K 0 5408K 423952K 100.00
Bạn có thể theo dõi việc sử dụng đĩa bằng lệnh sau:
Mã:
collectl -sd
Đầu ra:
Mã:
đang chờ mẫu 1 giây...##KBRead Đọc KBWrit Ghi 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 2
Theo dõi mức sử dụng đĩa với thông tin chi tiết bằng lệnh sau:
Mã:
collectl -sD
Đầu ra:
Mã:
đang chờ mẫu 1 giây...# THỐNG KÊ ĐĨA (/giây)#  Pct#Name KBytes IO đã hợp nhất Kích thước Chờ KBytes Kích thước IO đã hợp nhất Chờ RWSize QLen Chờ SvcTim Utilsda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sda 0 0 0 0 0 20 1 1 20 0 20 0 0 0 0sda 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Theo dõi CPU, Bộ nhớ và Đĩa cùng một lúc​

Bạn có thể theo dõi mức sử dụng CPU, Bộ nhớ và Đĩa bằng cách chạy lệnh duy nhất:
Mã:
collectl -scmd
Đầu ra:
Mã:
đang chờ mẫu 1 giây...##cpu sys inter ctxsw Free Buff Cach Inac Slab Map KBRead Đọc KBWrit Ghi 1 0 518 43 140M 63M 573M 413M 93M 135M 0 0 0 0 7 2 509 104 140M 63M 573M 413M 93M 135M 0 0 20 1 3 1 518 52 140M 63M 573M 413M 93M 135M 0 0 0 0 1 1 445 43 140M 63M 573M 413M 93M 135M 0 0 0 0 2 1 482 51 140M 63M 573M 413M 93M 135M 0 0 0 0 1 1 535 56 140M 63M 573M 413M 93M 135M 0 0 0 0 3 1 499 48 140M 63M 573M 413M 93M 135M 0 0 0 0 2 1 482 53 140M 63M 573M 413M 93M 135M 0 0 20 2

Kết luận​

Trong bài viết trên, tôi đã cung cấp một bản tóm tắt ngắn gọn về collectl. Collectl đi kèm với rất nhiều tùy chọn giúp bạn dễ dàng theo dõi hệ thống Linux của mình.
 
Back
Bên trên