As Linux system administrators , it is more than essential to be aware of any developments that the system or its associated services can register every day, since this is essential for stable and secure servers. Today we have hundreds of open source tools that allow us to access information in real time and this is a great help; but if for some reason you need to access events in a previous period of time we may have difficulties. To avoid these types of failures and to access previous events , we have the sysstat tool dedicated to this purpose..
For this reason TechnoWikis will explain what it is and how to install sysstat in two of the most used distributions in Linux: CentOS 7 and Ubuntu 18.
What is sysstat?
The Sysstat utility is a collection of tools that have been designed to collect information about the performance of a system on Linux and record them over time periods.
Among the tools available with sysstat we find:
Reports on CPU statistics and input and output statistics for block devices and partitions
Deliver statistics associated with the individual or combined processor.
Create a report on the statistics of Linux tasks (processes) such as I / O, CPU, memory and more.
Reports statistics on tape drives connected to the system
Deliver a report on CIFS statistics
Similarly, Sysstat contains tools that can be programmed through cron or systemd in order to collect performance and activity data, these are:
Collect, report and save system activity information
System activity data collector, and is used as a backend to sar
It collects and stores binary data in the daily system activity data file, as such it is an interface for sadc which can be run from cron or systemd
Write a summary report of daily activity and can be executed from cron or systemd
It shows the data collected by sar in multiple formats such as CSV, XML, JSON, and can be used to exchange data with other programs
One of the most practical tools for collecting system data is sar, it gives us details of information such as:
Information offered by sar
- Statistics of memory usage and exchange space, virtual memory, paging and fault statistics.
- Process creation activity.
- Input / output statistics and transfer rates either globally, by device, by partition or by network file system.
- CPU statistics including virtualization.
- Traffic statistics of the fiber channel.
- Network statistics with details of the network interface activity (number of packets and kB received and transmitted per second, etc.) network device failures, network traffic statistics for IP, TCP, ICMP and UDP based on SNMPv2 standards, support for IPv6 related protocols and more.
- NFS server and client activity.
- USB devices on the computer.
- Software processing statistics based on software (softnet) and many more.
Main features of Sysstat
- It works on both 32 and 64 bit architectures.
- Displays the average statistical values ​​at the end of the reports.
- Compatible with UP and SMP machines, integrating machines with multi-threaded or multi-threaded processors.
- Compatible with fast connection CPUs.
- System statistics that are generated by sar or sad can be exported in several different formats such as CSV, XML, JSON, SVG and more.
- Intelligent color output to improve statistics reading.
1. How to install and use Sysstat on CentOS 7 Linux
Step 1
To install Sysstat on CentOS 7 we will execute the following command. There we enter the letter and to confirm the download and installation of Sysstat in CentOS 7.
yum install sysstat
Step 2
We can check, if we want, the version of Sysstat installed with the following command:
mpstat -V
Step 3
As we have indicated, Sysstat is a set of practical utilities such as:
Displays the activity of the CPU in the system
mpstat
Note
We can run mpstat -P ALL to view each available processor.
View the use of resources of a specific process
pidstat
Step 4
We can filter the results by process with the following syntax:
pidstat -t -C "Process"
iostat
Which allows to see the use of the disk system:
Note
In the various results, we can see that% user,% nice,% system,% iowait and% idle describe the ways in which the CPU can be used in Linux, there,% user and% nice refers to software programs ,% system indicates the kernel's internal operation,% iowai refers to the input / output of data such as reading or writing a hard disk, etc.
Step 5
One of the most useful tools is the sar command, this allows you to see the general activity of using system resources and not only of a particular element:
2. How to configure Sysstat on CentOS 7 Linux
It is possible to program the sar command to run at regular intervals in order to collect the information as necessary. This is possible through cron.
Step 1
To do this we must create a file called sysstat in /etc/cron.d, and from there tell cron to run every day at a specific time range, we execute the following:
sudo more /etc/cron.d/sysstat
Note
In line * / 10, reference is made to sar running every 10 minutes for data collection tasks.
Step 2
These reports are hosted in the var / log / sa directory, this can be seen as follows:
ls / var / log / sa
Note
The number 19 refers to the day on which the information was collected.
Step 3
The sar command can be used with some variables such as:
View the use of RAM memory including swap or swap memory
sar -W
View the system load
sar -q
Step 4
Some other options are:
View details of network devices
3. How to install and use Sysstat on Ubuntu 18 Linux
Step 1
In the case of Ubuntu 18 we can install Sysstat with the following command:
sudo apt install sysstat
Step 2
Once installed it will be necessary to enable it by editing the file / etc / default / sysstat and there changing the ENABLED line from false to true:
We save the changes with the keys:
+ O Ctrl + O
We leave it with the keys:
+ X Ctrl + X
Step 3
After this we can verify the tasks with the following command:
service sysstat status
Step 4
By default Sysstat collects the data every 10 minutes, if we want to change this time frequency, we will edit the following file:
sudo nano /etc/cron.d/sysstat
Step 5
There we enter the number, in minutes, in which we want the collection to run, it is under the line
Activity reports every 10 minutes everyday
In this case we enter the number 2 to run every 2 minutes. We save the changes and leave the editor..
Step 6
After a period of time, we can run the following line to see the data that has been collected in Ubuntu 18:
ll / var / log / sysstat
Step 7
We can also directly execute the sar command to see the collected results:
Step 8
As in CentOS 7, we have the options to see specific elements such as:
CPU
sar -W
System load
sar -q
Sysstat is a valuable tool for collecting and managing information not only in real time but in periods of time for Linux environments.