Skip to content

Latest commit

 

History

History
210 lines (143 loc) · 5.79 KB

Collectd.md

File metadata and controls

210 lines (143 loc) · 5.79 KB

Các bạn có thể tham khảo thêm các bài viết trước của mình

Về Collectd

Ngoài các bản tin log nhận được, Logstash cũng có thể kết hợp thêm với một thành phần khác để thu thập "metric" các phần cứng hệ thống là Collectd. Có thể hiểu như sau, ví dụ tại mỗi thời điểm thông số Ram, cpu, ổ cứng, băng thông mạng của bạn là khác nhau. Metric của các phần cứng là một cặp giá trị: time-value, các thông tin về metric sẽ được Collectd thu thập và ghi lại thành các bản tin đẩy lên Logstash server.

Cài đặt

Client - máy cần monitor

sudo apt-get update
sudo apt-get install collectd collectd-utils

Cấu hình collectd

vi /etc/collectd/collectd.conf

Hostname "kvm-hpdl36001"  #hostname máy client
FQDNLookup false
LoadPlugin syslog
<Plugin syslog>
        LogLevel info
</Plugin>
LoadPlugin aggregation
LoadPlugin cpu
LoadPlugin df
LoadPlugin disk
LoadPlugin interface
LoadPlugin memory
LoadPlugin network
LoadPlugin processes
LoadPlugin swap
LoadPlugin users
<Plugin "aggregation">   
  <Aggregation>
    Plugin "cpu"
    Type "cpu"

    GroupBy "Host"
    GroupBy "TypeInstance"

    CalculateSum true
    CalculateAverage true
  </Aggregation>
</Plugin>
<Plugin df>
        Device "/dev/mapper/u--del720--vg-root"  #chú ý dùng câu lệnh df -h
        MountPoint "/"
        FSType "ext4"
        ReportReserved "true"
</Plugin>
<Plugin interface>
        Interface "br1"
        Interface "br2"
        Interface "virbr1"
        #Interface "br1"
        IgnoreSelected false
</Plugin>
<Plugin network>
        Server "IP_ELK_SERVER" "25826"  #Server ELK server
</Plugin>
<Plugin rrdtool>
        DataDir "/var/lib/collectd/rrd"
</Plugin>
<Include "/etc/collectd/collectd.conf.d">
        Filter "*.conf"
</Include>

service collectd restart

Chú ý Collectd cung cấp rất nhiều plugin để monitor các thành phần hệ thống, tuy nhiên có một plugin quan tọng nhất là network, nhở mở và trỏ đúng ip về ELK server

ELK server

Tạo Input là collectd

vi /etc/logstash/conf.d/02-collectd.conf

  • Đối với ELK sử dụng kibana 3
input {
  collectd {}
}
  • Đối với ELK sử dụng kibana 4
input {
  udp {
    port => 25826         
    buffer_size => 1452   
    codec => collectd { } 
    type => "collectd"
  }
}

service logstash restart

Sử dụng trên kibana

####1. CPU

  • Hệ thống mình sử dụng, hiện đang monitor 3 máy chủ, ở đây mình xin phép ví dụ hiển thị thông tin về cpu của 1 máy chủ dell-720 có hostname là u-del720.
  • Plugin sử dụng để thu thập metric cho CPU có nhiều "nhân" là aggregation, sử dụng các câu truy vấn thích hợp trên dashboard và vẽ biểu đồ như sau:

Các câu truy vấn sử dụng sẽ là:

"aggregation" AND host: "u-del720"
"aggregation" AND host: "u-del720" AND type_instance : "idle"
"aggregation" AND host: "u-del720" AND type_instance : "user"
"aggregation" AND host: "u-del720" AND type_instance : "wait"

####2. DF - thông số ổ cứng

Như đã nói ở trên, plugin sử dụng để lấy được các thông tin này là df, chỉ có một chú ý khi cấu hình collectd mình đã lưu ý ở trên đó là phải sử dụng câu lệnh df -h để lấy đúng tên ổ cứng sử dụng

Các câu truy vấn mình sử dụng là

plugin: "df" AND plugin_instance: "root" AND host : "u-del720"
plugin: "df" AND plugin_instance: "root" AND host : "u-del720" AND type_instance: "free"
plugin: "df" AND plugin_instance: "root" AND host : "u-del720" AND type_instance: "used"
plugin: "df" AND plugin_instance: "root" AND host : "u-del720" AND type_instance: "reserved"

####3. Interface

  • Plugin sử dụng interface
  • Các câu truy vấn:
  • 2 thông tin quan tâm chính là rx - reciver, tx - transmitter

plugin: "interface" AND plugin_instance: "br1" AND host: "u-del720" (Đối với card mạng là br1) plugin: "interface" AND plugin_instance: "br2" AND host: "u-del720" (Đối với card mạng là br2)

####4. IOPS - Tốc độ đọc ghi ổ cứng

  • Plugin sử dụng: Disk
  • Các câu truy vấn:

plugin: "disk" AND collectd_type: "disk_ops" AND host: "u-del720"

####5. RAM

  • Plugin sử dụng: Memory
  • Các câu truy vấn:
plugin: "memory" AND type_instance: "free" AND host: "u-del720"
plugin: "memory" AND type_instance: "buffered" AND host: "u-del720"
plugin: "memory" AND type_instance: "cached" AND host: "u-del720"
plugin: "memory" AND type_instance: "used" AND host: "u-del720"