橘子学linux调优之工具包的安装

2024-02-06 20:44

本文主要是介绍橘子学linux调优之工具包的安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天在公司无聊的弄服务器,想着有些常用的工具包安装一下,这里就简单记录一下。

一、sysstat的安装和使用

1、安装

我是通过源码的方式安装的,这样的好处在于可以自由选择你的版本,很直观。
直接去github上找到sysstat的地址,选择对应的tag即可。我这里选择的是12.6.0,这个版本不是最新的,但是功能是完备的。

1,1、源码下载

https://github.com/sysstat/sysstat/releases/tag/v12.6.0
在这里插入图片描述
下载他的zip包即可。tar包也可以,看你习惯。
在这里插入图片描述

1. 2、上传解压

然后放在你的linux服务器目录下,我的位置在/opt/linux下面,如下图:
在这里插入图片描述

使用unzip sysstat-12.6.0.zip进行解压。

1. 3、编译安装

然后进入解压后的sysstat-12.6.0目录。
依次执行如下命令进行编译安装。

./configure
make
sudo make install

安装之后,需要配置环境变量,vim /etc/profile
在这里插入图片描述
添加:
export PATH=/systat安装目录/sysstat:$PATH
然后使用source刷新配置文件。
source /etc/profile
然后执行mpstat -V查看安装是否完成即可。(mpstat就是sysstat包中的一个工具,有了这个就代表装上了。)
在这里插入图片描述

2、使用

他这个包下面包含很多工具,我们就先按照github上的描述贴出一部分他的主要工具有哪些,不然用的都不知道用啥。

The sysstat package contains various utilities, common to many commercial Unixes, to monitor system performance and usage activity:iostat reports CPU statistics and input/output statistics for block devices and partitions.
mpstat reports individual or combined processor related statistics.
pidstat reports statistics for Linux tasks (processes) : I/O, CPU, memory, etc.
tapestat reports statistics for tape drives connected to the system.
cifsiostat reports CIFS statistics.
Sysstat also contains tools you can schedule via cron or systemd to collect and historize performance and activity data:sar collects, reports and saves system activity information (see below a list of metrics collected by sar).
sadc is the system activity data collector, used as a backend for sar.
sa1 collects and stores binary data in the system activity daily data file. It is a front end to sadc designed to be run from cron or systemd.
sa2 writes a summarized daily activity report. It is a front end to sar designed to be run from cron or systemd.
sadf displays data collected by sar in multiple formats (CSV, XML, JSON, etc.) and can be used for data exchange with other programs. This command can also be used to draw graphs for the various activities collected by sar using SVG (Scalable Vector Graphics) format.
Default sampling interval is 10 minutes but this can be changed of course (it can be as small as 1 second).

翻译一下就是:

sysstat包包含许多商业Unix通用的各种实用程序,用于监视系统性能和使用活动:iostat报告块设备和分区的CPU统计信息和输入/输出统计信息。
mpstat报告单个或组合的处理器相关统计信息。
pidstat报告Linux任务(进程)的统计信息:I/O、CPU、内存等。
tapestat报告连接到系统的磁带驱动器的统计信息。
cifsiostat报告CIFS统计信息。
Sysstat还包含可以通过cron或systemd计划的工具,用于收集和历史化性能和活动数据:sar收集、报告和保存系统活动信息(请参阅下面由sar收集的指标列表)。
sadc是系统活动数据收集器,用作sar的后端。
sa1收集二进制数据并将其存储在系统活动每日数据文件中。它是sadc的前端,设计用于从cron或systemd运行。
sa2写一份总结的日常活动报告。它是sar的前端,设计用于从cron或systemd运行。
sadf以多种格式(CSV、XML、JSON等)显示sar收集的数据,并可用于与其他程序进行数据交换。该命令还可以用于使用SVG(可缩放矢量图形)格式为sar收集的各种活动绘制图形。
默认采样间隔为10分钟,但这当然可以更改(可以小到1秒)。

至于具体的用法和参数,我们后面不断在案例中提出,并且会完善回来这里。而且对于开发来说,很多工具是用不到的。

二、stress的安装和使用

stress 是一个 Linux 系统压力测试工具,这里我们用作异常进程模拟平均负载升高的场景。

1、安装

# 需要安装扩展源
yum -y install epel-release# 安装stress命令
yum -y install stress

执行完,上述步骤,输入stress回车即可。发现已经有了这个工具
在这里插入图片描述

2、使用

stress命令参数:-c, --cpu N :产生 N 个进程,每个进程都反复不停的计算随机数的平方根; -t, --timeout N:在 N 秒后结束程序; -i, --io N :产生 N 个进程,每个进程反复调用 sync() 将内存上的内容写到硬盘上 -m, --vm N :产生 N 个进程,每个进程不断分配和释放内存 
--vm-bytes B: 指定分配内存的大小,比如 --vm-bytes 128M 表示申请128M的内存大小--vm-stride B 不断的给部分内存赋值,让 COW(Copy On Write)发生 
--vm-hang N 指示每个消耗内存的进程在分配到内存后转入睡眠状态 N 秒,然后释放内存,一直重复执行这个过程
--vm-keep 一直占用内存,区别于不断的释放和重新分配(默认是不断释放并重新分配内存) 
-d, --hadd N 产生 N 个不断执行 write 和 unlink 函数的进程(创建文件,写入内容,删除文件) 
--hadd-bytes B 指定文件大小
--backoff N 等待N微妙后开始运行
-q, --quiet 程序在运行的过程中不输出信息 
-n, --dry-run 输出程序会做什么而并不实际执行相关的操作 
--version 显示版本号 
-v, --verbose 显示详细的信息

我们来做个例子说明一下这个东西的使用方法。

$ stress --cpu 1 --timeout 600
表示启动一个进程,不断的计算随机数的平方根,然后持续时间是600秒,换言之就是这600秒内,其对于一个cpu的占用是拉满到百分之百的。

stress -i 1 --timeout 600
表示启动一个进程,在600秒内不断地调用sync()系统函数,把缓冲区内容刷盘,也就是产生一个IO密集型的任务。

其余的我们用到再说。

这篇关于橘子学linux调优之工具包的安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/685486

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断