SlideShare a Scribd company logo
Performance Management with
Free and Bundled Tools
                         Adrian Cockcroft
                            Netflix Inc.
                     acockcroft@netflix.com
                  (Co-authored with Mario Jauvin
                         MFJ Associates
                    mario@mfjassociates.net)


                           2 May, 2009


                                  The Performance People
Agenda

    Overview of Capacity Planning Requirements

    and Data Sources
    Performance Data Collection

    Free Network Monitoring Tools

    Free System Monitoring Tools

    Free Load Generation and Modelling Tools

    Licences and References



                 May 2, 2009    Adrian Cockcroft and Mario Jauvin
What are we talking about?

                                   QA Load generation with
                                     Grinder or SLAMD,
                                   modelling with PDQ and R
    Network
 monitoring with
                                          Application Tier
WireShark, MRTG,
                                        monitoring with Orca,
  Hobbit/Xymon,
                                        Cacti, Hobbit/Xymon,
 BigSister, Cacti,
                                         BigSister, Ganglia,
Nagios, OpenNMS,
                                               XEtoolkit
Zenoss, Openxtra,
       ntop                          Database Tier monitoring
                                      With SEtoolkit, Orca,
                                            XEtoolkit

                     May 2, 2009    Adrian Cockcroft and Mario Jauvin
Capacity Planning
Requirements and Data
       Sources



       May 2, 2009   Adrian Cockcroft and Mario Jauvin
Definitions
    Capacity

     – Resource utilization and headroom
    Planning

     – Predicting future needs by analyzing historical data
       and modeling future scenarios
    Performance Monitoring

     – Collecting and reporting on performance data
    Free Tools

     – Bundled with the OS or available for no $$$




                        May 2, 2009         Adrian Cockcroft and Mario Jauvin
Capacity Planning Requirements

    We care about CPU, Memory, Network and Disk

    resources, and Application response times
    We need to know how much of each resource we

    are using now, and will use in the future
    We need to know how much headroom we have to

    handle higher loads
    We want to understand how headroom varies, and

    how it relates to application response times and
    throughput

                    May 2, 2009      Adrian Cockcroft and Mario Jauvin
Capacity Planning Challenges

    Constantly changing infrastructure

    Limited attention span from staff

    Horizontally scaled commodity systems

    Per node software licencing costs too much

    Too many tools, too many agents per node

    Too much data, not enough analysis

    Non-linear and non-intuitive scalability

    Lack of tools and metrics for virtualized resources





                       May 2, 2009        Adrian Cockcroft and Mario Jauvin
Observability
    Four different viewpoints

        Management
    –
        Engineering
    –
        QA Testing
    –
        Operations
    –
    Each needs very different information

    Ideal would be different views of the same

    performance database
    Reality is a mess of disjoint tools




                      May 2, 2009   Adrian Cockcroft and Mario Jauvin
Management Viewpoint

    Daily summary of status and problems

    Business oriented metrics

    Future scenario planning

    Marketing and management input

    Concise report with dashboard style status

    indicators
    Free tools: R, Spreadsheet and Web

    based displays, no good summarization
    tools

                    May 2, 2009    Adrian Cockcroft and Mario Jauvin
Engineering Viewpoint

    Large volumes of detailed data at several different

    time scales
    Input to tuning, reconfiguring and future product

    development
    Low level problem diagnosis

    Detailed reports with drill down and correlation

    analysis
    Free tools: XE/SE Toolkit, Orca, Ganglia, Cacti, R





                       May 2, 2009       Adrian Cockcroft and Mario Jauvin
QA Test Viewpoint
    Workload specification tools

    Load generation frameworks

    Testing for functionality and performance

    Regression tools to compare releases

    Modelling difference between test configuration

    and production configuration
    Free Tools: The Grinder, SLAMD, R, PDQ





                       May 2, 2009       Adrian Cockcroft and Mario Jauvin
Operations Viewpoint
    Immediate timeframe

    Real time display, updated in seconds

    Alert based monitoring

    High level problem diagnosis

    Simple high level graphs and views

    Free tools: Hobbit/Xymon, BigSister,

    Nagios, OpenNMS, MRTG, Cacti, Ganglia,
    WireShark, ntop


                  May 2, 2009   Adrian Cockcroft and Mario Jauvin
Measurement Data Interfaces
    Several generic raw access methods

         Read the kernel directly (not a good idea)
     –
         Structured system data (Solaris kstat, Linux /proc)
     –
         Process data
     –
         Network data
     –
         Accounting data
     –
         Application data
     –
    Command based data interfaces

         Scrape data from vmstat, iostat, netstat, sar, ps
     –
         Higher overhead, lower resolution, missing metrics
     –
    Data available is platform specific either way

    Much more detail on this topic in the Solaris/Linux Performance

    Measurement and Tuning slide deck



                               May 2, 2009             Adrian Cockcroft and Mario Jauvin
Free Network
Monitoring Tools



    May 2, 2009   Adrian Cockcroft and Mario Jauvin
SNMP

    Simple network management protocol

    UDP protocol based on port 161

    Client/server like

        Client is called management application entity
    –
        Server is called an agent entity
    –

    Agent entity is designed to be implemented

    on network hardware, router, switches, etc

                      May 2, 2009       Adrian Cockcroft and Mario Jauvin
SNMP – MIBs

    Management information base

    Defines the structure and the semantic of the

    information that can be reported on
    Most commonly used is MIB-II which defines a set of

    standard networking attributes
        Interface tables
    –
        System level information
    –
        Routing tables
    –

    Specified using ASN.1 (abstract syntax notation 1)



                         May 2, 2009   Adrian Cockcroft and Mario Jauvin
SNMP – commands

    Called PDU (protocol data units)

    GET

    GETNEXT

    GETBULK

    SET

    Encoded using BER (basic encoding rules)




                 May 2, 2009    Adrian Cockcroft and Mario Jauvin
Versions

    Version 1, original version done in May 1991

    Version 2, around 1993. Failed because the

    IETF credo of “rough consensus and running
    code” could not be met on securing SNMP
    Turned into V2c for community string security

    (like V1)
    Version 3, added security and complexity in

    1998

                  May 2, 2009     Adrian Cockcroft and Mario Jauvin
SNMP tools

    Too numerous to name all but…

    OpenNMS

    Nagios

    Cacti

    MRTG

    Net-snmp

        See www.snmplink.org
    –


                    May 2, 2009   Adrian Cockcroft and Mario Jauvin
SNMP tools

    Snmpwalk – will report all data in a specified

    MIB
    getIf – will report data about interfaces and

    includes built-in MIB browser
    Snmptable – will report tabular data from MIB

    tables



                   May 2, 2009    Adrian Cockcroft and Mario Jauvin
OpenNMS

    Well…. it’s not that portable

        95% java is not 100% java
    –
        Requires about 20-30 different platform specific
    –
        packages (PostgreSQL, Perl, RRD tool, Tomcat 4
        etc…)
        Difficult to install
    –
        Easy auto discovery
    –
        Web-based interface
    –



                      May 2, 2009      Adrian Cockcroft and Mario Jauvin
OpenNMS

    Main screen shot





                 May 2, 2009   Adrian Cockcroft and Mario Jauvin
OpenNMS

    Node screen shot





                 May 2, 2009   Adrian Cockcroft and Mario Jauvin
Nagios

    Easy to build/compile (on Solaris 10)

    Easy to install

    Quick response from CGI

    Configuration is manual and a pain

        13 configuration files with all kinds of interrelated
    –
        entries
        Tedious and error prone
    –

    Requires plugins to do anything



                       May 2, 2009         Adrian Cockcroft and Mario Jauvin
Nagios

    Main screen shot





                 May 2, 2009   Adrian Cockcroft and Mario Jauvin
Nagios

    Host detail screen shot





                   May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop

    Similar to familiar UNIX top tool for

    processes but used for network
    Provide huge selection of real-time data

    Can be found at http://www.openxtra.co.uk/





                  May 2, 2009    Adrian Cockcroft and Mario Jauvin
ntop – Active Sessions




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop Hosts




             May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop Network Load




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop_Network_Thruput




          May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop Port Dist




            May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop_Protocol_Dist




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
ntop Protocols




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
Zenoss

    Open source monitoring and management of

    IT infrastructure
    Zenoss core is free

    Other editions are for a fee

    Get it from http://www.zenoss.com/download/





                  May 2, 2009   Adrian Cockcroft and Mario Jauvin
zenoss Architecture




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
zenoss Dash Config




           May 2, 2009   Adrian Cockcroft and Mario Jauvin
