Поделиться через


Включение и настройка пулов ресурсов

Начиная с пакета HPC 2008 R2 с пакетом обновления 2 (SP2) можно настроить службу планировщика заданий HPC для выделения ресурсов на основе пулов ресурсов. Пулы ресурсов помогают определить, какая доля ядер кластера должна быть гарантирована для определенных групп пользователей (или типов заданий). Если группа пользователей не использует все их гарантированные ядра, эти ядра можно использовать другими группами. Для связывания группы пользователей с пулом ресурсов необходимо использовать шаблоны заданий. Задания, которые используют шаблон задания, будут коллективно гарантировать долю ядер кластера, определенных для пула ресурсов, и будут запланированы в пуле в соответствии с приоритетом задания, временем отправки и режимом планирования (в очереди или баланс). Планирование пула ресурсов лучше всего подходит для кластеров с однородными ресурсами.

Пример сценария: Различные группы пользователей в вашей организации способствовали бюджету кластера, и в свою очередь они ожидают, что они будут иметь определенную часть кластера в своем распоряжении. Если в любой момент группа имеет легкую рабочую нагрузку и не использует всю общую долю кластера, эти ресурсы временно предоставляются другим группам. Таким образом, чтобы гарантировать доступность и максимальное использование кластера, необходимо, чтобы служба планировщика заданий HPC выделяет ресурсы на основе пулов ресурсов.

В этом разделе:

Общие сведения о свойствах пула ресурсов

Пулы ресурсов имеют следующие свойства:

Недвижимость Определение
Вес Устанавливается администратором кластера.

Целое число от 0 до 999 999, представляющее долю ядер кластера, которые должны быть гарантированы пулу.
Гарантированные ядра Устанавливается службой планировщика заданий HPC.

Количество ядер, соответствующих весу, определенному для пула. Количество гарантированных ядер зависит от того, сколько узлов в сети и доступно в любое время. Число гарантированных ядер вычисляется как (poolWeight/totalWeights)*NumberOfCoresOnline.
Выделенные ядра Устанавливается службой планировщика заданий HPC.

Количество ядер, которые фактически используются заданиями, отправленными в пул. Это число может быть выше или ниже, чем число гарантированных ядер.

Важные замечания

  • Пул с весом 0 не имеет гарантированных ядер, но может иметь выделенные ядра, если есть задания, отправленные в пул, и другие пулы не используют все их ресурсы.

  • Пул по умолчанию не может быть удален. Если пулы ресурсов включены в службе планировщика заданий HPC, все задания, которые не указывают пул, будут использовать пул по умолчанию. В отличие от пользовательских пулов, указывая пул по умолчанию, не обеспечивает никаких гарантий ресурсов. Для пула по умолчанию можно задать значение 0.

  • Когда служба планировщика заданий HPC вычисляет количество ядер для каждого пула ресурсов (в соответствии с весом пула), результирующее значение для каждого пула округляется до ближайшего целого числа. Остальные ядра добавляются в пул по умолчанию.

  • Группы узлов и список запрошенных узлов предоставляют альтернативные способы выделения ресурсов кластера заданию, и ни один из этих групп не предназначен для использования вместе с пулами ресурсов. Если добавить в шаблон задания обе группы узлов (или список запрошенных узлов) и пулы ресурсов, служба планировщика заданий HPC будет ограничивать доступ к ресурсам кластера независимо от обоих свойств.

Настройка пулов ресурсов

Чтобы настроить пулы ресурсов, необходимо определить один или несколько пулов, а затем связать пулы с шаблонами заданий. Например, предположим, что у вас есть две группы пользователей, и каждая группа ожидает, что она сможет использовать следующие пропорции кластера в любое время: группа A 60%и группа B 40%. Предположим также, что группа A имеет два разных типа заданий, для которых они хотят отдельные шаблоны заданий: один тип является высоким приоритетом, а другой тип является низким приоритетом. Чтобы применить требуемые политики планирования, создайте три шаблона узлов: "GroupA_HighPriJobs", "GroupA_LowPriJobs" и "GroupB_AllJobs".

