GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo cambiar los límites de semáforos del kernel en CentOS/RHEL

La publicación explica cómo se pueden cambiar los límites de semáforos del kernel en un servidor CentOS/RHEL.

Parámetros del kernel para establecer límites de semáforos

Los parámetros del kernel para establecer los límites de semáforos son:

kernel.sem = SEMMSL SEMMNS SEMOPM SEMMNI
SEMMSL - max semaphores per array
SEMMNS - max semaphores system wide
SEMOPM - max ops per semop call
SEMMNI - max number of arrays

Cambio de límites de semáforos

Si es necesario cambiar un límite, se debe tener en cuenta que (número máximo de matrices)*(máximo de semáforos por matriz)>=(máximo de semáforos en todo el sistema) . No es necesario tener más semáforos en todo el sistema si está limitado por la cantidad de un número posible de matrices con semáforos máximos por ella.

Por ejemplo:

# sysctl -a| grep kernel.sem
kernel.sem = 250 32000 32 128

Para este ejemplo, necesitamos aumentar el límite máximo de semáforos por matriz de 128 a 192. El máximo de semáforos en todo el sistema también se puede aumentar a 48000 (250*192 =48000>=32000) o mantenerse como 32000. En este escenario, se mantiene en 32000.

Para establecer el parámetro del núcleo de forma dinámica, es decir, sin necesidad de reiniciar el servidor.

# sysctl -w kernel.sem="250 32000 32 192"
kernel.sem = 250 32000 32 192

Si todo está bien con el sistema como se esperaba, modifique el parámetro del kernel agregándolo al archivo /etc/sysctl.conf para asegurarse de que el valor persista después de reiniciar el servidor.

# cat /etc/sysctl.conf | grep kernel.sem
kernel.sem = 250 32000 32 192

Si elige configurarlo directamente en el archivo sin usar sysctl -w, deberá volver a cargar el archivo:

# sysctl -p

Puede verificar los límites establecidos actualmente por:

# ipcs -ls
------ Semaphore Limits --------
max number of arrays = 192
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 32
semaphore max value = 32767

Un semáforo es como un contador utilizado para controlar el acceso a recursos compartidos por múltiples procesos. A menudo se utiliza como un mecanismo de bloqueo para evitar que los procesos accedan a un recurso en particular mientras otro proceso realiza operaciones en él. El valor del semáforo se puede incrementar o disminuir hasta el máximo establecido por la variable SEMVMX, "valor máximo del semáforo".


Cent OS
  1. Cómo configurar o cambiar el nombre de host en CentOS 7 / RHEL 7

  2. Cómo cambiar la zona horaria en CentOS/RHEL 8/7/6

  3. CentOS / RHEL 7:Cómo cambiar la zona horaria

  4. CentOS/RHEL:Cómo cambiar el UUID del sistema de archivos

  5. Cómo cambiar las etiquetas del sistema de archivos en CentOS/RHEL

Cómo configurar/cambiar el nombre de host en CentOS 8 / RHEL 8

Cómo cambiar el nombre de la interfaz de red a eth0 en CentOS 8/RHEL 8

Cómo cambiar el nivel de ejecución actual/predeterminado en CentOS 8/RHEL 8

Cómo cambiar la zona horaria en CentOS 8 / RHEL 8

Cómo cambiar el nombre de host en CentOS/RHEL 8

Cómo cambiar el nombre de host en CentOS/RHEL 7