Anuket Project

Intel_rdt plugin tests:

Test Environment details:

  • Bare Metal, U16.04
  • Kernel version: 3.13.0-96-generic

Repo/branch used:

  • collectd/master

Tests precondition:

  • Installed PQoS/Intel(R) RDT library (libpqos).
  • Installed collectd and enabled csv plugin.
  • Enable intel_rdt plugin with default values

 

#

Test summary

Steps
Actual result
Expected result
Status - PASS/FAIL
Automated status
1.Verify user can setup simple configuration for intel_rdt plugin.

1. Start collecd daemon : /install_folder/sbin/collectd
2. Navigate to: /var/lib/csv/hostname_folder/
3. Check that separate files for all available CPU monitoring statistic are present in folder : ls /intel_rdt-0

Folder "intel_rdt-0" was created.

Collecd starts, files corresponding to intel_rdt were created

Folder "intel_rdt-0" should be created.

Collecd starts, files corresponding to intel_rdt should be created

 PASSYES
2.Check user can add different group combinations for intel_rdt plugin.

1. Change configuration for intel_rdt plugin into collectd.conf file: set up Cores TestData

2. Start collecd deamon : /install_folder/sbin/collectd

3. Navigate to: var/lib/csv/hostname_folder/

4. 4. Check that separate files for all available  CPU monitoring statistic are present in appropriate folders : ls /intel_rdt-Core_Group

TestData = [ "1"; "0-1"; "5,6,7,10-12"; "1","2","3"; "0-2" "3,4,6" "8-10,12"; "" ]

Folders in format "intel_rdt-Core_Group" were created.

Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created for all TestData

Folders in format "intel_rdt-Core_Group" were created.

Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created for all TestData

PASSYES
3.Verify if user setup intel_rdt plugin using unsupported values error message appears and collectd start

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Set up Cores fileld in intel_rdt plugin section to TestData

3. Start collecd deamon : /install_folder/sbin/collectd

4. Verify that collectd is started with appropriate intel_rdt warning.

TestData = [ "*df"; "1, *%"; "0.1"]

Error raises for all TestData and collectd startError raises for all TestData and collectd startPASSYES
4.Check new data are collected by intel_rdt with a defined interval

1. Start collecd deamon : /install_folder/sbin/collectd

2. Navigate to /lib/csv/intel_rdt-0 folder.

3. Open files with collected info 

4. Verify that collected values  were renewed and written every 10 second (default value).

Every 10 second new data writes into fileEvery 10 second new data writes into filePASSYES
5.Verify user can change interval for writing data into file

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt: 
<LoadPlugin intel_rdt>
Interval 1
</LoadPlugin>

3. Start collecd deamon : /install_folder/sbin/collectd

4. Navigate to /lib/csv/intel_rdt-0 folder.

5. Open files with collected info

6. Verify that collected values  were renewed and written every second.

Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created

Every second new data writes into file

Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created

Every second new data writes into file

PASS

YES

 

 

 

 

6Check if LoadPlugin section in collectd.conf is commented out, warning message appears 

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt: 
Comment out #LoadPlugin intel_rdt

3. Start collecd deamon : /install_folder/sbin/collectd

 

Warning message appears: "Loadplugin Found a configuration for the `intel_rdtmon ' plugin, but the plugin isn't loaded or didn't register a configuration callback."

Collectd have started.

 

Warning message appears: "Loadplugin Found a configuration for the `intel_rdtmon ' plugin, but the plugin isn't loaded or didn't register a configuration callback."

Collectd have started.

 PASSYES
7Verify if Cores is empty  in collectd.conf , error appears

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt : 
leave Cores section blank

3. Start collecd deamon : /install_folder/sbin/collectd

Error raises "Reading the config file failed!"

Collectd was not started

Error raises "Reading the config file failed!"

Collectd was not started

 PASSYES
8Check if Cores keyword is changed,  warning  message appears 

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt : 
change Cores to "Core"

3. Start collecd deamon : /install_folder/sbin/collectd

Message appears : "intel_rdt: Unknown configuration parameter "Core"".
Collectd have started.

Message appears : "intel_rdt: Unknown configuration parameter "Core"".
Collectd have started.
PASSYES
9Verify if in intel_rdt section is present extra keyword with value, collectd and intel_rdt have started

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt : 
add extra key - value: Interval 1

