• Collectd 和 InfluxDB 的部署和使用


    更新软件包

    $ sudo apt-get update
    $ sudo apt-get upgrade
    $ sudo reboot

    安装influxdb

    hanwei@ubuntu-lab:~$ wget https://dl.influxdata.com/influxdb/releases/influxdb_1.2.4_amd64.deb
    --2017-06-14 16:37:09--  https://dl.influxdata.com/influxdb/releases/influxdb_1.2.4_amd64.deb
    Resolving dl.influxdata.com (dl.influxdata.com)... 52.84.167.167, 52.84.167.39, 52.84.167.178, ...
    Connecting to dl.influxdata.com (dl.influxdata.com)|52.84.167.167|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 17305080 (17M) [application/x-debian-package]
    Saving to: ‘influxdb_1.2.4_amd64.deb’
    
    influxdb_1.2.4_amd64.deb         100%[========================================================>]  16.50M   875KB/s    in 19s     
    
    2017-06-14 16:37:29 (874 KB/s) - ‘influxdb_1.2.4_amd64.deb’ saved [17305080/17305080]
    
    hanwei@ubuntu-lab:~$ sudo dpkg -i influxdb_1.2.4_amd64.deb
    [sudo] password for hanwei: 
    Selecting previously unselected package influxdb.
    (Reading database ... 63342 files and directories currently installed.)
    Preparing to unpack influxdb_1.2.4_amd64.deb ...
    Unpacking influxdb (1.2.4-1) ...
    Setting up influxdb (1.2.4-1) ...
    Created symlink from /etc/systemd/system/influxd.service to /lib/systemd/system/influxdb.service.
    Created symlink from /etc/systemd/system/multi-user.target.wants/influxdb.service to /lib/systemd/system/influxdb.service.
    Processing triggers for man-db (2.7.5-1) ...
    hanwei@ubuntu-lab:~$ service influxdb start
    ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
    Authentication is required to start 'influxdb.service'.
    Authenticating as: hanwei,,, (hanwei)
    Password: 
    ==== AUTHENTICATION COMPLETE ===
    hanwei@ubuntu-lab:~$ service influxdb status
    ● influxdb.service - InfluxDB is an open-source, distributed, time series database
       Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enabled)
       Active: active (running) since Wed 2017-06-14 16:50:05 CST; 4s ago
         Docs: https://docs.influxdata.com/influxdb/
     Main PID: 2156 (influxd)
        Tasks: 7
       Memory: 4.9M
          CPU: 49ms
       CGroup: /system.slice/influxdb.service
               └─2156 /usr/bin/influxd -config /etc/influxdb/influxdb.conf 
    

    修改influxdb配置文件

    hanwei@ubuntu-lab:~$ vim /etc/influxdb/influxdb.conf
    [admin]
      # Determines whether the admin service is enabled.
      # enabled = false
    
      # The default bind address used by the admin service.
      # bind-address = ":8083"
    
      # Whether the admin service should use HTTPS.
      # https-enabled = false
    
    修改成
    enabled = true
    bind-address = ":8083"
    

    在infuxdb创建数据库Collectd

    两种方式CLI或者web ui

    http://192.168.206.144:8086/query?q=CREATE+DATABASE+%22collectd%22&db=collectd

    或者用web ui
    influxdb

    安装 Collectd

    $ sudo apt-get install collectd
    

    配置 Collectd 为客户端,收集到数据后直接发给 InfluxDB

    $ sudo vi /etc/collectd/collectd.conf
    ...
    LoadPlugin network
    ...
    <Plugin network>
            Server "192.168.2.183" "25826"
    </Plugin>
    ...
    

    重启 Collectd:

    $ sudo /etc/init.d/collectd restart
    

    配置 InfluxDB 自带的 Collectd 插件

    InfluxDB 自带的 Collectd 插件默认是关闭的,需要手动配置打开 enabled = true,并填上 database = “collectd” 这一行,这里的 “collectd” 就是我们上面创建的那个数据库,更改配置后记得重启 InfluxDB

    $ sudo vim /etc/influxdb/shared/influxdb.conf
    ...
      # Configure the collectd api
      [input_plugins.collectd]
      enabled = true
      # address = "0.0.0.0" # If not set, is actually set to bind-address.
      # port = 25826
      database = "collectd"
      # types.db can be found in a collectd installation or on github:
      # https://github.com/collectd/collectd/blob/master/src/types.db
      # typesdb = "/usr/share/collectd/types.db" # The path to the collectd types.db file
    ...
    hanwei@ubuntu-lab:~$ sudo service influxdb restart
    

    检查一下服务器上打开的端口就会发现 influxdb 插件启动了一个 25826 端口,如果发现 InfluxDB 数据库里没有(收集到)数据,务必检查这个 25826 端口是否正常启动了

    hanwei@ubuntu-lab:~$ sudo netstat -tupln
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
    tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1649/dnsmasq    
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1308/sshd       
    tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      1437/postgres   
    tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      1740/0          
    tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      10471/1         
    tcp6       0      0 :::8083                 :::*                    LISTEN      10490/influxd   
    tcp6       0      0 :::8086                 :::*                    LISTEN      10490/influxd   
    tcp6       0      0 :::22                   :::*                    LISTEN      1308/sshd       
    tcp6       0      0 :::8088                 :::*                    LISTEN      10490/influxd   
    tcp6       0      0 ::1:5432                :::*                    LISTEN      1437/postgres   
    tcp6       0      0 ::1:6010                :::*                    LISTEN      1740/0          
    tcp6       0      0 ::1:6011                :::*                    LISTEN      10471/1         
    udp        0      0 0.0.0.0:53466           0.0.0.0:*                           10239/collectd  
    udp        0      0 192.168.122.1:53        0.0.0.0:*                           1649/dnsmasq    
    udp        0      0 0.0.0.0:67              0.0.0.0:*                           1649/dnsmasq    
    udp        0      0 0.0.0.0:68              0.0.0.0:*                           1250/dhclient   
    udp6       0      0 :::25826                :::*                                10490/influxd
    

    检查InfluxDB是否有Collectd 传来的数据

    InfluxDB 已经准备好接受和处理 Collectd 传来的数据了。用命令行或者 Web 管理界面验证一下数据库里是否有数据

    hanwei@ubuntu-lab:~$ influx
    Connected to http://localhost:8086 version 1.2.4
    InfluxDB shell version: 1.2.4
    > show databases;
    name: databases
    name
    ----
    _internal
    mydb
    > use collectd
    Using database collectd
    > show measurements
    name: measurements
    name
    ----
    cpu_value
    df_value
    disk_io_time
    disk_read
    disk_value
    disk_weighted_io_time
    disk_write
    entropy_value
    interface_rx
    interface_tx
    irq_value
    load_longterm
    load_midterm
    load_shortterm
    memory_value
    processes_value
    swap_value
    users_value
    > SELECT * from cpu_value
    ...
    7435180464451600 ubuntu-lab.localdomain 0        cpu  nice          722
    1497435180464452775 ubuntu-lab.localdomain 0        cpu  interrupt     0
    1497435180464454083 ubuntu-lab.localdomain 0        cpu  softirq       339
    1497435180464454592 ubuntu-lab.localdomain 0        cpu  steal         0
    1497435180464455103 ubuntu-lab.localdomain 0        cpu  idle          592750
    1497435190462593838 ubuntu-lab.localdomain 0        cpu  user          4281
    1497435190462598610 ubuntu-lab.localdomain 0        cpu  system        5599
    1497435190462600580 ubuntu-lab.localdomain 0        cpu  wait          7799
    1497435190462602296 ubuntu-lab.localdomain 0        cpu  nice          722
    1497435190462603649 ubuntu-lab.localdomain 0        cpu  interrupt     0
    1497435190462604905 ubuntu-lab.localdomain 0        cpu  softirq       339
    1497435190462605510 ubuntu-lab.localdomain 0        cpu  steal         0
    1497435190462606004 ubuntu-lab.localdomain 0        cpu  idle          593745
    1497435200463552177 ubuntu-lab.localdomain 0        cpu  user          4285
    1497435200463557277 ubuntu-lab.localdomain 0        cpu  system        5608
    1497435200463558626 ubuntu-lab.localdomain 0        cpu  wait          7799
    1497435200463560045 ubuntu-lab.localdomain 0        cpu  nice          722
    1497435200463561496 ubuntu-lab.localdomain 0        cpu  interrupt     0
    1497435200463562866 ubuntu-lab.localdomain 0        cpu  softirq       339
    ...
    

    或者web ui
    influxdb-load

    转自:https://www.backendcloud.cn/2017/06/15/collectd-influxdb/

  • 相关阅读:
    ZMQ和MessagePack的简单使用(转)
    easyui datagrid列中使用tooltip
    在bat中执行sql,并配置windows计划任务,并隐藏命令窗口 (转)
    前端基于jquery的UI框架
    菜鸟学步之 爆破AspriseOCR 4.0
    C# 图片识别(支持21种语言) (转)
    IIS Web服务扩展中没有Asp.net 2.0
    遭遇sql server 2005 启动包未能正确加载需要重新安装错误,重装.NET FRAMEWORK经历分析
    利用Aspose.Cells完成easyUI中DataGrid数据的Excel导出功能
    JS Replace() 高级用法(转)
  • 原文地址:https://www.cnblogs.com/kaola8023/p/8626255.html
Copyright © 2020-2023  润新知