zenoss Google




       May 2, 2009   Adrian Cockcroft and Mario Jauvin
zenoss Google Alerts




        May 2, 2009   Adrian Cockcroft and Mario Jauvin
Zenoss Graphs




       May 2, 2009   Adrian Cockcroft and Mario Jauvin
zenoss Topology




      May 2, 2009   Adrian Cockcroft and Mario Jauvin
Zeroshell




            5/2/2009   Adrian Cockcroft and Mario Jauvin
Zeroshell (cont)

    Small Linux distribution for servers and

    embedded devices
    Provides network services:

        Load balancing
    –
        RADIUS
    –
        QoS
    –
        Captive portal, proxy, wireless access point
    –




                        5/2/2009         Adrian Cockcroft and Mario Jauvin
IPT-Netflow

    Netflow Linux kernel module for collecting

    per connection traffic
    Designed for Linux router with heavy network

    load




                    5/2/2009     Adrian Cockcroft and Mario Jauvin
NFDUMP and NfSen

    NFDUMP is a set of tools to capture/record,

    dump, filter and replay Netflow data
        Filters based on user-defines profiles
    –

    NfSen is a graphical Web-based front-end for

    NFDUMP




                        5/2/2009         Adrian Cockcroft and Mario Jauvin
NetTraMet and others

    Meter for network traffic flows

    First implementation of real time flow

    measurement (RTFM) or RFC 1272
    Flow-tools

        Software package for collecting and processing
    –
        NetFlow data
    See HUGE list of flow management tools at

        http://www.switch.ch/network/projects/completed/
    –
        TF-NGN/floma/software.html
                       5/2/2009        Adrian Cockcroft and Mario Jauvin
Internet2 Performance Node: Live
CD

    perfSONAR Network Performance Toolkit

    2.0
    Customized version of a Knoppix (bootable

    Linux distribution)
    Ping/traceroute

    OWANP (one-way ping)

    BWCTL (bandwidth Test Controller)

        Iperf (measure maximum TCP bandwidth)
    –
        Trulay
    –                   5/2/2009    Adrian Cockcroft and Mario Jauvin
Internet2 NetFlow reports

    Interactive weekly reports

    Dates back to 2002

    Bulk data (more than 10MB) and full data

    Throughputs, size, durations, percentiles

    Application types





                    5/2/2009      Adrian Cockcroft and Mario Jauvin
Internet2 NetFlow reports




             5/2/2009   Adrian Cockcroft and Mario Jauvin
MRTG

    Really simple to install and configure

    Require manual config file creation

    Only for MIB-II interface plotting out of the

    box
    Graphing not flexible, axis, time etc





                    May 2, 2009     Adrian Cockcroft and Mario Jauvin
MRTG

    Interface screen shot





                  May 2, 2009   Adrian Cockcroft and Mario Jauvin
MRTG

    Other CPU screen shot





                 May 2, 2009   Adrian Cockcroft and Mario Jauvin
RRD tool

    Software to store, retrieve and graph

    numerical time series data
    Use a round robin algorithm

    Data files are a fixed size

        Don’t grow
    –
        Don’t require maintenance
    –




                     May 2, 2009    Adrian Cockcroft and Mario Jauvin
RRD tool

    Compiles on most platforms

    Used by many SNMP based tools

        OpenNMS
    –
        Cacti
    –
        BigSister
    –
        WeatherMap4RRD
    –
        MailGraph
    –




                  May 2, 2009   Adrian Cockcroft and Mario Jauvin
RRD tool

    14all CGI script that plots data similar to

    MRTG
    Configurable to collect data at different

    interval (unlike MRTG)
    Flexible and variable in what data can be

    collected



                   May 2, 2009      Adrian Cockcroft and Mario Jauvin
RRD tool

    Sample screen shot





                 May 2, 2009   Adrian Cockcroft and Mario Jauvin
RRD tool

    Screen shot





                  May 2, 2009   Adrian Cockcroft and Mario Jauvin
RRD tool

  Create a RRD database

rrdtool create test.rrd  
       --start 920804400   
       DS:speed:COUNTER:600:U:U 
       RRA:AVERAGE:0.5:1:24   
       RRA:AVERAGE:0.5:6:10


             May 2, 2009   Adrian Cockcroft and Mario Jauvin
RRD tool

   Create a graph

rrdtool graph speed.png             
  --start 920804400 --end 920808000  
  DEF:myspeed=test.rrd:speed:AVERAGE 
  LINE2:myspeed#FF0000




              May 2, 2009   Adrian Cockcroft and Mario Jauvin
Free Performance Data
 Collection and Rules
       Toolkits



       May 2, 2009   Adrian Cockcroft and Mario Jauvin
SE toolkit Example Tools
     A free performance toolkit for rapidly creating custom data sources

     Makes all the very extensive Solaris metrics easily available

     Very system specific and not enough metrics exist to port to Linux

     Written by Rich Pettit with contributions from Adrian Cockcroft

     Get SE3.4 from http://sourceforge.net/projects/setoolkit/

     Open source with support for SPARC & x86 Solaris 8, 9, 10

Function               Example SE Programs
Rule Monitors cpg.se   monlog.se      mon_cm.se        live_test.se    percollator.se
                                      zoom.se          virtual_adrian.se                virtual_adrian_lite.se
Disk Monitors          siostat.se     xio.se           xiostat.se      iomonitor.se     iost.se          xit.se          disks.se
CPU Monitors           cpu_meter.se   vmmonitor.se     mpvmstat.se
Process Monitors       msacct.se      pea.se           ps-ax.se        ps-p.se          pwatch.se        pw.se
Network Monitors       net.se         tcp_monitor.se   netmonitor.se netstatx.se nfsmonitor.se           nx.se
Clones                 iostat.se      uname.se         vmstat.se       nfsstat-m.se     perfmeter.se     xload.se
Data browsers aw.se    infotool.se    multi_meter.se
Contributed Code       anasa          dfstats          kview           systune          watch            orcollator.se
Test Programs          syslog.se      cpus.se          pure_test.se    collisions.se    uptime.se        dumpkstats.se
                                      net_example      nproc.se        kvmname.se


                                       May 2, 2009                                 Adrian Cockcroft and Mario Jauvin
SE language features
    SE is a 64bit interpreted dialect of C

     – Not a new language to learn from scratch!
     – Standard C /usr/ccs/bin/cpp used at runtime to preprocess SE scripts
     – Main omissions - pointer types and goto
     – Main additions - classes and “string” type
     – powerful ways to handle dynamically allocated data
     – built-in fast balanced tree routines for storing key indexed data
    Dynamic linking to all existing C libraries

     – Built-in classes access kernel data
     – Supplied class code hides details, provides the data you want
    Example scripts improve on basic utilities e.g. siostat.se, nx.se, pea.se

    Example rule based monitors e.g. virtual_adrian.se, orcallator.se





                             May 2, 2009             Adrian Cockcroft and Mario Jauvin
Creating Rules

    Based on real experiences of all the things that go

    wrong
    Capture an approximation to intuition

    Test and calibrate rules on as many systems as

    possible
    Easy??





                     May 2, 2009       Adrian Cockcroft and Mario Jauvin
Configuring Rules
    Thresholds should be configured

    Very application dependent

    Capture the operating envelope

        Measure the underlying values
    –
        Measure peaks in normal operation
    –
        Note values during problems
    –
        Set thresholds to capture the difference
    –

    This applies to any tool

        SE Toolkit, Cacti, Ganglia, Nagios, OpenNMS etc.
    –

                       May 2, 2009        Adrian Cockcroft and Mario Jauvin
Rules as Objects

    Define only the input and output information

    Hide implementation details

    Make high level rule objects trivial to use and

    reuse
    SE Toolkit does it in three lines of code:

         #include <rules file>
     –
         Declare rule object as a typed variable
     –
         Read and use or print object status
     –



                         May 2, 2009       Adrian Cockcroft and Mario Jauvin
quot;virtual adrianquot; rules summary
    Disk Rule for all disks at once

     – Looks for slow disks and unbalanced usage
    Network Rule for all networks at once

     – Looks for slow nets and unbalanced usage
    Swap Rule - Looks for lack of available swap space

    RAM Rule - Looks for short page residence times

    CPU Power Rule

     – Scales on MP systems
     – Looks for long run queue delays
    Mutex Rule - Looks for kernel lock contention and high sys CPU time

    TCP Rule

     – Looks for listen queue problems
     – Reports on connection attempt failures




                             May 2, 2009            Adrian Cockcroft and Mario Jauvin
