CSCfi.ansible-role-slurm

ansible-role-slurm

Статус сборки

Создает кластер SLURM

Тестировалось на следующих дистрибутивах Linux:

  • CentOS 7
  • Ubuntu
    • 18.04 (только клиент)

Роль стремится поддерживать обратную совместимость.

Например, если мы хотим добавить настройки по умолчанию в slurm.conf только для некоторых версий slurm, мы можем сделать это, добавив slurm_conf_version_specific_params_list в версию в vars/slurm_version.yml.

Зависимости

Как настроить

Начальная конфигурация плейбука

Переменные плейбука:

Все переменные должны быть определены в defaults/main.yml.

Все узлы запускают munge. Узлы, которые являются частью группы хостов slurm_compute, дополнительно запускают slurmd. Узлы, которые являются частью группы хостов slurm_service, дополнительно запускают slurmctld и slurmdbd (если {{ slurm_accounting_storage_host }} не является тем же, что и {{ slurm_service_node }}). Узлы, которые не входят в эти две группы хостов, считаются узлами отправки.

Также необходимо добавить строку mysql_slurm_password: "PASSWORD" где-то в конфигурации. Это будет использовано для установки пароля для пользователя slurm в MySQL. Смотрите http://docs.ansible.com/ansible/playbooks_vault.html.

Чтобы добавить свои узлы и очереди, определите списки slurm_nodelist и slurm_partitionlist.

Вам не обязательно настраивать SQL-сервер с этой ролью, он здесь для удобства, если вы хотите запускать SQL на том же узле, что и slurmctld и slurmdbd. Также возможно запускать slurmdbd на другом хосте, чем slurmctld, изменив переменную slurm_accounting_storage_host.

Также возможно настроить резервный контроллер slurm, определив переменную slurm_backup_controller. Пожалуйста, прочитайте документацию SLURM HA. Например, вам понадобится общий каталог (например, NFS), доступный и на slurm_service_node, и на slurm_backup_controller.

Реализация

Плейбук, который использует эту роль: https://github.com/fgci-org/fgci-ansible.

Или вы можете посмотреть tests/test.yml в этом репозитории.

Пример плейбука

    - hosts: compute
      strategy: free
      roles:
         - { role: ansible-role-pam }
         - { role: ansible-role-nhc }
         - { role: ansible-role-slurm }

    - hosts: install
      roles:
         - { role: ansible-role-slurm }

Известные проблемы

Тестирование и вклад

Тестирование выполняется с использованием Travis.

  • PR в главную ветку
  • если возможно, убедитесь, что новая функция также протестирована
  • стремитесь к обратной совместимости

Авторы / Участники:

О проекте

Installs and configures slurm on a cluster

Установить
ansible-galaxy install CSCfi.ansible-role-slurm
Лицензия
mit
Загрузки
120
Владелец
Finnish expertise in ICT for research, education, culture and public administration