A través del comando sysctl pueden observarse todos los parámetros de configuración del kernel así como sus valores.
[root@centos ~]# sysctl -a
sunrpc.max_resvport = 1023
sunrpc.min_resvport = 665
sunrpc.tcp_slot_table_entries = 16
sunrpc.udp_slot_table_entries = 16
...
A continuación vamos a ver los parámetros más importantes que pueden afectar al rendimiento del sistema, así como sus valores más óptimos. Estas variables del kernel deben de ser configuradas dentro del fichero /etc/sysctl.conf. Una vez que hayamos editado el fichero, ejecutaremos el comando sysctl -p para aplicar los cambios y hacer que éstos sean persistentes después de un reinicio.
[root@centos ~]# cat /etc/sysctl.conf
...
# Buffer de envío de datos (valores mínimo, defecto y máximo - bytes)
net.ipv4.tcp_wmem = 8192 87380 16777216
# Buffer de recepción de datos (valores mínimo, defecto y máximo - bytes)
net.ipv4.tcp_rmem = 8192 87380 16777216
# Límite máximo para el buffer de envío de datos (bytes)
net.core.wmem_max = 16777216
# Límite máximo para el buffer de recepción de datos (bytes)
net.core.rmem_max = 16777216
# Rango de puertos locales que pueden ser empleados
net.ipv4.ip_local_port_range = 1024 65000
# Buffer para los paquetes SYN
net.ipv4.tcp_max_syn_backlog = 2048
# Tiempo que permanece el socket abierto al cerrar una conexión (sg)
net.ipv4.tcp_fin_timeout = 25
# Intervalo para comprobar que una conexión abierta pero no utilizada sigue viva (sg)
net.ipv4.tcp_keepalive_time = 1200
# Número máximo de archivos que el kernel podrá asignar
fs.file-max = 407020
# Límite de empleo de memoria física a partir del cual se recurrirá a la swap
vm.swappiness=10
...
[root@centos ~]# sysctl -p
Con respecto al parámetro fs.file-max, su valor por defecto suele ser un 10% de la cantidad de memoria RAM en KB. Se puede optimizar empleando un 20%.
Por último, vamos a detenernos en uno de las opciones más importantes de cara a la configuración del comportamiento del kernel: vm.swappiness. Este valor se corresponde a un porcentaje comprendido entre 0 y 100, y representa el momento a partir del cual el sistema comenzará a utilizar memoria swap.
Por ejemplo, el valor que viene por defecto es 60, lo que significa que cuando el uso de la memoria física alcance un 40% (sin tener en cuenta la cacheada), se comenzará a utilizar el área swap.
Que un sistema operativo utilice la memoria swap es totalmente contraproducente, ya que esta memoria es un espacio reservado en el disco duro y como tal, los accesos serán muchos más lentos en comparación con la memoria RAM, con lo que el rendimiento general del sistema podrá verse seriamente deteriorado.
No comments:
Post a Comment