What you'll learn:
- Familiar with monitoring tools
- Familiar with subsystems like CPU/Memory/IO/Network
- Hands-On labs with examples.
- High Memory Utilization causing performance issues.
- High CPU Utilization causing performance issues.
- Network Utilization (Packet loss, errors) causing performance issues.
- High Disk IO Utilization causing performance issues.
- Familiar with tcpdump - Network Packet Analyzer
- Familiar with lsof - List open files
- Linux Find commands with various examples
- Command to list out top processes consuming highest memory utilization
- Command to list out top processes consuming highest cpu utilization
- Viewing Hardware Resources
- Configuring Kernel Tunables
- Managing Resource Limits
- Proc File System
- Sysfs File System
- Kernel Modules
- lsof, tcpdump commands
Course Contents
Linux Performance Monitoring & Tuning
Introduction about Performance monitoring in Linux
Monitoring Processes using ps command
Monitoring Processes using top command
Monitoring memory usage
Monitoring File System Usage
GNOME System Monitor
Practice Lab Session
Overview Sysstat Package Utilities
Lab - Iostat command
Lab - mpstat command
Lab - pidstat command
Overview SAR
Advantages of SAR
Lab - SAR
Scheduling tasks with Systemd timer
Monitoring Systems using Cockpit
Monitoring Systems using performance co-pilot
Familiar with various Commands to manage performance issues in Linux Servers
top
vmstat
iostat
free
lsof
tcpdump- Network Packet Analyzer
Following are the Linux performance statistics using sar command.
Collective CPU usage
Individual CPU statistics
Memory used and available
Swap space used and available
Overall I/O activities of the system
Individual device I/O activities
Run queue and load average data
Network statistics
Report sar data from a specific time
Viewing Hardware Resources
Viewing kernel messages using dmesg command
Retrieving CPU Information
Retrieving DMI Information - dmidecode
Retrieving peripheral Information
hwloc & lshw command
Configuring Kernel Tunables
Proc File System
Kernel Tunables
Modifying Kernel Tunables
Modify Kernel Tunables Using Sysctl Command
Modify Kernel Tunables Persistently
Sysfs File System
About Kernel Modules
Practice Lab Session
Overview about tuning profiles
Managing profiles from the command line
Lab Session - Tuning profile
Managing Resource Limits
Limiting System Resources with ulimit
Configuring Persistent ulimit Rules
Practice Lab Session
Setting Limits for Services
Lab - Configure the service with a cgroup
Process Management
Understanding ps commands with custom properties & Nice values etc
Different stats of a process like "D", "S", "T", "Z" etc
Kill commands to terminate the process
Lab
Linux Find Commands
Basic find commands for finding files with names
Find files based on their permissions
Search files based on owners & groups
Find files and directories based on date & time
Find files and directories based on size
Top Running Processes
Command to list out top processes consuming highest memory utilization
Command to list out top processes consuming highest cpu utilization
Lab on lsof - List open files & fuser
lsof command used in many Linux/Unix like system that is used to display list of all the open files and the processes.
Lab on tcpdump- Network Packet Analyzer
For example: number of packets received (transmitted) through the network card, statistics of packet failure etc
Practice Lab Sessions
Practical Lab Session - High CPU Utilization
Practical Lab Session - High Memory Utilization