XE Toolkit - www.xetoolkit.com

    Complete re-write of SE Toolkit by Rich Pettit

        Extensible Java collector, customize with jar files
    –
        Release 1.2 available April 2008
    –
        Multi-platform support Solaris, Linux/x86, Windows, BSD,
    –
        OSX, HP-UX, AIX, Linux/s390, Linux/Power
    Licencing

        Free GPL version for standard use and shared derivations
    –
        Open source, hosted at http://sourceforge.net/projects/xe-toolkit/
    –
        Commercial support available if needed
    –
        Commercial product license for custom in-house derivations
    –

    Addresses all the issues people had with SE toolkit !


                           May 2, 2009             Adrian Cockcroft and Mario Jauvin
Captive Metrics / XE Toolkit
Architecture




            May 2, 2009   Adrian Cockcroft and Mario Jauvin
Free System Monitoring
         Tools



       May 2, 2009   Adrian Cockcroft and Mario Jauvin
Collated Performance Data - Orca
    Problems with time sync when collecting data from multiple tools

     – No timestamp at all for vmstat, netstat, df...
     – No timestamp by default for iostat and ps...
     – No way to collect realtime stats from an http logfile
    Use SE Toolkit to generate one timestamped row containing all the data

     – First version of percollator.se written by Adrian Cockcroft in 1996
     – Extended orcallator.se written by Blair Zajac a few years later
     – Graphs generated by orca batch job feeding rrdtool based web pages
     – Active community developing tool at http://www.orcaware.com
     – Extended to collect much more data, including process workloads
     – Basic data collection ported to Linux, HP-UX and Windows
    Orca is basically MRTG for System metrics rather than Network

    See http://www.orcaware.com/orca/docs/Orca_Understanding_Performance_Data.ppt




                                May 2, 2009               Adrian Cockcroft and Mario Jauvin
Orca data collections
    Collected using “procollator” reading info from /proc on Linux

[Uptime] [Average # Processes in Run Queue (Load Average)] [CPU
   Usage] [New Process Spawn Rate] [Number of System & Running
   Processes] [Context Switches & Interrupts Rate] [Interface Input Bits Per
   Second] [Interface Output Bits Per Second] [Interface Input Packets Per
   Second] [Interface Output Packets Per Second] [Interface Input Errors Per
   Second] [Interface Output Errors Per Second] [Interface Input Dropped Per
   Second] [Interface Output Dropped Per Second] [Interface Output
   Collisions] [Interface Output Carrier Losses] [TCP Current Connections] [IP
   Statistics] [TCP Statistics] [ICMP Statistics] [UDP Statistics] [Disk System
   Wide Reads/Writes Per Second] [Disk System Wide Transfer Rate] [Disk
   Reads/Writes Per Second] [Disk Transfer Rate] [Disk Space Percent
   Usage] [Physical Memory Usage] [Swap Usage] [Page Ins & Outs
   Rate] [Swap Ins & Outs Rate]

    Orca on Solaris collects many more metrics than shown above

    Strength of Orca is lots of detailed metrics with low overhead for collection

    Easily customized to add more system metrics or application metrics

    Orca can already track HTTP traffic and parse log files


                              May 2, 2009              Adrian Cockcroft and Mario Jauvin
All metrics are stored in
                 “round robin database”
                format using RRDtool to
                 generate displays over
                   different time spans
              Web page is simple collection
               of plots with drill down by
                    metric or by time
                 Suitable for monitoring a
                relatively small number of
               systems in great detail, e.g.
               backend database servers




May 2, 2009           Adrian Cockcroft and Mario Jauvin
Cacti – www.cacti.net

    Web based user interface based on RRDtool

    More sophisticated GUI than Orca or MRTG

    Less sophisticated system metric collection,

    but more coverage of networking
    Better management of groups of systems

    and devices than Orca, useful for tens to
    hundreds of nodes
    Access control and personalization for users



                  May 2, 2009    Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
Ganglia – www.ganglia.info

    Web based RRDtool GUI somewhat similar to Cacti

    Better management of clusters of systems and

    devices than Cacti, useful for hundreds to thousands
    of nodes in a hierarchy of clusters
    Provides many summary statistic plots at cluster

    level and collects detailed configuration data
    XML based data representation

    Uses low overhead network protocol

    In common use at hundreds of large HPC Grid sites,

    less visibly in use at some large commercial sites


                     May 2, 2009       Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
BigBrother, BigSister, Hobbit/Xymon
    Network and system dashboard alert monitor

    Widely used at internet sites

    Bigbrother is at http://www.bb4.com

        Taken over by Quest Inc.
    –

    Bigsister is at http://bigsister.graeff.com

        Doesn’t seem to be widely used
    –

    Hobbit changed its name to Xymon

        Xymon is a scalable and efficient open source re-write
    –
        of BigBrother, compatible with BB collector scripts
        Distribution at http://www.xymon.com documentation at
    –
        http://en.wikibooks.org/wiki/System_Monitoring_with_Xymon
    –



                          May 2, 2009            Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
Free QA Test and
 Modelling Tools



    May 2, 2009   Adrian Cockcroft and Mario Jauvin
QA Test Requirements

    Generate test workload

        SLAMD, Grinder
    –

    Collect performance metrics

        Any of the tools already mentioned
    –

    Report regression against baseline

    Predict capacity needed for production system

        Use spreadsheets for simple linear prediction
    –
        Use modelling tools such as PDQ for queuing models
    –




                         May 2, 2009         Adrian Cockcroft and Mario Jauvin
Grinder 3 - Powerful New Features
    100% Pure Java - works on any hardware platform and any

    operating system that supports J2SE 1.3 and above.
    Java and Jython based load testing framework

        Web Browsers: simulate web browsers using HTTP, and HTTPS.
    –
        Web Services: test interfaces using SOAP and XML-RPC.
    –
        Database: test databases using JDBC.
    –
        Middleware: RPC and MOM based systems using IIOP, RMI/IIOP,
    –
        RMI/JRMP, and JMS.
        Other Internet protocols: POP3, SMTP, FTP, and LDAP.
    –

    See http://grinder.sourceforge.net/g3/features.html

    J2EE Performance Testing with BEA WebLogic Server by

    Peter Zadrozny, Philip Aston and Ted Osborne, originally
    published by Expert Press and now by APress uses Grinder 2
    throughout.


                         May 2, 2009           Adrian Cockcroft and Mario Jauvin
SLAMD

    Load generation framework, written in Java

    Originally built to test LDAP servers by Sun

    Extended to be very generic and published

    as open source. Actively being developed.
    Sophisticated functions and user interface

    See http://www.slamd.com

    Latest Release 2.0 has better usability focus



                   May 2, 2009    Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
May 2, 2009   Adrian Cockcroft and Mario Jauvin
PDQ Modelling Tool

    Dr Neil Gunther’s toolkit at

    http://www.perfdynamics.com
    Library used from C or Perl provides MVA queueing

    models
    Use to calibrate in QA and predict in production

    PDQ modelling tool details:

        The Practical Performance Analyst Dr. Neil Gunther -
    –
        McGraw-Hill, 1998 ISBN 0-07-912946-3
        Analyzing Computer System Performance with Perl:PDQ
    –
        2004, ISBN 3-54-020865-8


                       May 2, 2009         Adrian Cockcroft and Mario Jauvin
R – A Free Statistics Package

  http://www.r-project.org

 Runs on any platform
 Compatible with S-PLUS
 Very powerful/nice scripting language




              May 2, 2009   Adrian Cockcroft and Mario Jauvin
CHP - “Cockcroft Headroom Plot”

  R Based plotting tool (demo)

 Examples importing iostat, vxstat
 Series of articles in CMG Measure-IT
 Blogged at http://perfcap.blogspot.com




              May 2, 2009   Adrian Cockcroft and Mario Jauvin
Web Site Behavior
Web Site Headroom
Java App Server Headroom Plot
    Mixed Page Weights

    Thread-limited appserver

    CPU utilization is low

    Measurements are of a

    single SOA service pool
    Response is in

    milliseconds
    Throughput is executions/s


Exec               Resp
Min.   :    1.00   Min.   :    0.0
1st Qu.:    2.00   1st Qu.: 150.0
Median :    8.00   Median : 361.0
Mean   :   64.68   Mean   : 533.5
3rd Qu.:   45.00   3rd Qu.: 771.9
Max.   :10795.00   Max.   :19205.0
Storage Headroom - Reads
Storage Headroom - Reads
References and
  Conclusion



   May 2, 2009   Adrian Cockcroft and Mario Jauvin
