Containers and Performance Co-Pilot Nathan Scott

Slides:



Advertisements
Similar presentations
NAGIOS AND CACTI NETWORK MANAGEMENT AND MONITORING SYSTEMS.
Advertisements

Chapter 9 Part III Linux File System Administration
Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel: An Operating System Architecture for Application-Level Resource Management.
Lightweight virtual system mechanism Gao feng
1 Cache and Caching David Sands CS 147 Spring 08 Dr. Sin-Min Lee.
Discussion Week 7 TA: Kyle Dewey. Overview Midterm debriefing Virtual memory Virtual Filesystems / Disk I/O Project #3.
KVM and Container Performance and Isolation Deep Dive.
1 Lecture 20 – Caching and Virtual Memory  2004 Morgan Kaufmann Publishers Lecture 20 Caches and Virtual Memory.
CS 416 Operating Systems Design Spring 2008 Liviu Iftode
PRASHANTHI NARAYAN NETTEM.
Cache Organization of Pentium
Jiapeng Xiu Chapter 3 Memory Management Chapter 3 Memory Management —— Solaris Memory Monitor.
Virtual Memory By: Dinouje Fahih. Definition of Virtual Memory Virtual memory is a concept that, allows a computer and its operating system, to use a.
TM Herding Penguins with Performance Co-Pilot Ken McDonell Performance Tools Group SGI, Melbourne.
Hp education services education.hp.com 33 GlancePlus Version B.02 H4262S Module 3 Slides.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Interprocess Communication: ( ) CPE Operating Systems.
Recent advances in the Linux kernel resource management Kir Kolyshkin, OpenVZ
Guide to Linux Installation and Administration, 2e1 Chapter 10 Managing System Resources.
Architectural Characterization of an IBM RS6000 S80 Server Running TPC-W Workloads Lei Yang & Shiliang Hu Computer Sciences Department, University of.
3 Computing System Fundamentals
Linux Introduction What is Linux? How do you use it?
Computer Architecture And OpenStack 刘国辉 EasyStack Co-Founder & CTO.
Operating Systems CMPSC 473 Virtual Memory Management (4) November – Lecture 22 Instructor: Bhuvan Urgaonkar.
Linux Architecture Overview 1. Initialization Uboot – hardware init, loads kernel Kernel – remaining initialization, calls “init” Init – 1 st process,
System Level Performance Management with PCP Nathan Scott
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
Kenfe-Mickael Laventure Laurent Malvert Macquarie University LEMONA Linux Enhanced Monitoring Architecture Linux zest for security.
Click to add text © 2012 IBM Corporation Design Manager Server Instrumentation Instrumentation Data Documentation Gary Johnston, Performance Focal Point,
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
January 16, 2007 COMS 4118 (Operating Systems I) Henning Schulzrinne Dept. of Computer Science Columbia University
PC hardware and x86 programming Lec 2 Jinyang Li.
Chapter 6: Using The Windows Performance and Reliability Monitor.
Virtual Memory Additional Slides Slide Source: Topics Address translation Accelerating translation with TLBs class12.ppt.
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
CSE 466 – Fall Introduction - 1 User / Kernel Space Physical Memory mem mapped I/O kernel code user pages user code GPLR virtual kernel C
Module 9 Planning and Implementing Monitoring and Maintenance.
VM vs Container Xen, KVM, VMware, etc. Hardware emulation / paravirtualization Can run different OSs on the same box Dozens of instances OS sprawl problem.
Performance Analysis of HPC with Lmbench Didem Unat Supervisor: Nahil Sobh July 22 nd 2005 netfiles.uiuc.edu/dunat2/www.
Overview of Windows Driver Development Reference: us/gstart/hh/gstart/gs_intro_031j.asp.
Chapter 9 Memory Organization. 9.1 Hierarchical Memory Systems Figure 9.1.
Containers vs Others Xen, VMware, etc. ● Emulation/paravirtualization ● Can run different OSs on the same box ● Lower density/scalability ● OS sprawl problem.
Virtualization which isn't LXC (Linux Containers) Dobrica Pavlinušić DORS/CLUC, Zagreb,
VM vs Container Xen, KVM, VMware, etc. ● Hardware emulation / paravirtualization ● Can run different OSs on the same box ● Dozens of instances ● OS sprawl.
Seven Problems of Linux Containers
Linux Containers and Docker
Computer Sciences Department University of Wisconsin-Madison
Cache Organization of Pentium
Linux Containers Overview & Roadmap
Andy Wang COP 5611 Advanced Operating Systems
Chapter 4 – Introduction to Operating System Concepts
Containers and Virtualisation
Programming the Performance Co-Pilot toolkit
Computer Architecture
Introduction to the Kernel and Device Drivers
Data Representation – Instructions
Sequential Execution Semantics
Advanced Operating Systems
Directory-based Protocol
Page Replacement.
Page that info back into your memory!
Count The Fingers And Add
Morgan Kaufmann Publishers Memory Hierarchy: Virtual Memory
Linux Architecture Overview.
Virtual Memory Prof. Eric Rotenberg
CSE 471 Autumn 1998 Virtual memory
Week1 software - Lecture outline & Assignments
Configuring Disk Quotas
Presentation transcript:

Containers and Performance Co-Pilot Nathan Scott Performance Tools, Red Hat January 2015

Outline Performance Co-Pilot (PCP) Overview PCP Basics Kernel Instrumentation namespaces cgroups Containers in PCP

Overview What is PCP? Open source toolkit System-level analysis Live and historical Extensible (monitors, collectors) Distributed

Architecture

Metrics pminfo --desc -tT --fetch disk.dev.read disk.dev.read [per-disk read operations] Data Type: 32-bit unsigned int InDom: 60.1 Semantics: counter Units: count Help: Cumulative count of disk reads since boot time Values: inst [0 or "sda"] value 3382299 inst [1 or "sdb"] value 178421

Kernel Instrumentation for Containers

cgroup accounting [subsys].stat files below /sys/fs/cgroup individual cgroup or summed over children blkio IOPs/bytes, service/wait time – aggregate/per-dev Split up by read/write, sync/async cpuacct Processor use per-cgroup - aggregate/per-CPU memory mapped anon pages, page cache, writeback, swap, active/inactive LRU state

namespaces Example: cat /proc/net/dev Contents differ inside vs outside a container Processes (e.g. cat) in containers run in different network, ipc, process, uts, mount namespaces Namespaces are inherited across fork/clone Processes within a container share common view

Container Analysis using PCP Container Analysis using PCP

Goals Allow targeting of individual containers e.g. /proc/net/dev pminfo --fetch network vs pminfo –fetch –container=crank network Zero installation inside containers required Simplify your life (dev_t auto-mapping) Data reduction (proc.*, cgroup.*)

Mechanisms pminfo -f –host=acme.com –container=crank network Wire protocol extension Inform interested PCP collector agents Resolving container names, mapping names to cgroups, PIDs, etc. setns(2) Runs on the board, plenty of work remains New monitor tools with container awareness

Resources http://www.pcp.io Source, downloads, books, FAQ, mailing lists git://git.pcp.io/pcp

Questions? pcp.io Questions? [pcp.io]