Hadoop优化 操作系统优化

你离开我真会死。 提交于 2021-02-16 22:53:18

1、优化文件系统,修改/etc/fstab 在defaults后面添加noatime,表示不记录文件的访问时间。

修改为:

如果不想重新启动操作系统使配置生效,那么应该执行:

# mount -o remount /dev/mapper/centos-root
# mount -o remount /dev/mapper/centos-home  

当然,如果有其他的磁盘,同样可以这样操作,我这里测试就两个逻辑卷

2、预读缓冲

      预读技术可以有效的减少磁盘寻道次数和应用的I/O等待时间,增加Linux文件系统预读缓冲区的大小(默认为256 sectors,128KB),可以明显提高顺序文件的读性能,建议调整到1024或2048 sectors。预读缓冲区的设置可以通过blockdev命令来完成。

blockdev 工具允许从命令行调用区块设备控制程序,常用参数如下:

  --getra 读取预读值
  --getfra 读取文件系统预读
  --setfra FSREADAHEAD 设置文件系统预读
  --setra READAHEAD 设置设备预读
  --getra 读取设备的预读值
  --setbsz BLOCKSIZE 在文件描述符打开块设备的时候设置块大小
  --getioopt 读取设备优化IO大小    
  --getiomin 读取设备最小IO大小
  -–setro 设置设备为只读
  -–getro 读取设备是否为只读(成功为1,0则为可读写)
  -–setrw 设置设别为可读写
  -–getss 打印设备的扇区大小也叫逻辑块大小,通常是512
  --getpbsz 读取设备物理块大小,通常是4096
  --getbsz 读取设备块大小,通常是4096
  -–getsize(-getsz) 打印设备的容量,按照一个扇区512个字节计算
  --getsize64 打印设备的容量,以字节为单位显示
  -–setra N 设置预读扇区(512字节)为N个.Set readahead to N 512-byte sectors.
  -–getra 打印readahead(预读扇区)
  -–flushbufs 刷新缓冲
  -–rereadpt 重读分区表。

我们可以将默认的预读值(256 sectors,128k)调大,具体的操作如下:

[root@test pam.d]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   60G   14G   47G  24% /
devtmpfs                 474M     0  474M   0% /dev
tmpfs                    489M     0  489M   0% /dev/shm
tmpfs                    489M   14M  476M   3% /run
tmpfs                    489M     0  489M   0% /sys/fs/cgroup
/dev/sda1                197M  143M   55M  73% /boot
/dev/mapper/centos-home   16G   37M   16G   1% /home
tmpfs                     98M     0   98M   0% /run/user/0
[root@test pam.d]# blockdev --getra /dev/sda1
8192
[root@test pam.d]# blockdev --setra 10240  /dev/sda1 
[root@test pam.d]# blockdev --getra /dev/sda1
10240

3、虚拟内存调优:

https://www.cnblogs.com/yinzhengjie/p/9994207.html

4、网卡调优:

https://www.cnblogs.com/yinzhengjie/p/9995756.html

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!