Licences for Free Tools

    Open Source Initiative

        “OSI Approved licences”
    –
        http://opensource.org/licenses/category
    –

    Comparisons of Common Licences

        http://zooko.com/license_quick_ref.html
    –




                      May 2, 2009       Adrian Cockcroft and Mario Jauvin
Web Pages and Books
    Adrian’s Performance and other topics blog

         http://perfcap.blogspot.com
     –
    MFJ Associates performance tools link page

         http://www.mfjassociates.net/perf_links.html
     –
    More free tools compiled by John Sellens

         http://www.generalconcepts.com/resources/monitoring/
     –
    More tools compiled by Openxtra

         http://www.openxtra.co.uk/resource-center/open_source_network_monitor_tools.php
     –
    SE toolkit info: Sun Performance and Tuning - Java and the Internet - Adrian

    Cockcroft and Richard Pettit - Sun Press/Prentice Hall, 2nd Edition, 1998 ISBN 0-13-
    095249-4
    Solaris 8 and Linux: System Performance Tuning 2nd Edition – Gian-Paolo Musumeci,

    O’Reilly 2002 ISBN: 0-596-00284-X
    Solaris Internals http://www.solarisinternals.com

         Richard McDougall and James Mauro - new 2nd edition and new performance book by
     –
         Richard McDougall and Brendan Gregg




                                    May 2, 2009                 Adrian Cockcroft and Mario Jauvin
Concluding Remarks

    Many large installations depend on free tools

    A full suite of functionality is available

    Several tools are needed to cover the bases

    Tradeoff between function and ease of use

    Support may be available, but typically

    Google is the best support tool
    Functionality is increasing….



                   May 2, 2009    Adrian Cockcroft and Mario Jauvin
Questions?
   acockcroft@netflix.com
   mario@mfjassociates.net

     Updated presentations
http://www.slideshare.net/adrianco




          May 2, 2009    Adrian Cockcroft and Mario Jauvin

More Related Content

What's hot

Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability
Abigail Bangser
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic Architecture
Paul Mooney
 
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
SlideTeam
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
Grafana Labs
 
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
Ji-Woong Choi
 
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
Intellipaat
 
Implementing error budgets
Implementing error budgetsImplementing error budgets
Implementing error budgets
Yaroslav Molochko
 
Microservice Architecture using Spring Boot with React & Redux
Microservice Architecture using Spring Boot with React & ReduxMicroservice Architecture using Spring Boot with React & Redux
Microservice Architecture using Spring Boot with React & Redux
NexThoughts Technologies
 
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
Hyperledger Korea User Group
 
Communication in a Microservice Architecture
Communication in a Microservice ArchitectureCommunication in a Microservice Architecture
Communication in a Microservice Architecture
Per Bernhardt
 
Building .NET Microservices
Building .NET MicroservicesBuilding .NET Microservices
Building .NET Microservices
VMware Tanzu
 
Introduction to Prometheus
Introduction to PrometheusIntroduction to Prometheus
Introduction to Prometheus
Julien Pivotto
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
Open Source Consulting
 
Monitoring with prometheus
Monitoring with prometheusMonitoring with prometheus
Monitoring with prometheus
Kasper Nissen
 
Microservices
MicroservicesMicroservices
Microservices
SmartBear
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
Kelvin Yeung
 
Monitoring kubernetes with prometheus
Monitoring kubernetes with prometheusMonitoring kubernetes with prometheus
Monitoring kubernetes with prometheus
Brice Fernandes
 
Confluent Tech Talk Korea
Confluent Tech Talk KoreaConfluent Tech Talk Korea
Confluent Tech Talk Korea
confluent
 
X-Tour Nutanix 101
X-Tour Nutanix 101X-Tour Nutanix 101
X-Tour Nutanix 101
NEXTtour
 
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief ComparisonCloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
bizalgo
 

What's hot (20)

Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic Architecture
 
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
Kubernetes Docker Container Implementation Ppt PowerPoint Presentation Slide ...
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
 
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
 
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
DevOps Tools Training | DevOps Tools | What is GIT | What is Jenkins
 
Implementing error budgets
Implementing error budgetsImplementing error budgets
Implementing error budgets
 
Microservice Architecture using Spring Boot with React & Redux
Microservice Architecture using Spring Boot with React & ReduxMicroservice Architecture using Spring Boot with React & Redux
Microservice Architecture using Spring Boot with React & Redux
 
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
[2019.04] 쿠버네티스 기반 하이퍼레저 패브릭 네트워크 구축하기
 
Communication in a Microservice Architecture
Communication in a Microservice ArchitectureCommunication in a Microservice Architecture
Communication in a Microservice Architecture
 
Building .NET Microservices
Building .NET MicroservicesBuilding .NET Microservices
Building .NET Microservices
 
Introduction to Prometheus
Introduction to PrometheusIntroduction to Prometheus
Introduction to Prometheus
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
Monitoring with prometheus
Monitoring with prometheusMonitoring with prometheus
Monitoring with prometheus
 
Microservices
MicroservicesMicroservices
Microservices
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
 
Monitoring kubernetes with prometheus
Monitoring kubernetes with prometheusMonitoring kubernetes with prometheus
Monitoring kubernetes with prometheus
 
Confluent Tech Talk Korea
Confluent Tech Talk KoreaConfluent Tech Talk Korea
Confluent Tech Talk Korea
 
X-Tour Nutanix 101
X-Tour Nutanix 101X-Tour Nutanix 101
X-Tour Nutanix 101
 
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief ComparisonCloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
CloudStack vs OpenStack vs Eucalyptus: IaaS Private Cloud Brief Comparison
 

Viewers also liked

Unit 1 Service Operations Management
Unit 1 Service Operations ManagementUnit 1 Service Operations Management
Unit 1 Service Operations Management
Gopinath Guru
 
Measurement System Analysis
Measurement System AnalysisMeasurement System Analysis
Measurement System Analysis
Ronald Shewchuk
 
Line balancing
Line balancing Line balancing
Line balancing
Md. Mazadul Hasan Shishir
 
Software reverse engineering
Software reverse engineeringSoftware reverse engineering
Software reverse engineering
Parminder Singh
 
Service Operation - Manajemen Layanan Teknologi Informasi
Service Operation - Manajemen Layanan Teknologi InformasiService Operation - Manajemen Layanan Teknologi Informasi
Service Operation - Manajemen Layanan Teknologi Informasi
Muhammad Idil Haq Amir
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
Hicube Infosec
 
Measuring capacity lesson3
Measuring capacity lesson3Measuring capacity lesson3
Measuring capacity lesson3
Lidia Marie
 
Capacity 1
Capacity 1Capacity 1
Capacity 1
Marisa Bajada
 
reverse engineering
reverse engineeringreverse engineering
reverse engineering
ayush_nitt
 
Reverse Engineering
Reverse EngineeringReverse Engineering
Reverse Engineering
siddu019
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
Saswat Padhi
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
Daniel Stenberg
 
Legacy Software Maintenance And Management
Legacy Software Maintenance And ManagementLegacy Software Maintenance And Management
Legacy Software Maintenance And Management
ValueCoders
 
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Maintenance,Re-engineering &Reverse Engineering in Software EngineeringMaintenance,Re-engineering &Reverse Engineering in Software Engineering
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Manish Kumar
 
intra and inter personal relations
intra and inter personal relationsintra and inter personal relations
intra and inter personal relations
Ganesh Sahu
 
Reverse Engineering of Software Architecture
Reverse Engineering of Software ArchitectureReverse Engineering of Software Architecture
Reverse Engineering of Software Architecture
Dharmalingam Ganesan
 
Tools for capacity planning, measurement of capacity, capacity planning process
Tools for capacity planning, measurement of capacity, capacity planning processTools for capacity planning, measurement of capacity, capacity planning process
Tools for capacity planning, measurement of capacity, capacity planning process
Rohan Monis
 
Facility layout
Facility layoutFacility layout
Facility layout
Faiz Hamzah
 
Service Operation Processes
Service Operation ProcessesService Operation Processes
Service Operation Processes
nuwulang
 
Capacity Management
Capacity ManagementCapacity Management
Capacity Management
Antonio Gonzalez
 

Viewers also liked (20)

Unit 1 Service Operations Management
Unit 1 Service Operations ManagementUnit 1 Service Operations Management
Unit 1 Service Operations Management
 
Measurement System Analysis
Measurement System AnalysisMeasurement System Analysis
Measurement System Analysis
 
