最近公司项目上线时,红蓝线巡检时,部分服务器因配置高但使用率低而需要降级。 为了避免降级,如何增加内存和CPU使用率?
这可以通过脚本来实现。 当前服务器操作系统版本:-7_5。
连接服务器后,登录账号。
1.查看当前CPU使用率。 输入最上面的命令:
如下图所示,可以看到CPU使用率:0.7%
2、输入cd /usr/local,进入本地目录,使用sudo touch cpu.sh在该目录下新建shell脚本。 并将以下文本写入脚本并保存:
#!/bin/bash endless_loop() { echo -ne "i=0; while true ;do i=i+100; i=100;done" | /bin/bash & } if [ $# != 1]; then echo "USAGE: $0 " exit 1; fi for i in `seq $1` do endless_loop pid_array[$i]=$!; done for i in "${pid_array[@]}"; do echo ' kill' $i ';' ; done
3.执行 sudo nohup sh ./cpu.sh 7 &
(这里需要注意的是,我的CPU是8核,所以需要占用7个才能达到我想要的CPU使用率,红色标记的数字是需要占用的CPU个数,需要修改根据您的实际需要)
执行完后可以看一下进程:输入:ps -ef|grep bash,可以看到有7个bash进程
然后输入top命令查看CPU使用率。 您可以看到 7 bash 正在运行完整的 7 个 CPU。
就是这样。 这是关于多核的。 单核 CPU 略有不同。 我们来谈谈单核CPU如何在不崩溃的情况下提高内存使用率。
对于单核来说,不可能让那个CPU满了,所以这里需要一个限制脚本。本文档所需的资源是免费提供的,您可以点击下载:提高cpu和内存使用率的资源文件- Linux文档资源-CSDN下载
1、连接服务器,输入cd /usr/local,进入本地目录。 下载的资源解压后,你会看到里面有cpu.sh。 您可以将该文件直接放在该目录中。
2. 执行sudo chmod +xcpu.sh。 然后使用 sudo nohup sh ./cpu.sh 1& 命令来填满cpu。 (注:执行该命令后,目录会自动生成一个nohup.out文件,使用sudo tail -200f nohup.out查看该文件,可以看到生成的PID,即bash的进程号。第二个进程号抄下来)
3、将解压后的-1.1.tar.gz放入本地目录。 执行命令:sudo tar --1.1.tar.gz
4、进入解压目录:-1.1
5、执行命令:sudo make
6、然后执行命令:sudo ./ -p PID -l 55%(命令中的PID)
执行top命令后,可以看到CPU占用率已经完美下降,一直在60以下的范围内变化。
至此操作结束。