Barometer collects system metrics and events to aid in the monitoring of the NFVI and provide means for these metrics and events to be relayed to higher level fault management systems for enforcement and corrective actions. In addition, this information could be fed to analytics systems to enable failure prediction, and can also be used for intelligent workload placement.
Barometer uses collectd to collect the system metrics, and works closely with the collectd community. Increasing the automated test coverage benifits collectd as well as Barometer. The Barometer team has contributed several plugins to collectd, and in some cases, specialised hardware is needed to test that the plugins are functional.
Major work items for the Jerma release are improving the test infrastructure for collectd (particularly for Barometer-contributed plugins). This project will involve automating existing tests for individual plugins. The test automation being set up will be one instance of a set of collectd community CIs, which will report test results somewhere upstream (details are TBD, and the selected candidate may have the opportunity to participate in this discussion and set up the testing infrastructure).
Some of the work items include:
- Integrating with CI
- Writing test cases for Barometer and collectd (converting manual test cases to the chosen automation tool)
- Ensuring functest and xtesting frameworks leverage barometer
- Working with CNTT to create required test cases
- Documentation, etc.
The prioritization of the activities will be discussed with the mentee based on his/her skillset and expectations.
Each new plugin proposed has a test plan submitted, these are currently not automated, part of the internship project would be automating these tests.
In addition to plugin-level tests, there are also higher level integration tests that will be developed in conjunction with the Common NFV testing taskforce (CNTT).
- Have a comprehensive understanding of Barometer project
- Have an understanding of exposing and integrating telemetry across cloud sub-systems
- Familiar with the development process and CICD of Barometer/collectd
- Take part in the development of test infrastructure for Barometer and collectd
- Take an active role as a contributor in Barometer
- Accomplish assigned development and test tasks.
- Related document and report.
Relation to LF Networking
- Bachelor’s and/or Master’s degree in Computer Science, software Engineering or related technical discipline
- Hands on experience in one or more of C/Python/C++
- Familiar with C and Python
- Basic understanding of one of the code versioning tools like Git.
- Strong written and verbal communication and interpersonal skills in English.
The development activities will be part of the testing infrastructure for collectd and Barometer and can help testing efforts as part of the collectd release process
Preferred Hours and Length of Internship
Full time or part time
Mentor(s) Names and Contact Info
Emma Foley email@example.com
Krzysztof Kepka firstname.lastname@example.org
Jabir Kanhira Kadavathu email@example.com
Mentee(s) Names and Contact Info
Vishal Sharma firstname.lastname@example.org