perf SONAR A Look Ahead Matt Zekauskas Internet

  • Slides: 23
Download presentation
perf. SONAR: A Look Ahead Matt Zekauskas, Internet 2 http: //www. perfsonar. net June

perf. SONAR: A Look Ahead Matt Zekauskas, Internet 2 http: //www. perfsonar. net June 14, 2018

Outline • Important dates • Current: perf. SONAR 4. 0. 2 (November 2017) •

Outline • Important dates • Current: perf. SONAR 4. 0. 2 (November 2017) • Next: perf. SONAR 4. 1 (Summer 2018) • Future

Important Dates • October 17, 2017 • perf. SONAR 3. 5 end-of-life • web

Important Dates • October 17, 2017 • perf. SONAR 3. 5 end-of-life • web 100 end-of-life • November 2017 • perf. SONAR 4. 0. 2 release • Summer 2018 * • perf. SONAR 4. 1 released. Cent. OS 6 packages will not be released for perf. SONAR 4. 1 • Early 2019 * (6 months after 4. 1 release) • perf. SONAR 4. 0 end of life • Cent. OS 6 versions of perf. SONAR no longer supported • bwctl no longer supported * All dates subject to change

New in 4. 0. 2 Released in November 2017 (You should be running it!)

New in 4. 0. 2 Released in November 2017 (You should be running it!)

p. Scheduler: Streaming Archiving • Increased CPU on high-volume systems • Caused by repeatedly

p. Scheduler: Streaming Archiving • Increased CPU on high-volume systems • Caused by repeatedly starting archiver processes • Archiver plugins now operate in streaming mode: • Plugin programs started once • Fed multiple results • Terminated as p. Scheduler finds them idle • Significant system load reduction in the face of high result volume.

p. Scheduler: SNMP Plugins from the University of Michigan • UMich wanted ability to:

p. Scheduler: SNMP Plugins from the University of Michigan • UMich wanted ability to: • Collect SNMP data via p. Scheduler, especially during throughput tests • Send results to its SPOG system, which prefers traps • Tests • snmp-get Fetch SNMP values • snmp-getbgm Fetch and monitor for deltas • snmp-set SNMP values • Tools — net-snmp, net-snmp-set, pysnmp • Archiver • snmptrap Generate traps from result data.

p. Scheduler: jq Support • Language for in-line manipulation of JSON • Many built-in

p. Scheduler: jq Support • Language for in-line manipulation of JSON • Many built-in functions and constructs for transformation, decision making and output. • Gives us a way to add end-user programmability in configuration and task specification instead of installed code. • Info and docs: https: //stedolan. github. io/jq

p. Scheduler: jq Support (cont. ) • Archiving — Transform result JSON on the

p. Scheduler: jq Support (cont. ) • Archiving — Transform result JSON on the way to any archiver for systems that require custom input. • Limit System • Make pass/fail decisions on proposed tasks • Transform downloaded JSON CIDR lists to plain-text format without depending on another system. • Library — Collection of standard functions useful with p. Scheduler.

Contexts • Contexts allows modification of execution context before tool is run. • Gives

Contexts • Contexts allows modification of execution context before tool is run. • Gives ability to do additional setup prior to starting a task • Currently one plugin: Linux Network Namespace. • Others can be added by writing plugins.

p. Scheduler: Other Changes • Tools for troubleshooting limit configuration files • Better searching

p. Scheduler: Other Changes • Tools for troubleshooting limit configuration files • Better searching in the REST API • Improves performance of Meshconfig, future applications • The usual raft of minor enhancements and fixes

New in 4. 1 To be released in a perf. SONAR repository near you

New in 4. 1 To be released in a perf. SONAR repository near you soon…

TWAMP support • Two Way Active Measurement Protocol • Similar to OWAMP • •

TWAMP support • Two Way Active Measurement Protocol • Similar to OWAMP • • • Does a combined one-way and RTT measurement at the same time RTT measurements more robust to clock variation twampd running to accept measurement requests twping to do a measurement from CLI Streaming measurements with something similar to powstream (future) • Routers/switches can act as servers or reflectors • Many more targets for measurements