Line balancing
Line balancing Line balancing
Line balancing
 
Software reverse engineering
Software reverse engineeringSoftware reverse engineering
Software reverse engineering
 
Service Operation - Manajemen Layanan Teknologi Informasi
Service Operation - Manajemen Layanan Teknologi InformasiService Operation - Manajemen Layanan Teknologi Informasi
Service Operation - Manajemen Layanan Teknologi Informasi
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
 
Measuring capacity lesson3
Measuring capacity lesson3Measuring capacity lesson3
Measuring capacity lesson3
 
Capacity 1
Capacity 1Capacity 1
Capacity 1
 
reverse engineering
reverse engineeringreverse engineering
reverse engineering
 
Reverse Engineering
Reverse EngineeringReverse Engineering
Reverse Engineering
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
 
Reverse engineering
Reverse engineeringReverse engineering
Reverse engineering
 
Legacy Software Maintenance And Management
Legacy Software Maintenance And ManagementLegacy Software Maintenance And Management
Legacy Software Maintenance And Management
 
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Maintenance,Re-engineering &Reverse Engineering in Software EngineeringMaintenance,Re-engineering &Reverse Engineering in Software Engineering
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
 
intra and inter personal relations
intra and inter personal relationsintra and inter personal relations
intra and inter personal relations
 
Reverse Engineering of Software Architecture
Reverse Engineering of Software ArchitectureReverse Engineering of Software Architecture
Reverse Engineering of Software Architecture
 
Tools for capacity planning, measurement of capacity, capacity planning process
Tools for capacity planning, measurement of capacity, capacity planning processTools for capacity planning, measurement of capacity, capacity planning process
Tools for capacity planning, measurement of capacity, capacity planning process
 
Facility layout
Facility layoutFacility layout
Facility layout
 
Service Operation Processes
Service Operation ProcessesService Operation Processes
Service Operation Processes
 
Capacity Management
Capacity ManagementCapacity Management
Capacity Management
 

Similar to Capacity Planning with Free Tools

Capacity Planning Free Solution
Capacity Planning Free SolutionCapacity Planning Free Solution
Capacity Planning Free Solution
luanrjesus
 
Open Programmable Architecture for Java-enabled Network Devices
Open Programmable Architecture for Java-enabled Network DevicesOpen Programmable Architecture for Java-enabled Network Devices
Open Programmable Architecture for Java-enabled Network Devices
Tal Lavian Ph.D.
 
Next Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykNext Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and Snyk
DevOps.com
 
Our Methodology & Benefits
Our Methodology & BenefitsOur Methodology & Benefits
Our Methodology & Benefits
NetBrain Technologies
 
Micrometrics to forecast performance tsunamis
Micrometrics to forecast performance tsunamisMicrometrics to forecast performance tsunamis
Micrometrics to forecast performance tsunamis
Tier1app
 
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case StudyAccenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
Honeywell
 
D-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoringD-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoring
Stefano Salsano
 
Network Analysis Using Wireshark 1
Network Analysis Using Wireshark 1Network Analysis Using Wireshark 1
Network Analysis Using Wireshark 1
Yoram Orzach
 
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Guglielmo Iozzia
 
Internet2
Internet2Internet2
Internet2
sunsonbaba
 
Analysis of IT Monitoring Using Open Source Software Techniques: A Review
Analysis of IT Monitoring Using Open Source Software Techniques: A ReviewAnalysis of IT Monitoring Using Open Source Software Techniques: A Review
Analysis of IT Monitoring Using Open Source Software Techniques: A Review
IJERD Editor
 
NetBrain CE 5.0
NetBrain CE 5.0NetBrain CE 5.0
NetBrain CE 5.0
NetBrain Technologies
 
Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments
Liming Zhu
 
Automata Processing: Accelerating Big Data
Automata Processing: Accelerating Big DataAutomata Processing: Accelerating Big Data
Automata Processing: Accelerating Big Data
MicronTechnology
 
Network Programming with Umit project
Network Programming with Umit projectNetwork Programming with Umit project
Network Programming with Umit project
UC San Diego
 
Metacomputer Architecture of the Global LambdaGrid
Metacomputer Architecture of the Global LambdaGridMetacomputer Architecture of the Global LambdaGrid
Metacomputer Architecture of the Global LambdaGrid
Larry Smarr
 
陸永祥/全球網路攝影機帶來的機會與挑戰
陸永祥/全球網路攝影機帶來的機會與挑戰陸永祥/全球網路攝影機帶來的機會與挑戰
陸永祥/全球網路攝影機帶來的機會與挑戰
台灣資料科學年會
 
The Art of Container Monitoring
The Art of Container MonitoringThe Art of Container Monitoring
The Art of Container Monitoring
Derek Chen
 
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
Nagios
 
NCGIC The Geospatial Revolution
NCGIC The Geospatial RevolutionNCGIC The Geospatial Revolution
NCGIC The Geospatial Revolution
Peter Batty
 

Similar to Capacity Planning with Free Tools (20)

Capacity Planning Free Solution
Capacity Planning Free SolutionCapacity Planning Free Solution
Capacity Planning Free Solution
 
Open Programmable Architecture for Java-enabled Network Devices
Open Programmable Architecture for Java-enabled Network DevicesOpen Programmable Architecture for Java-enabled Network Devices
Open Programmable Architecture for Java-enabled Network Devices
 
Next Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykNext Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and Snyk
 
Our Methodology & Benefits
Our Methodology & BenefitsOur Methodology & Benefits
Our Methodology & Benefits
 
Micrometrics to forecast performance tsunamis
Micrometrics to forecast performance tsunamisMicrometrics to forecast performance tsunamis
Micrometrics to forecast performance tsunamis
 
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case StudyAccenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
Accenture & NextNine – Medium Size Oil & Gas Company Cyber Security Case Study
 
D-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoringD-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoring
 
Network Analysis Using Wireshark 1
Network Analysis Using Wireshark 1Network Analysis Using Wireshark 1
Network Analysis Using Wireshark 1
 
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
 
Internet2
Internet2Internet2
Internet2
 
Analysis of IT Monitoring Using Open Source Software Techniques: A Review
Analysis of IT Monitoring Using Open Source Software Techniques: A ReviewAnalysis of IT Monitoring Using Open Source Software Techniques: A Review
Analysis of IT Monitoring Using Open Source Software Techniques: A Review
 
NetBrain CE 5.0
NetBrain CE 5.0NetBrain CE 5.0
NetBrain CE 5.0
 
Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments
 
Automata Processing: Accelerating Big Data
Automata Processing: Accelerating Big DataAutomata Processing: Accelerating Big Data
Automata Processing: Accelerating Big Data
 
Network Programming with Umit project
Network Programming with Umit projectNetwork Programming with Umit project
Network Programming with Umit project
 
Metacomputer Architecture of the Global LambdaGrid
Metacomputer Architecture of the Global LambdaGridMetacomputer Architecture of the Global LambdaGrid
Metacomputer Architecture of the Global LambdaGrid
 
陸永祥/全球網路攝影機帶來的機會與挑戰
陸永祥/全球網路攝影機帶來的機會與挑戰陸永祥/全球網路攝影機帶來的機會與挑戰
陸永祥/全球網路攝影機帶來的機會與挑戰
 
The Art of Container Monitoring
The Art of Container MonitoringThe Art of Container Monitoring
The Art of Container Monitoring
 
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
Nagios Conference 2014 - Luke Groschen - Using Nagios Network Analyzer and NS...
 
NCGIC The Geospatial Revolution
NCGIC The Geospatial RevolutionNCGIC The Geospatial Revolution
NCGIC The Geospatial Revolution
 

More from Adrian Cockcroft

Yow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with NotesYow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with Notes
Adrian Cockcroft
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Adrian Cockcroft
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
Adrian Cockcroft
 
Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013
Adrian Cockcroft
 
Netflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search RoadshowNetflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search Roadshow
Adrian Cockcroft
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Adrian Cockcroft
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Adrian Cockcroft
 
Gluecon keynote
Gluecon keynoteGluecon keynote
Gluecon keynote
Adrian Cockcroft
 
Dystopia as a Service
Dystopia as a ServiceDystopia as a Service
Dystopia as a Service
Adrian Cockcroft
 
Netflix and Open Source
Netflix and Open SourceNetflix and Open Source
Netflix and Open Source
Adrian Cockcroft
 
NetflixOSS Meetup
NetflixOSS MeetupNetflixOSS Meetup
NetflixOSS Meetup
Adrian Cockcroft
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at Netflix
Adrian Cockcroft
 