Это важно

После определения пулов ресурсов и связывания их с шаблонами заданий необходимо включить планирование пула ресурсов в параметрах планировщика заданий. См. раздел "Включить пулы ресурсов " в этом разделе.

Определение пулов ресурсов

  1. В диспетчере кластеров HPC щелкните "Конфигурация".

  2. В области навигации щелкните пулы ресурсов.

  3. В разделе "Действия" щелкните "Изменить пулы" и "Весы". Откроется диалоговое окно.

  4. В диалоговом окне нажмите кнопку "Добавить два раза". В списке пулов отображаются две новые строки.

  5. В столбце "Имя пула" переименуйте пулы PoolA и PoolB.

  6. В столбце "Вес " введите нужные весы для каждой группы (60, 40).

  7. Задайте для пула по умолчанию значение 0.

  8. Нажмите кнопку "ОК" , чтобы сохранить и закрыть диалоговое окно.

Связывание пулов ресурсов с шаблонами заданий

  1. В области навигации щелкните "Шаблоны заданий".

  2. В разделе "Действия" нажмите кнопку "Создать ", чтобы открыть мастер шаблона задания, а затем определите шаблон следующим образом:

    • Имя: GroupA_HighPriJobs

    • Максимальный приоритет: самый высокий

    • Приоритет по умолчанию: самый высокий

  3. Откройте шаблон задания "GroupA_HighPriJobs" в редакторе шаблонов заданий и определите пул и разрешения пользователя следующим образом:

    • Добавьте свойство Pool в шаблон и в поле "Допустимое значение" выберите "PoolA".

    • Щелкните "Разрешения" и убедитесь, что только пользователи в группе A имеют разрешение на отправку заданий с помощью этого шаблона.

    • Сохраните изменения.

  4. Создайте шаблон задания для GroupA_LowPriJobs следующим образом:

    • В списке шаблонов заданий щелкните правой кнопкой мыши "GroupA_HighPriJobs" и нажмите кнопку "Копировать".

    • Щелкните правой кнопкой мыши копию, нажмите кнопку "Изменить", а затем определите шаблон следующим образом:

    • Имя: GroupA_LowPriJobs

    • Максимальный приоритет: обычный

    • Приоритет по умолчанию: BelowNormal

    • Так как этот шаблон основан на GroupA_HighPriJobs, разрешения и пул уже заданы правильно.

  5. Создайте шаблон задания для GroupB_AllJobs со следующими свойствами:

    • Имя: GroupB_AllJobs

    • Максимальный приоритет: самый высокий

    • Приоритет по умолчанию: обычный

    • Добавьте свойство Pool в шаблон и в поле "Допустимое значение" выберите "PoolB".

    • Щелкните "Разрешения" и убедитесь, что только пользователи в группе B имеют разрешение на отправку заданий с помощью этого шаблона.

Теперь вы готовы включить планирование пула ресурсов с помощью параметров планировщика заданий.

Включение пулов ресурсов

Необходимо включить планирование пула ресурсов в параметрах конфигурации планировщика заданий. Это можно сделать с помощью диспетчера кластеров HPC или с помощью служебных программ команд. Используйте один из следующих методов, чтобы включить планирование пула ресурсов:

  • Диспетчер кластеров HPC

    1. В диспетчере кластеров HPC щелкните "Параметры" и выберите пункт "Конфигурация планировщика заданий".

    2. Перейдите на вкладку "Пулы ресурсов ".

    3. Установите флажок "Включить пулы ресурсов ".

    4. Нажмите кнопку ОК.

  • Окно командной строки (запуск от имени администратора)

    Используйте команду cluscfg setparams , например:

    Cluscfg setparams enablepools=true

  • HPC PowerShell (запуск от имени администратора)

    Используйте командлет Set-HpcClusterProperty , например:

    Set-hpcclusterproperty -enablepools $true

См. также

Настройка планировщика заданий в пакете Microsoft HPC
Шаблоны заданий
Добавление или удаление фильтров шаблона задания или активации