• Openstack-Mitaka Ceilometer 中使用 SNMP 监控真实物理机


    Ceilometer 是 Openstack 的监控管理计费模块,我所用的版本为 Mitaka 版本。在 Ceilometer 中,可以使用 SNMP 监控服务器的实时硬件资源信息。

    系统环境为 Centos 6.7。


    安装 SNMP

    sudo yum install -y net-snmp net-snmp-utils
    

    修改 SNMP 配置文件

    sudo vim /etc/snmp/snmpd.conf
    

    默认的 snmpd.conf 如下:

    #       sec.name  source          community
    com2sec notConfigUser  default       public
    
    #       groupName      securityModel securityName
    group   notConfigGroup v1           notConfigUser
    group   notConfigGroup v2c           notConfigUser
    
    #       name           incl/excl     subtree         mask(optional)
    view    systemview    included   .1.3.6.1.2.1.1
    view    systemview    included   .1.3.6.1.2.1.25.1.1
    
    #       group          context sec.model sec.level prefix read   write  notif
    access  notConfigGroup ""      any       noauth    exact  systemview none none
    
    syslocation Unknown (edit /etc/snmp/snmpd.conf)
    syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)
    
    dontLogTCPWrappersConnects yes
    

    我所做的修改是:

    1. 添加多一个名为 all 的 view。
    view    all    included   .1
    
    1. 把 access 里的 read 权限改为 all。
    access  notConfigGroup ""      any       noauth    exact  all none none
    

    当然修改方式并不唯一。


    启动 SNMP 服务

    sudo chkconfig snmpd on
    sudo service snmpd start
    

    修改 pipeline.yaml

    sudo vim /etc/ceilometer/pipeline.yaml
    

    在 pipeline.yaml 中的 meter_source 下添加 resources:

    ---
    sources:
        - name: meter_source
          interval: 600
          meters:
              - "*"
          resources:
              - snmp://127.0.0.1
          sinks:
              - meter_sink
              - name: cpu_source
          interval: 600
          meters:
              - "cpu"
          sinks:
              - cpu_sink
              - cpu_delta_sink
        ····
    

    修改方式并不唯一。


    运行

    在启动了 keystone 认证服务及 ceilometer 的 API 服务后,运行 ceilometer-polling 以启动对物理机的轮询监控。

    可能日志里会出现以下错误信息:

    2016-08-25 04:54:02.097 44342 INFO ceilometer.agent.manager [req-71ccaf39-39a4-491a-8147-b395b224ec15 admin - - - -] Polling pollster switch.port in the context of meter_source
    2016-08-25 04:54:02.097 44342 WARNING stevedore.named [req-71ccaf39-39a4-491a-8147-b395b224ec15 admin - - - -] Could not load snmp
    2016-08-25 04:54:02.098 44342 WARNING ceilometer.agent.manager [req-71ccaf39-39a4-491a-8147-b395b224ec15 admin - - - -] Continue after error from switch.port: No 'network.statistics.drivers' driver found, looking for 'snmp'
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager Traceback (most recent call last):
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/ceilometer/agent/manager.py", line 193, in poll_and_notify
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     for sample in samples:
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/ceilometer/network/statistics/__init__.py", line 77, in get_samples
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     ext = self.get_driver(parse_url.scheme)
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/ceilometer/network/statistics/__init__.py", line 70, in get_driver
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     scheme).driver()
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/stevedore/driver.py", line 46, in __init__
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     verify_requirements=verify_requirements,
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/stevedore/named.py", line 72, in __init__
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     self._init_plugins(extensions)
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager   File "/usr/local/lib/python2.7/site-packages/stevedore/driver.py", line 98, in _init_plugins
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager     (self.namespace, name))
    2016-08-25 04:54:02.098 44342 ERROR ceilometer.agent.manager NoMatches: No 'network.statistics.drivers' driver found, looking for 'snmp'
    

    可以看到:

    Continue after error from switch.port: No 'network.statistics.drivers' driver found, looking for 'snmp'
    

    里的类似 switch.port 的字样,这是因为没有部署好 SDN 的原因,不用管。


    结果

    查看数据库,可以通过 resource 、meter 表单看到轮询到的资源信息。

    meter 种类有以下:

    1.bmp-1991.7kB

  • 相关阅读:
    .NetCore 导出Execl
    10块钱可以喝几瓶?
    menuStrip鼠标滑过自动弹出
    静态变量
    DataTable.SELECT日期类型筛选处理
    Java中accept()阻塞是如何实现的
    L1正则在0处不可导怎么办?
    L1和L2正则化原理推导.md
    5局3胜和3局2胜哪个更容易赢.md
    Java集合(一): 集合框架Collection和Map
  • 原文地址:https://www.cnblogs.com/linyihan/p/5804745.html
Copyright © 2020-2023  润新知