Architectures for High Availability - QConSF
Architectures for High Availability - QConSFArchitectures for High Availability - QConSF
Architectures for High Availability - QConSF
Adrian Cockcroft
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
Adrian Cockcroft
 
SV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source PlatformSV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source Platform
Adrian Cockcroft
 
Cassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWSCassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWS
Adrian Cockcroft
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at Gluecon
Adrian Cockcroft
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV Forum
Adrian Cockcroft
 
Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3) Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3)
Adrian Cockcroft
 
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Adrian Cockcroft
 

More from Adrian Cockcroft (20)

Yow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with NotesYow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with Notes
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
 
Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013
 
Netflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search RoadshowNetflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search Roadshow
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
 
Gluecon keynote
Gluecon keynoteGluecon keynote
Gluecon keynote
 
Dystopia as a Service
Dystopia as a ServiceDystopia as a Service
Dystopia as a Service
 
Netflix and Open Source
Netflix and Open SourceNetflix and Open Source
Netflix and Open Source
 
NetflixOSS Meetup
NetflixOSS MeetupNetflixOSS Meetup
NetflixOSS Meetup
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at Netflix
 
Architectures for High Availability - QConSF
Architectures for High Availability - QConSFArchitectures for High Availability - QConSF
Architectures for High Availability - QConSF
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
 
SV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source PlatformSV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source Platform
 
Cassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWSCassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWS
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at Gluecon
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV Forum
 
Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3) Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3)
 
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
 

Recently uploaded

TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptxIntroduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
313mohammedarshad
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
Safe Software
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
Priyanka Aash
 
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
aslasdfmkhan4750
 
CiscoIconsLibrary cours de réseau VLAN.ppt
CiscoIconsLibrary cours de réseau VLAN.pptCiscoIconsLibrary cours de réseau VLAN.ppt
CiscoIconsLibrary cours de réseau VLAN.ppt
moinahousna
 
The Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF GuideThe Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF Guide
Shiv Technolabs
 
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
bhumivarma35300
 
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
Priyanka Aash
 
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Torry Harris
 
WhatsApp Spy Online Trackers and Monitoring Apps
WhatsApp Spy Online Trackers and Monitoring AppsWhatsApp Spy Online Trackers and Monitoring Apps
WhatsApp Spy Online Trackers and Monitoring Apps
HackersList
 
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and OllamaTirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
Zilliz
 
Figma AI Design Generator_ In-Depth Review.pdf
Figma AI Design Generator_ In-Depth Review.pdfFigma AI Design Generator_ In-Depth Review.pdf
Figma AI Design Generator_ In-Depth Review.pdf
Management Institute of Skills Development
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
Three New Criminal Laws in India 1 July 2024
Three New Criminal Laws in India 1 July 2024Three New Criminal Laws in India 1 July 2024
Three New Criminal Laws in India 1 July 2024
aakash malhotra
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
HackersList
 
The importance of Quality Assurance for ICT Standardization
The importance of Quality Assurance for ICT StandardizationThe importance of Quality Assurance for ICT Standardization
The importance of Quality Assurance for ICT Standardization
Axel Rennoch
 
EuroPython 2024 - Streamlining Testing in a Large Python Codebase
EuroPython 2024 - Streamlining Testing in a Large Python CodebaseEuroPython 2024 - Streamlining Testing in a Large Python Codebase
EuroPython 2024 - Streamlining Testing in a Large Python Codebase
Jimmy Lai
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
alexjohnson7307
 

Recently uploaded (20)

TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptxIntroduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
 
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
 
CiscoIconsLibrary cours de réseau VLAN.ppt
CiscoIconsLibrary cours de réseau VLAN.pptCiscoIconsLibrary cours de réseau VLAN.ppt
CiscoIconsLibrary cours de réseau VLAN.ppt
 
The Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF GuideThe Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF Guide
 
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
 
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
 
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
 
WhatsApp Spy Online Trackers and Monitoring Apps
WhatsApp Spy Online Trackers and Monitoring AppsWhatsApp Spy Online Trackers and Monitoring Apps
WhatsApp Spy Online Trackers and Monitoring Apps
 
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and OllamaTirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
Tirana Tech Meetup - Agentic RAG with Milvus, Llama3 and Ollama
 
Figma AI Design Generator_ In-Depth Review.pdf
Figma AI Design Generator_ In-Depth Review.pdfFigma AI Design Generator_ In-Depth Review.pdf
Figma AI Design Generator_ In-Depth Review.pdf
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
Three New Criminal Laws in India 1 July 2024
Three New Criminal Laws in India 1 July 2024Three New Criminal Laws in India 1 July 2024
Three New Criminal Laws in India 1 July 2024
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
 
The importance of Quality Assurance for ICT Standardization
The importance of Quality Assurance for ICT StandardizationThe importance of Quality Assurance for ICT Standardization
The importance of Quality Assurance for ICT Standardization
 
EuroPython 2024 - Streamlining Testing in a Large Python Codebase
EuroPython 2024 - Streamlining Testing in a Large Python CodebaseEuroPython 2024 - Streamlining Testing in a Large Python Codebase
EuroPython 2024 - Streamlining Testing in a Large Python Codebase
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
 