3. Start collecd deamon : /install_folder/sbin/collectd

Intel_rdt: Unknown configuration parameter "Interval".

Intel_rdt and collectd have started

Intel_rdt: Unknown configuration parameter "Interval".
Intel_rdt and collectd have started
PASSYES
10Check if Core is used by another process (pqos), error message appears  

 1. Start pqos -m: 0 (pqos will monitored Core 0 for same parameters as intel_rdt).

2. Start collecd deamon : /install_folder/sbin/collectd

Error starting monitoring group 0 (pqos status=3)
Collectd have started.

Error starting monitoring group 0 (pqos status=3)
Collectd have started.
PASSYES

SNMP Intel_rdt plugin tests:

Test Environment details:

  • Bare Metal, U16.04 

Tests precondition:

  • Installed PQoS/Intel(R) RDT library (libpqos).
  • Installed collectd and enabled csv plugin.
  • Enabled snmp oids for intel_rdt plugin.

Open questions:

  • Our testing platform supports only rdtLlc, rdtIpc parameters testing. So, due to platform limitation only rdtLlc, rdtIpc have been verified.
    Question is: can we claim feature as tested in case if half of parameters are working as expected?

    If not, we will re-executed these tests with rdtMbmRemote, rdtMbmLocal verification once we received new platform.

#

Test summary

Steps
Actual result
Expected result
Status - PASS/FAIL
1.Compare rdt information read by SNMP and write plugin for one core group
  1. Start collectd (default group "0-2").
  2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
  3. Verify retrieved values are equal to values written by csv plugin for one group.

RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for one core group.

RdtLlc and RdtIpc values of retrieved by snmpwalk are equal to values written by csv plugin for one core group.

 PASS
2.Compare rdt information read by SNMP and write plugin for multiple core groups
  1. Enable monitoring all core groups in collectd and start collectd service. e.g.:Cores "0", "1", "2", "4-5".
  2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
  3. Verify retrieved values are equal to values written by csv plugin for multiple groups.

RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for multiple core groups.

RdtLlc and RdtIpc values of retrieved by snmpwalk are equal to values written by csv plugin for multiple core groups.

 PASS
3.Compare rdt information read by SNMP and write plugin for all core groups
  1. Enable monitoring all core groups in collectd and start collectd service. e.g.: Cores "0-87".
  2. Make sure that the following rdt information can be retrieved by SNMP for all core groups.
    rdtGroupDescr, rdtLlc, rdtIpc.
  3. Verify retrieved values are equal to values written by csv plugin for all core groups.

RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for all core groups.

RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for all core groups.

 PASS
4.Verify that rdtLlc values are not reset to zero during continuous snmpwalk for 2 time intervals
  1. Enable monitoring all core groups, decrease time interval in collectd to 4 seconds. Start collectd service.
  2. Verify rdtLlc information can be retrieved by SNMP for all core groups for: rdtGroupDescr, rdtLlc, rdtIpc, rdtMbmRemote, rdtMbmLocal).
  3. Verify retrieved values are equal to values written by csv plugin (rdtGroupDescr, rdtLlc, rdtIpc).

2. Values are retrieved for rdtGroupDescr, rdtLlc, rdtIpc, rdtMbmRemote, rdtMbmLocal by snmpwalk.

3. RdtLlc values retrieved by snmpwalk are not reset to zero and are equal to values written by csv plugin for all core groups for rdtGroupDescr, rdtLlc, rdtIpc.

2. Values are retrieved for rdtGroupDescr, rdtLlc, rdtIpc, rdtMbmRemote, rdtMbmLocal by snmpwalk.

3. RdtLlc values retrieved by snmpwalk are not reset to zero and are equal to values written by csv plugin for all core groups for rdtGroupDescr, rdtLlc, rdtIpc.

PASS

 

5. Verify that float rdtIpc values are not rounded in SNMP
  1. Enable monitoring two core groups in collectd and start collectd service.
  2. Verify that rdtIpc information can be retrieved by SNMP for both core groups.
  3. Verify retrieved values are not rounded to zero.
RdtIpc values retrieved by snmpwalk are not rounded to zero and are equal to values written by csv plugin.

RdtIpc values retrieved by snmpwalk are not rounded to zero and are equal to values written by csv plugin.

 PASS

 

  • No labels