调整系统配置选项,充分发挥系统硬件性能。
参数名称 |
参数含义 |
优化建议 |
配置方法 |
||||
---|---|---|---|---|---|---|---|
页面大小 |
全闪存场景下推荐使用4K的PageSize。当前版本中默认使用openEuler 20.03 LTS SP1操作系统,openEuler 20.03默认的PageSize是64KB,需要重新编译内核切换到4KB PageSize,如果使用了其他操作系统根据实际情况选择是否切换内核PageSize。 |
默认值(openEuler 20.03):65536 修改建议:切换为 4096 |
需要下载源码并重新编译内核,详情请参见编译内核。 |
||||
vm.swappiness |
swap为系统虚拟内存,使用虚拟内存会导致性能下降,应避免使用。 |
默认值:60 现象:用到swap时性能明显下降 修改建议:关闭swap内存的使用,将该参数设定为0 |
执行命令:
|
||||
MTU |
网卡所能通过的最大数据包的大小,调大后可以减少网络包的数量以提高效率。 |
默认值:1500 Bytes 查看方式:可以通过ip addr命令查看 修改建议:网卡所能通过的最大数据包的大小设置为9000 Bytes |
|
||||
pid_max |
系统默认的“pid_max”值为32768,正常情况下是够用的,但执行大量任务时会出现不够用的情况,最终导致内存无法分配的错误。 |
默认值:32768 查看方式:通过cat /proc/sys/kernel/pid_max查看 修改建议:设置系统可生成最大线程数为4194303 |
执行命令:
|
||||
file_max |
“file-max”是设置系统所有进程一共可以打开的文件数量。同时一些程序可以通过setrlimit调用,设置每个进程的限制。如果得到大量使用完文件句柄的错误信息,则应该增加这个值。 |
默认值:13291808 查看方式:通过cat /proc/sys/fs/file-max查看 修改建议:设置系统所有进程一共可以打开的文件数量,设置为cat /proc/meminfo | grep MemTotal | awk '{print $2}'所查看到的值 |
执行命令:
说明:
${file-max}为cat /proc/meminfo | grep MemTotal | awk '{print $2}' 所查看到的值。 |
||||
I/O_Scheduler |
Linux IO调度器是Linux内核中的一个组成部分,用户可以通过调整这个调度器来优化系统性能。 |
默认值:CFQ 查看方式:要根据不同的存储器来设置Linux IO调度器从而达到优化系统性能 修改建议:SSD设置为noop |
执行命令:
说明:
此处以“/dev/nvme0n1”为例,对所有服务器上的所有数据盘都要修改。 |
1 | yum install kernel-source |
1 | yum install rpm-build openssl-devel bc rsync gcc gcc-c++ flex bison m4 ncurses-devel |
1 | cd /usr/src/linux-4.19.90-2109.1.0.0108.oe1.aarch64 |
该目录默认提供4个congfig文件,可以根据需求进行选择,在编译时可以指定编译的config文件。此处选择修改“openeuler_defconfig”,开启内核开关。
1 | make openeuler_defconfig
|
1 | make menuconfig
|
1 | export INSTALL_MOD_STRIP=1 |
1 | make binrpm-pkg -j$(getconf _NPROCESSORS_ONLN) |
最后生成两个RPM包,生成位置可参考如下截图。生产RPM包后直接安装即可,一般可以只安装kernel包,可不安装kernel-headers包。
1 | rpm -ivh /root/rpmbuild/RPMS/aarch64/kernel-4.19.904.19.90_2012.4.0.0053_4k-1.aarch64.rpm |
若安装失败,可尝试添加--force选项。
1 | cat /etc/grub2-efi.cfg | grep 4k |
1 | grub2-set-default 'openEuler (4.19.904.19.90-2012.4.0.0053-4k) 20.03 (LTS-SP1)' |
1 | grub2-editenv list
|
1 | reboot |