Capacity Planning with Free Tools

  • 1. Performance Management with Free and Bundled Tools Adrian Cockcroft Netflix Inc. acockcroft@netflix.com (Co-authored with Mario Jauvin MFJ Associates mario@mfjassociates.net) 2 May, 2009 The Performance People
  • 2. Agenda Overview of Capacity Planning Requirements  and Data Sources Performance Data Collection  Free Network Monitoring Tools  Free System Monitoring Tools  Free Load Generation and Modelling Tools  Licences and References  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 3. What are we talking about? QA Load generation with Grinder or SLAMD, modelling with PDQ and R Network monitoring with Application Tier WireShark, MRTG, monitoring with Orca, Hobbit/Xymon, Cacti, Hobbit/Xymon, BigSister, Cacti, BigSister, Ganglia, Nagios, OpenNMS, XEtoolkit Zenoss, Openxtra, ntop Database Tier monitoring With SEtoolkit, Orca, XEtoolkit May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 4. Capacity Planning Requirements and Data Sources May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 5. Definitions Capacity  – Resource utilization and headroom Planning  – Predicting future needs by analyzing historical data and modeling future scenarios Performance Monitoring  – Collecting and reporting on performance data Free Tools  – Bundled with the OS or available for no $$$ May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 6. Capacity Planning Requirements We care about CPU, Memory, Network and Disk  resources, and Application response times We need to know how much of each resource we  are using now, and will use in the future We need to know how much headroom we have to  handle higher loads We want to understand how headroom varies, and  how it relates to application response times and throughput May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 7. Capacity Planning Challenges Constantly changing infrastructure  Limited attention span from staff  Horizontally scaled commodity systems  Per node software licencing costs too much  Too many tools, too many agents per node  Too much data, not enough analysis  Non-linear and non-intuitive scalability  Lack of tools and metrics for virtualized resources  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 8. Observability Four different viewpoints  Management – Engineering – QA Testing – Operations – Each needs very different information  Ideal would be different views of the same  performance database Reality is a mess of disjoint tools  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 9. Management Viewpoint Daily summary of status and problems  Business oriented metrics  Future scenario planning  Marketing and management input  Concise report with dashboard style status  indicators Free tools: R, Spreadsheet and Web  based displays, no good summarization tools May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 10. Engineering Viewpoint Large volumes of detailed data at several different  time scales Input to tuning, reconfiguring and future product  development Low level problem diagnosis  Detailed reports with drill down and correlation  analysis Free tools: XE/SE Toolkit, Orca, Ganglia, Cacti, R  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 11. QA Test Viewpoint Workload specification tools  Load generation frameworks  Testing for functionality and performance  Regression tools to compare releases  Modelling difference between test configuration  and production configuration Free Tools: The Grinder, SLAMD, R, PDQ  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 12. Operations Viewpoint Immediate timeframe  Real time display, updated in seconds  Alert based monitoring  High level problem diagnosis  Simple high level graphs and views  Free tools: Hobbit/Xymon, BigSister,  Nagios, OpenNMS, MRTG, Cacti, Ganglia, WireShark, ntop May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 13. Measurement Data Interfaces Several generic raw access methods  Read the kernel directly (not a good idea) – Structured system data (Solaris kstat, Linux /proc) – Process data – Network data – Accounting data – Application data – Command based data interfaces  Scrape data from vmstat, iostat, netstat, sar, ps – Higher overhead, lower resolution, missing metrics – Data available is platform specific either way  Much more detail on this topic in the Solaris/Linux Performance  Measurement and Tuning slide deck May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 14. Free Network Monitoring Tools May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 15. SNMP Simple network management protocol  UDP protocol based on port 161  Client/server like  Client is called management application entity – Server is called an agent entity – Agent entity is designed to be implemented  on network hardware, router, switches, etc May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 16. SNMP – MIBs Management information base  Defines the structure and the semantic of the  information that can be reported on Most commonly used is MIB-II which defines a set of  standard networking attributes Interface tables – System level information – Routing tables – Specified using ASN.1 (abstract syntax notation 1)  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 17. SNMP – commands Called PDU (protocol data units)  GET  GETNEXT  GETBULK  SET  Encoded using BER (basic encoding rules)  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 18. Versions Version 1, original version done in May 1991  Version 2, around 1993. Failed because the  IETF credo of “rough consensus and running code” could not be met on securing SNMP Turned into V2c for community string security  (like V1) Version 3, added security and complexity in  1998 May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 19. SNMP tools Too numerous to name all but…  OpenNMS  Nagios  Cacti  MRTG  Net-snmp  See www.snmplink.org – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 20. SNMP tools Snmpwalk – will report all data in a specified  MIB getIf – will report data about interfaces and  includes built-in MIB browser Snmptable – will report tabular data from MIB  tables May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 21. OpenNMS Well…. it’s not that portable  95% java is not 100% java – Requires about 20-30 different platform specific – packages (PostgreSQL, Perl, RRD tool, Tomcat 4 etc…) Difficult to install – Easy auto discovery – Web-based interface – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 22. OpenNMS Main screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 23. OpenNMS Node screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 24. Nagios Easy to build/compile (on Solaris 10)  Easy to install  Quick response from CGI  Configuration is manual and a pain  13 configuration files with all kinds of interrelated – entries Tedious and error prone – Requires plugins to do anything  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 25. Nagios Main screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 26. Nagios Host detail screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 27. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 28. ntop Similar to familiar UNIX top tool for  processes but used for network Provide huge selection of real-time data  Can be found at http://www.openxtra.co.uk/  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 29. ntop – Active Sessions May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 30. ntop Hosts May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 31. ntop Network Load May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 32. ntop_Network_Thruput May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 33. ntop Port Dist May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 34. ntop_Protocol_Dist May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 35. ntop Protocols May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 36. Zenoss Open source monitoring and management of  IT infrastructure Zenoss core is free  Other editions are for a fee  Get it from http://www.zenoss.com/download/  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 37. zenoss Architecture May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 38. zenoss Dash Config May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 39. zenoss Google May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 40. zenoss Google Alerts May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 41. Zenoss Graphs May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 42. zenoss Topology May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 43. Zeroshell 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 44. Zeroshell (cont) Small Linux distribution for servers and  embedded devices Provides network services:  Load balancing – RADIUS – QoS – Captive portal, proxy, wireless access point – 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 45. IPT-Netflow Netflow Linux kernel module for collecting  per connection traffic Designed for Linux router with heavy network  load 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 46. NFDUMP and NfSen NFDUMP is a set of tools to capture/record,  dump, filter and replay Netflow data Filters based on user-defines profiles – NfSen is a graphical Web-based front-end for  NFDUMP 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 47. NetTraMet and others Meter for network traffic flows  First implementation of real time flow  measurement (RTFM) or RFC 1272 Flow-tools  Software package for collecting and processing – NetFlow data See HUGE list of flow management tools at  http://www.switch.ch/network/projects/completed/ – TF-NGN/floma/software.html 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 48. Internet2 Performance Node: Live CD perfSONAR Network Performance Toolkit  2.0 Customized version of a Knoppix (bootable  Linux distribution) Ping/traceroute  OWANP (one-way ping)  BWCTL (bandwidth Test Controller)  Iperf (measure maximum TCP bandwidth) – Trulay – 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 49. Internet2 NetFlow reports Interactive weekly reports  Dates back to 2002  Bulk data (more than 10MB) and full data  Throughputs, size, durations, percentiles  Application types  5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 50. Internet2 NetFlow reports 5/2/2009 Adrian Cockcroft and Mario Jauvin
  • 51. MRTG Really simple to install and configure  Require manual config file creation  Only for MIB-II interface plotting out of the  box Graphing not flexible, axis, time etc  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 52. MRTG Interface screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 53. MRTG Other CPU screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 54. RRD tool Software to store, retrieve and graph  numerical time series data Use a round robin algorithm  Data files are a fixed size  Don’t grow – Don’t require maintenance – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 55. RRD tool Compiles on most platforms  Used by many SNMP based tools  OpenNMS – Cacti – BigSister – WeatherMap4RRD – MailGraph – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 56. RRD tool 14all CGI script that plots data similar to  MRTG Configurable to collect data at different  interval (unlike MRTG) Flexible and variable in what data can be  collected May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 57. RRD tool Sample screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 58. RRD tool Screen shot  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 59. RRD tool Create a RRD database  rrdtool create test.rrd --start 920804400 DS:speed:COUNTER:600:U:U RRA:AVERAGE:0.5:1:24 RRA:AVERAGE:0.5:6:10 May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 60. RRD tool Create a graph  rrdtool graph speed.png --start 920804400 --end 920808000 DEF:myspeed=test.rrd:speed:AVERAGE LINE2:myspeed#FF0000 May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 61. Free Performance Data Collection and Rules Toolkits May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 62. SE toolkit Example Tools A free performance toolkit for rapidly creating custom data sources  Makes all the very extensive Solaris metrics easily available  Very system specific and not enough metrics exist to port to Linux  Written by Rich Pettit with contributions from Adrian Cockcroft  Get SE3.4 from http://sourceforge.net/projects/setoolkit/  Open source with support for SPARC & x86 Solaris 8, 9, 10  Function Example SE Programs Rule Monitors cpg.se monlog.se mon_cm.se live_test.se percollator.se zoom.se virtual_adrian.se virtual_adrian_lite.se Disk Monitors siostat.se xio.se xiostat.se iomonitor.se iost.se xit.se disks.se CPU Monitors cpu_meter.se vmmonitor.se mpvmstat.se Process Monitors msacct.se pea.se ps-ax.se ps-p.se pwatch.se pw.se Network Monitors net.se tcp_monitor.se netmonitor.se netstatx.se nfsmonitor.se nx.se Clones iostat.se uname.se vmstat.se nfsstat-m.se perfmeter.se xload.se Data browsers aw.se infotool.se multi_meter.se Contributed Code anasa dfstats kview systune watch orcollator.se Test Programs syslog.se cpus.se pure_test.se collisions.se uptime.se dumpkstats.se net_example nproc.se kvmname.se May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 63. SE language features SE is a 64bit interpreted dialect of C  – Not a new language to learn from scratch! – Standard C /usr/ccs/bin/cpp used at runtime to preprocess SE scripts – Main omissions - pointer types and goto – Main additions - classes and “string” type – powerful ways to handle dynamically allocated data – built-in fast balanced tree routines for storing key indexed data Dynamic linking to all existing C libraries  – Built-in classes access kernel data – Supplied class code hides details, provides the data you want Example scripts improve on basic utilities e.g. siostat.se, nx.se, pea.se  Example rule based monitors e.g. virtual_adrian.se, orcallator.se  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 64. Creating Rules Based on real experiences of all the things that go  wrong Capture an approximation to intuition  Test and calibrate rules on as many systems as  possible Easy??  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 65. Configuring Rules Thresholds should be configured  Very application dependent  Capture the operating envelope  Measure the underlying values – Measure peaks in normal operation – Note values during problems – Set thresholds to capture the difference – This applies to any tool  SE Toolkit, Cacti, Ganglia, Nagios, OpenNMS etc. – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 66. Rules as Objects Define only the input and output information  Hide implementation details  Make high level rule objects trivial to use and  reuse SE Toolkit does it in three lines of code:  #include <rules file> – Declare rule object as a typed variable – Read and use or print object status – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 67. quot;virtual adrianquot; rules summary Disk Rule for all disks at once  – Looks for slow disks and unbalanced usage Network Rule for all networks at once  – Looks for slow nets and unbalanced usage Swap Rule - Looks for lack of available swap space  RAM Rule - Looks for short page residence times  CPU Power Rule  – Scales on MP systems – Looks for long run queue delays Mutex Rule - Looks for kernel lock contention and high sys CPU time  TCP Rule  – Looks for listen queue problems – Reports on connection attempt failures May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 68. XE Toolkit - www.xetoolkit.com Complete re-write of SE Toolkit by Rich Pettit  Extensible Java collector, customize with jar files – Release 1.2 available April 2008 – Multi-platform support Solaris, Linux/x86, Windows, BSD, – OSX, HP-UX, AIX, Linux/s390, Linux/Power Licencing  Free GPL version for standard use and shared derivations – Open source, hosted at http://sourceforge.net/projects/xe-toolkit/ – Commercial support available if needed – Commercial product license for custom in-house derivations – Addresses all the issues people had with SE toolkit !  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 69. Captive Metrics / XE Toolkit Architecture May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 70. Free System Monitoring Tools May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 71. Collated Performance Data - Orca Problems with time sync when collecting data from multiple tools  – No timestamp at all for vmstat, netstat, df... – No timestamp by default for iostat and ps... – No way to collect realtime stats from an http logfile Use SE Toolkit to generate one timestamped row containing all the data  – First version of percollator.se written by Adrian Cockcroft in 1996 – Extended orcallator.se written by Blair Zajac a few years later – Graphs generated by orca batch job feeding rrdtool based web pages – Active community developing tool at http://www.orcaware.com – Extended to collect much more data, including process workloads – Basic data collection ported to Linux, HP-UX and Windows Orca is basically MRTG for System metrics rather than Network  See http://www.orcaware.com/orca/docs/Orca_Understanding_Performance_Data.ppt  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 72. Orca data collections Collected using “procollator” reading info from /proc on Linux  [Uptime] [Average # Processes in Run Queue (Load Average)] [CPU Usage] [New Process Spawn Rate] [Number of System & Running Processes] [Context Switches & Interrupts Rate] [Interface Input Bits Per Second] [Interface Output Bits Per Second] [Interface Input Packets Per Second] [Interface Output Packets Per Second] [Interface Input Errors Per Second] [Interface Output Errors Per Second] [Interface Input Dropped Per Second] [Interface Output Dropped Per Second] [Interface Output Collisions] [Interface Output Carrier Losses] [TCP Current Connections] [IP Statistics] [TCP Statistics] [ICMP Statistics] [UDP Statistics] [Disk System Wide Reads/Writes Per Second] [Disk System Wide Transfer Rate] [Disk Reads/Writes Per Second] [Disk Transfer Rate] [Disk Space Percent Usage] [Physical Memory Usage] [Swap Usage] [Page Ins & Outs Rate] [Swap Ins & Outs Rate] Orca on Solaris collects many more metrics than shown above  Strength of Orca is lots of detailed metrics with low overhead for collection  Easily customized to add more system metrics or application metrics  Orca can already track HTTP traffic and parse log files  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 73. All metrics are stored in “round robin database” format using RRDtool to generate displays over different time spans Web page is simple collection of plots with drill down by metric or by time Suitable for monitoring a relatively small number of systems in great detail, e.g. backend database servers May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 74. Cacti – www.cacti.net Web based user interface based on RRDtool  More sophisticated GUI than Orca or MRTG  Less sophisticated system metric collection,  but more coverage of networking Better management of groups of systems  and devices than Orca, useful for tens to hundreds of nodes Access control and personalization for users  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 75. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 76. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 77. Ganglia – www.ganglia.info Web based RRDtool GUI somewhat similar to Cacti  Better management of clusters of systems and  devices than Cacti, useful for hundreds to thousands of nodes in a hierarchy of clusters Provides many summary statistic plots at cluster  level and collects detailed configuration data XML based data representation  Uses low overhead network protocol  In common use at hundreds of large HPC Grid sites,  less visibly in use at some large commercial sites May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 78. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 79. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 80. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 81. BigBrother, BigSister, Hobbit/Xymon Network and system dashboard alert monitor  Widely used at internet sites  Bigbrother is at http://www.bb4.com  Taken over by Quest Inc. – Bigsister is at http://bigsister.graeff.com  Doesn’t seem to be widely used – Hobbit changed its name to Xymon  Xymon is a scalable and efficient open source re-write – of BigBrother, compatible with BB collector scripts Distribution at http://www.xymon.com documentation at – http://en.wikibooks.org/wiki/System_Monitoring_with_Xymon – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 82. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 83. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 84. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 85. Free QA Test and Modelling Tools May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 86. QA Test Requirements Generate test workload  SLAMD, Grinder – Collect performance metrics  Any of the tools already mentioned – Report regression against baseline  Predict capacity needed for production system  Use spreadsheets for simple linear prediction – Use modelling tools such as PDQ for queuing models – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 87. Grinder 3 - Powerful New Features 100% Pure Java - works on any hardware platform and any  operating system that supports J2SE 1.3 and above. Java and Jython based load testing framework  Web Browsers: simulate web browsers using HTTP, and HTTPS. – Web Services: test interfaces using SOAP and XML-RPC. – Database: test databases using JDBC. – Middleware: RPC and MOM based systems using IIOP, RMI/IIOP, – RMI/JRMP, and JMS. Other Internet protocols: POP3, SMTP, FTP, and LDAP. – See http://grinder.sourceforge.net/g3/features.html  J2EE Performance Testing with BEA WebLogic Server by  Peter Zadrozny, Philip Aston and Ted Osborne, originally published by Expert Press and now by APress uses Grinder 2 throughout. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 88. SLAMD Load generation framework, written in Java  Originally built to test LDAP servers by Sun  Extended to be very generic and published  as open source. Actively being developed. Sophisticated functions and user interface  See http://www.slamd.com  Latest Release 2.0 has better usability focus  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 89. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 90. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 91. May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 92. PDQ Modelling Tool Dr Neil Gunther’s toolkit at  http://www.perfdynamics.com Library used from C or Perl provides MVA queueing  models Use to calibrate in QA and predict in production  PDQ modelling tool details:  The Practical Performance Analyst Dr. Neil Gunther - – McGraw-Hill, 1998 ISBN 0-07-912946-3 Analyzing Computer System Performance with Perl:PDQ – 2004, ISBN 3-54-020865-8 May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 93. R – A Free Statistics Package http://www.r-project.org   Runs on any platform  Compatible with S-PLUS  Very powerful/nice scripting language May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 94. CHP - “Cockcroft Headroom Plot” R Based plotting tool (demo)   Examples importing iostat, vxstat  Series of articles in CMG Measure-IT  Blogged at http://perfcap.blogspot.com May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 97. Java App Server Headroom Plot Mixed Page Weights  Thread-limited appserver  CPU utilization is low  Measurements are of a  single SOA service pool Response is in  milliseconds Throughput is executions/s  Exec Resp Min. : 1.00 Min. : 0.0 1st Qu.: 2.00 1st Qu.: 150.0 Median : 8.00 Median : 361.0 Mean : 64.68 Mean : 533.5 3rd Qu.: 45.00 3rd Qu.: 771.9 Max. :10795.00 Max. :19205.0
  • 100. References and Conclusion May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 101. Licences for Free Tools Open Source Initiative  “OSI Approved licences” – http://opensource.org/licenses/category – Comparisons of Common Licences  http://zooko.com/license_quick_ref.html – May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 102. Web Pages and Books Adrian’s Performance and other topics blog  http://perfcap.blogspot.com – MFJ Associates performance tools link page  http://www.mfjassociates.net/perf_links.html – More free tools compiled by John Sellens  http://www.generalconcepts.com/resources/monitoring/ – More tools compiled by Openxtra  http://www.openxtra.co.uk/resource-center/open_source_network_monitor_tools.php – SE toolkit info: Sun Performance and Tuning - Java and the Internet - Adrian  Cockcroft and Richard Pettit - Sun Press/Prentice Hall, 2nd Edition, 1998 ISBN 0-13- 095249-4 Solaris 8 and Linux: System Performance Tuning 2nd Edition – Gian-Paolo Musumeci,  O’Reilly 2002 ISBN: 0-596-00284-X Solaris Internals http://www.solarisinternals.com  Richard McDougall and James Mauro - new 2nd edition and new performance book by – Richard McDougall and Brendan Gregg May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 103. Concluding Remarks Many large installations depend on free tools  A full suite of functionality is available  Several tools are needed to cover the bases  Tradeoff between function and ease of use  Support may be available, but typically  Google is the best support tool Functionality is increasing….  May 2, 2009 Adrian Cockcroft and Mario Jauvin
  • 104. Questions? acockcroft@netflix.com mario@mfjassociates.net Updated presentations http://www.slideshare.net/adrianco May 2, 2009 Adrian Cockcroft and Mario Jauvin