Solía haber una opción de configuración del núcleo llamada sched_user o similar en cgroups. Esto permitió (que yo sepa) que todos los usuarios compartan equitativamente los recursos del sistema. En 2.6.35 no está disponible. ¿Hay alguna manera de configurar mi sistema para compartir automáticamente los recursos io / cpu / memory entre todos los usuarios (incluido el root?). Nunca he configurado un cgroup antes, ¿hay algún buen tutorial para hacerlo? Muchas gracias.
linux
kernel
performance
administration
NightwishFan
fuente
fuente
Respuestas:
La documentación del núcleo proporciona una cobertura general de cgroups con ejemplos.
El
cgroups-bin
paquete (que depende delibcgroup1
) ya proporcionado por la distribución debería estar bien.La configuración se realiza editando los siguientes dos archivos:
Utilizado por libcgroup para definir grupos de control, sus parámetros y puntos de montaje.
Usado por libcgroup para definir los grupos de control a los que pertenece el proceso.
Esos archivos de configuración ya tienen ejemplos, así que intente ajustarlos a sus requisitos. Las páginas del manual cubren su configuración bastante bien.
Luego, inicie el administrador de carga de trabajo y el demonio de reglas:
El administrador de carga de trabajo (cgconfig) es responsable de asignar los recursos.
Agregar un nuevo proceso al administrador:
Agregar un proceso ya en ejecución al administrador:
O automáticamente sobre el archivo cgrules.conf y el CGroup Rules Daemon (cgred), que obliga a cada proceso nuevo generado al grupo especificado.
Ejemplo /etc/cgconfig.conf:
Ejemplo /etc/cgrules.conf:
Esto compartirá los recursos de la CPU aproximadamente 50-50 entre el usuario 'alice' y 'bob'
fuente