部分内核参数


fs.fime-max:381971
  操作系统最大文件句柄数
fs.file-nr:1408 0 381971
  已经分配的句柄数,已分配未使用的句柄数,最大文件句柄数
fs.nr_open:1048576
  进程可以分配的最大文件句柄数,默认为1024*1024
  #此处需要注意的是此处进行的调整只是针对内核,实际使用的时候还受到其他的限制,参考下面的ulimit
net.core.optmem_max:20480
  每个套机字允许的最大缓冲区
net.core.somaxconn:128
  已经建立了连接,等待被程序accept的队列的长度
net.core.netdev_max_backlog:1000
  网络比处理的快的时候的队列的长度
net.core.rmem_default:212992
  指定了接收套接字缓冲区大小的缺省值(以字节为单位)
net.core.rmem_max:212992
  指定了接收套接字缓冲区大小的最大值(以字节为单位)。
net.core.wmem_default:212992
  定义默认的发送窗口大小
net.core.wmem_max:212992
  定义发送窗口的最大大小
net.ipv4.tcp_fin_timeout:60
  fin_wait_2阶段的时间
net.ipv4.tcp_tw_reuse:0
  将time_wait状态的连接用于新的tcp连接
net.ipv4.tcp_tw_recycle:0
  将处于time_wait状态的连接快速回收(这个和上面那个一起用可能会有问题,用上面那个就行了)
net.ipv4.tcp_syncookies:1
  在SYN_RECV队列溢出的时候使用cookie,即内核在回复syn包的时候进行修改,ack包中的确认序列号并不是原来的值,而是用源 IP + Port、目的 IP + Port 及时间这五个参数计算出来的,正常的请求者能够做出正确的响应,而恶意攻击者可能会无法响应
net.ipv4.tcp_keepalive_time:7200
  连接不发送数据的时候,过tcp_keepalive_time会开始检测是否在线(通过发送一个空的数据包)
net.ipv4.tcp_keepalive_probes:9
  tcp_keepalive_probes定义几次失败断开连接
net.ipv4.tcp_keepalive_intvl:75
  tcp_keepalive_intvl表示探测的间隔
net.ipv4.ip_local_port_range:32768 60999
  用作源端口的范围
net.ipv4.tcp_max_syn_backlog:1024
  syn队列的长度
net.ipv4.tcp_max_tw_buckets:5000
  TIME_WAIT状态连接的最大数量
net.ipv4.tcp_syn_retries:6
  建立连接的时候重试几次会被认定为连接失败
net.ipv4.tcp_max_orphans:16384
  表示不属于任何进程的tcp套接字最大数量
net.ipv4.tcp_orphan_retries:0
  废弃孤儿进程前重试的次数
net.ipv4.tcp_mem:88500 118001 177000
  内核给tcp连接分配的内存,单位为4k
  没有内存压力 内存压力模式 拒绝分配socket
net.ipv4.tcp_wmem:4096 16384 4194304
  每个socket使用的发送缓冲区的内存,单位为字节
  分配的最小值 默认值(会被wmem_default覆盖) 最大值
net.ipv4.tcp_wmem:4096 87380 6291456
  每个socket使用的读取缓冲区的内存,单位为字节
  分配的最小值 默认值(会被wmem_default覆盖) 最大值
vm.swappiness:0
  使用swap的倾向性,0表示最大限度使用物理内存

修改内核参数的方式
临时生效:
  1.使用echo命令直接修改/proc/sys对应文件的值
  2.使用sysctl -w临时修改参数
永久生效:
修改/etc/sysctl.conf配置文件,然后使用sysctl -p 重载配置文件

umilit命令
ulimit是shell的一个內建命令,能够限制当前shell及启动的进程所占用的资源,所以有时调整内核参数后还需要查看uimit中是否有限制
查看及修改方式
临时:ulimit命令
  -a:查看所有的资源限制
  -n:最大打开的文件数
永久:/etc/security/limits.conf


注意:
1.此处列出的只是部分比较常用的参数,如果需要配置或查询更多参数,建议查询官方文档https://www.kernel.org/doc/html/latest/
2.此处列出的参数都是阿里云2核4g服务器的默认参数
3.部分网络相关参数可以参考http://man7.org/linux/man-pages/man7/tcp.7.html

猜你喜欢

转载自www.cnblogs.com/danengmaox/p/11275557.html