intelsdi-x / snap-plugin-collector-ethtool

Collects ethtool interface stats & registry dump
http://snap-telemetry.io/
Apache License 2.0
0 stars 13 forks source link

ethtool plugin inside container does not work. #17

Closed ampatel1 closed 7 years ago

ampatel1 commented 7 years ago

Hi ethtool plugin developer community,

I have SUT with Intel Broadwell CPU with CentOS 7 as base OS. I am also running CentOS:7 container form docker hub with docker run -it command.

on base OS ethtool plugin work just fine. however inside CentOS 7 container ethtool plugin does not work.

I have invoked container in privileged mode and I am also using "--net=host" option to make network ports and settings visible from base OS to inside container. I have installed "ethtool" package inside centOS 7 container.

still problem persist; inside container ethtool plugin does not work.

I can be reached over ankit.m.patel@intel.com for more details

thanks Ankit

nanliu commented 7 years ago

@ankitpatelintel so looks like --net=host and mounting docker/ns seems to provide sufficient info (see https://github.com/docker/docker/issues/14666):

$ docker run --net=host -v /var/run/docker/netns:/var/run/netns intelsdi/snap:xenial

omitting installation of ethtool package:

$ docker exec -it 3d1 /bin/bash
root@ubuntu1604:/# ethtool -i enp0s5
driver: e1000
version: 7.3.21-k8-NAPI
firmware-version:
expansion-rom-version:
bus-info: 0000:00:05.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: no
root@ubuntu1604:/# ethtool -s enp0s5
root@ubuntu1604:/# ethtool -S enp0s5
NIC statistics:
     rx_packets: 143301
     tx_packets: 66440
     rx_bytes: 195388594
     tx_bytes: 4216661
     rx_broadcast: 42
     tx_broadcast: 0
     rx_multicast: 8
     tx_multicast: 0
     rx_errors: 0
     tx_errors: 0
     tx_dropped: 0
     multicast: 8
     collisions: 0
     rx_length_errors: 0
     rx_over_errors: 0
     rx_crc_errors: 0
     rx_frame_errors: 0
     rx_no_buffer_count: 0
     rx_missed_errors: 0
     tx_aborted_errors: 0
     tx_carrier_errors: 0
     tx_fifo_errors: 0
     tx_heartbeat_errors: 0
     tx_window_errors: 0
     tx_abort_late_coll: 0
     tx_deferred_ok: 0
     tx_single_coll_ok: 0
     tx_multi_coll_ok: 0
     tx_timeout_count: 0
     tx_restart_queue: 0
     rx_long_length_errors: 0
     rx_short_length_errors: 0
     rx_align_errors: 0
     tx_tcp_seg_good: 0
     tx_tcp_seg_failed: 0
     rx_flow_control_xon: 0
     rx_flow_control_xoff: 0
     tx_flow_control_xon: 0
     tx_flow_control_xoff: 0
     rx_long_byte_count: 195388594
     rx_csum_offload_good: 143301
     rx_csum_offload_errors: 0
     alloc_rx_buff_failed: 0
     tx_smbus: 0
     rx_smbus: 0
     dropped_smbus: 0

loading the plugin seems to get the correct metrics:

root@ubuntu1604:/# snapctl plugin load ethtool
Plugin loaded
Name: ethtool
Version: 5
Type: collector
Signed: false
Loaded Time: Tue, 13 Sep 2016 00:56:21 UTC

root@ubuntu1604:/# snapctl metrics list
No help topic for 'metrics'
root@ubuntu1604:/# snapctl metric list
NAMESPACE                        VERSIONS
/intel/net/e1000/enp0s5/nic/alloc_rx_buff_failed     5
/intel/net/e1000/enp0s5/nic/collisions           5
/intel/net/e1000/enp0s5/nic/dropped_smbus        5
/intel/net/e1000/enp0s5/nic/multicast            5
/intel/net/e1000/enp0s5/nic/rx_align_errors          5
/intel/net/e1000/enp0s5/nic/rx_broadcast         5
/intel/net/e1000/enp0s5/nic/rx_bytes             5
/intel/net/e1000/enp0s5/nic/rx_crc_errors        5
/intel/net/e1000/enp0s5/nic/rx_csum_offload_errors   5
/intel/net/e1000/enp0s5/nic/rx_csum_offload_good     5
/intel/net/e1000/enp0s5/nic/rx_errors            5
/intel/net/e1000/enp0s5/nic/rx_flow_control_xoff     5
/intel/net/e1000/enp0s5/nic/rx_flow_control_xon      5
/intel/net/e1000/enp0s5/nic/rx_frame_errors          5
/intel/net/e1000/enp0s5/nic/rx_length_errors         5
/intel/net/e1000/enp0s5/nic/rx_long_byte_count       5
/intel/net/e1000/enp0s5/nic/rx_long_length_errors    5
/intel/net/e1000/enp0s5/nic/rx_missed_errors         5
/intel/net/e1000/enp0s5/nic/rx_multicast         5
/intel/net/e1000/enp0s5/nic/rx_no_buffer_count       5
/intel/net/e1000/enp0s5/nic/rx_over_errors       5
/intel/net/e1000/enp0s5/nic/rx_packets           5
/intel/net/e1000/enp0s5/nic/rx_short_length_errors   5
/intel/net/e1000/enp0s5/nic/rx_smbus             5
/intel/net/e1000/enp0s5/nic/tx_abort_late_coll       5
/intel/net/e1000/enp0s5/nic/tx_aborted_errors        5
/intel/net/e1000/enp0s5/nic/tx_broadcast         5
/intel/net/e1000/enp0s5/nic/tx_bytes             5
/intel/net/e1000/enp0s5/nic/tx_carrier_errors        5
/intel/net/e1000/enp0s5/nic/tx_deferred_ok       5
/intel/net/e1000/enp0s5/nic/tx_dropped           5
/intel/net/e1000/enp0s5/nic/tx_errors            5
/intel/net/e1000/enp0s5/nic/tx_fifo_errors       5
/intel/net/e1000/enp0s5/nic/tx_flow_control_xoff     5
/intel/net/e1000/enp0s5/nic/tx_flow_control_xon      5
/intel/net/e1000/enp0s5/nic/tx_heartbeat_errors      5
/intel/net/e1000/enp0s5/nic/tx_multi_coll_ok         5
/intel/net/e1000/enp0s5/nic/tx_multicast         5
/intel/net/e1000/enp0s5/nic/tx_packets           5
/intel/net/e1000/enp0s5/nic/tx_restart_queue         5
/intel/net/e1000/enp0s5/nic/tx_single_coll_ok        5
/intel/net/e1000/enp0s5/nic/tx_smbus             5
/intel/net/e1000/enp0s5/nic/tx_tcp_seg_failed        5
/intel/net/e1000/enp0s5/nic/tx_tcp_seg_good          5
/intel/net/e1000/enp0s5/nic/tx_timeout_count         5
/intel/net/e1000/enp0s5/nic/tx_window_errors         5

Send us an update if you are still running into an issue.

IRCody commented 7 years ago

@ankitpatelintel: I'm going to close this issue but feel free to respond here if you have more questions and we can re-open it.