Inicio

Características, políticas e implementación aplicadas a los clúster

Refiere a las políticas instauradas en la implementación de los clúster de la escuela de Ingeniería Civil en Bioinformática.

Acceso y Uso

Todos los Académicos, Funcionarios y estudiantes pudiesen tener acceso a la utilización de los recursos computacionales disponibles por la escuela de Bioinformática.

Solicitud de acceso

Para poder obtener acceso específicamente a los clúster de cálculos computacionales en HPC, los usuarios debiesen pedir autorización a la dirección de carrera justificando las razones del por qué debiese otorgarse el permiso de uso.

Asignación de CPU

Otorgada la autorización el usuario debiese ser encasillarse (rol) en una de las posibilidades para uso en CPU definidas en el cluster. Está se ha estandarizado del siguiente modo:

Rol

Cantidad de CPU disponible

Máximo de trabajos en paralelos

Prioridad de ejecución

Estudiante de Pregrado

64

1

0

Estudiante de Postgrado

80

1

43200

Postgrado Memorista

96

1

43200

Docentes

128

2

86400

Asignación de espacio en disco

La definición para todos los usuarios es la asignación de 15GB (soft limit), con la posibilidad de sobrepasarme hasta 20GB por un periodo de 7 días (hard limit).

El control del espacio en disco será llevado por el paquete "quota".

Para establecer la quota de uso de disco para un usuario se realizará con el programa "edquota", que es un editor de cuotas para usuarios o grupos y que se pueden especificar a través de línea de comandos.

La representación de la imposición de una cuota puede verse en el siguiente ejemplo:

$/sbin/edquote usuarioXXXX

Disk quotas for user usuarioXXXX (uid XXX):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/cciss/c0d0p5          32604068       15480000       20480000        401        0        0

En donde:

Se puede establecer como referencia este link: http://web.mit.edu/rhel-doc/3/rhel-sag-es-3/ch-disk-quotas.html

Gestor de Colas

Un gestor de colas gestiona trabajos lanzados en una máquina por diferentes usuarios. Para simplificar la configuración al gestor de colas hacia el usuario se ha decidido utilizar solo un nombre o queue para la asociación y denominado talca1 en cada uno de los clúster.

El software de gestión de colas escogido por simplicidad, compatibilidad de software utilizado es PBS.

PBS

PBS (Portable Batch System) es un sistema flexible de balanceo de carga y planificación de tareas, inicialmente fue desarrollado para administrar recursos computacionales de la NASA. PBS ha sido el líder en la administración de recursos y considerado el estándar de facto para los sistemas de planificaciónes bajo sistemas Linux.

La versión utilizada de PBS es parte de TORQUE Resource manager es un software que permite gestionar tareas computacionales, que provee control sobre estas tareas y los recursos computacionales de sistemas distribuidos.

Posee los siguientes componentes:

Algunas características más importantes del sistema PBS son:

La configuración de políticas del servidor PBS por defecto para los clúster de Ingeniería Civil en Bioinformática es la siguiente:

set server scheduling = True
set server acl_host_enable = False
set server acl_hosts = clustertalca2.utalca.cl
set server managers = maui@clustertalca2.utalca.cl
set server managers += maui@clustertalca2.local
set server managers += root@clustertalca2.utalca.cl
set server managers += root@clustertalca2.local
set server default_queue = default
set server log_events = 511
set server mail_from = adm
set server query_other_jobs = True
set server scheduler_iteration = 600
set server node_check_rate = 150
set server tcp_timeout = 300
set server job_stat_rate = 45
set server poll_jobs = True
set server mom_job_sync = True
set server allow_node_submit = True
set server next_job_number = 2198
set server server_name = clustertalca2.utalca.cl
set server moab_array_compatible = True
set server nppcu = 2

Esto es seteado a traves del comando qmgr.

Maui

A pesar de que ya tenemos un gestor de colas, se hace necesario tener un planificador de procesos. Es seleccionado es Maui.

MAUI es un planificador externo integrado en el sistema, que periódicamente itera sobre los trabajos pendientes en el gestor de colas.Cada iteración (cuyo intervalo de tiempo varía en función del parámetro RMP POLL), consulta al gestor de colas el estado de los trabajos en el sistema. A partir de esa información, MAUI ordena los trabajos pendientes de ejecución en función de las políticas de prioridad del sistema, y los ejecuta en el orden de mayor a menor prioridad. Presenta la ventaja de ser de código abierto, lo que ha facilitado su rápido crecimiento, y actualmente es uno de los planificador es más extendidos. Permite ser integrado en la gran mayoría de gestores de colas, tales como PBS, LoadLeveler, SGE y BPROC.

Es totalmente configurable a las necesidades del usuario. Como características destacaremos las siguientes:

Algunas de la referencias:

https://www.researchgate.net/profile/Brett_Bode/publication/236659354_The_Portable_batch_scheduler_and_the_Maui_Scheduler_on_Linux_Clusters/links/0a85e53b180a2ae39f000000/The-Portable-batch-scheduler-and-the-Maui-Scheduler-on-Linux-Clusters.pdf

http://www.adaptivecomputing.com/products/open-source/maui/

https://www.ibm.com/support/knowledgecenter/en/linuxonibm/liaai.hpcsuse/installingmcs.htm

Directorios compartidos

Sandbox

Variables de Entorno

Compilación de herramientas

GCC

OpenMPI

Actualización de Sistema

Paridad de paquetes

Instalación de Aplicaciones