TWAMP support (continued) • Will be integrated with pscheduler • pscheduler-tool-twping • pscheduler-tool-twpstream (or

TWAMP support (continued) • Will be integrated with pscheduler • pscheduler-tool-twping • pscheduler-tool-twpstream (or pscheduler-tool-twostream) (future) • Will produce 2 metrics: latency and RTT • Will be shown in the regular perf. SONAR graphs as the other tools • Work possible thanks to some external contributors

p. Scheduler in 4. 1 • Task rewriting • Make on-the-fly changes to tasks

p. Scheduler in 4. 1 • Task rewriting • Make on-the-fly changes to tasks at ingest to do things the limit system can’t. • Throughput tests to non-p. Scheduler systems • For example, ability to test to a system only running iperf • Improved troubleshooter [MTU, IPv 4 and IPv 6 control] • More new plugins • Network traffic capture • Other application monitoring (HTTP response, etc. ) • Retirement of BWCTL

p. SConfig: Re-imagining Mesh. Config • Major feature for perf. SONAR 4. 1 will

p. SConfig: Re-imagining Mesh. Config • Major feature for perf. SONAR 4. 1 will be refactoring of Mesh. Config into p. SConfig • The introduction of Mesh. Config helped shape a lot of today’s deployments • perf. SONAR has changed a lot the past few years and Mesh. Config hasn’t kept up in every area. • Just as p. Scheduler was transformative at the test scheduling layer in 4. 0, we hope p. SConfig will be equally as transformative for the test configuration layer in 4. 1

Mesh Config Admin GUI (MCA) • GUI for mesh-config / p. SConfig • Generating

Mesh Config Admin GUI (MCA) • GUI for mesh-config / p. SConfig • Generating Ma. DDash config too • Full support of all p. Scheduler elements • Used at WLCG

Docker Support • Getting perf. SONAR running in containers is a popular topic on

Docker Support • Getting perf. SONAR running in containers is a popular topic on user list • Currently have beta Docker images of tools and testpoint bundles • https: //hub. docker. com/u/perfsonar/dashboard/ • Evaluating best way to bundle these since perf. SONAR is many services and Docker in general wants you to run one service per container • Starting with Docker due to popularity, may look at other container technologies in future (and others are more than welcome to do it now)

Getting Ready for 4. 1 • Dropping support for the following OSes • Cent.

Getting Ready for 4. 1 • Dropping support for the following OSes • Cent. OS 6 • Debian 7 • You need to upgrade if you are on one of the OSes and you want 4. 1 • Keep in mind 4. 0 support dropped 6 months after 4. 1 release • BWCTL support will also be going away, thus backward with 3. X compatibility goes away

Plans for near future… What we are starting to work on and more.

Plans for near future… What we are starting to work on and more.

p. Scheduler Plans • Task priorities • Resource management • Port pools to simplify

p. Scheduler Plans • Task priorities • Resource management • Port pools to simplify on- and off-host firewall configurations • Remotely-supervised runs with local archiving • Solves reachability problems for some use cases • Run control • Stop runs midstream, preempt pending runs • Useful for getting your CLI tasks to run sooner • p. Scheduler SDK for task or test plugins

Other area of work • Esmond backend • Replacing Cassandra with Postgre. SQL •

Other area of work • Esmond backend • Replacing Cassandra with Postgre. SQL • Lookup Service improvements • LS Cache • Reliability • More reporting • Ansible roles for deployment • ps. UI replacement and other visualisation / dashboards solutions are being investigated

Collaboration possibilities • Feedback about functions, bug reports, feature requests • Develop perf. SONAR/pscheduler

Collaboration possibilities • Feedback about functions, bug reports, feature requests • Develop perf. SONAR/pscheduler plugins: tools, archivers • Contribute to the global perf. SONAR development effort • GN 4 -3 project contributions

Conclusion • You should all be running 4. 0. 2 • 4. 1 coming

Conclusion • You should all be running 4. 0. 2 • 4. 1 coming very soon, plan for it! • Upgrade to Cent. OS 7, Debian 9 or Ubuntu 16 if you have not already since support will go away • Cent. OS 7 upgrade need re-install • We have plans on what’s next • Not yet sure how this will be released (4. 2, 5. 0, …) • Would love feedback on planned feature set