Distributed System Analysis Made Easy with Pbench

Presenter's Name

Riya

Agenda

  • What is Pbench?

  • Why Pbench?

  • Component of pbench and how they interact

  • Available scripts and tools

  • Dashboard

  • Installation

  • Demo

  • Where we can get pbench?

  • How to contribute?

What is Pbench

  • A benchmark & performance analysis framework

  • Components

    • a collection agent

    • a server

    • a web UI dashboard

  • It is a work-in-progress project

History of Pbench

  • Red Hat products are mostly on distributed systems these days

  • Our team members were running the same or similar benchmarks with their own wrappers for gathering data

  • We found it difficult to compare data sets, or found incomplete data depending on who ran what

  • We worked to come up with a framework that captured the best practices across the team

  • Created an agent, server, and dashboard

  • 242,000+ pbench result tar balls collected since 2015, roughly 12.2+ TB of data

Why Pbench?

Inconsistency in data collected, and/or incomplete data collected, surrounding a benchmark.

 

Goals:

  • Make it easier to collect the required configuration and tool data

  • Help ensure consistency of data is collected

  • Provide a central location to archive, visualize, and analyze collected data

  • Reuse visualizations of data to provide a more consistent view

Facilitate easier comparisons between runs

Components of Pbench

WorkFlow

Benchmark scripts

  • pbench-user-benchmark

  • pbench-fio

  • pbench-uperf

  • etc

Script and tools

Tools

  • sar

  • iostat

  • mpstat

  • pidstat

  • vmstat

  • perf

  • etc

Dashboard

Kibana Instance

Installation

3 easy steps for installation :

3. Run Ansible Script

2. Setup inventory file

1. Clone pbench repo

Compatibility with Linux Distributions

Compatible Systems

RHEL

CentOS

Fedora

Upcoming Features

Server

  • Conversion to all Python3 Scripts.
  • Addition of new features (deletion of unpacked tarballs if time exceeds 30 days).

  • Introduction of User notion.

Agent

  • Conversion to all Python3 Scripts (removing remaining complicated bash scripts).

  • Having a unified platform for running tools.

Dashboard

  • Conversion to Patternfly.

  • Implementing User Notion.

  • Data Sample Migration.

Demo

Demo

Demo

Demo

Demo

How to get involved?

Any Questions?

Pbench

By riya_17

Pbench

  • 262