Habilitando e configurando pools de recursos
A partir do HPC Pack 2008 R2 com o Service Pack 2 (SP2), você pode configurar o Serviço de Agendador de Trabalho HPC para alocar recursos com base em Pools de Recursos. Os Pools de Recursos ajudam você a definir qual proporção dos núcleos de cluster deve ser garantida para grupos de usuários específicos (ou tipos de trabalho). Se um grupo de usuários não estiver usando todos os núcleos garantidos, esses núcleos poderão ser usados por outros grupos. Você deve usar modelos de trabalho para associar um grupo de usuários a um Pool de Recursos. Os trabalhos que usam o modelo de trabalho terão a garantia coletiva da proporção de núcleos de cluster definidos para o Pool de Recursos e serão agendados dentro do pool de acordo com a prioridade do trabalho, a hora de envio e o modo de agendamento (Enfileirado ou Balanceado). O agendamento do Pool de Recursos funciona melhor em clusters com recursos homogêneos.
Cenário de exemplo: Vários grupos de usuários em sua organização contribuíram para o orçamento do cluster e, em troca, esperam ter uma parte determinada do cluster à sua disposição. Se em um determinado momento um grupo tiver uma carga de trabalho leve e não utilizar todo o compartilhamento do cluster, você desejará que esses recursos sejam disponibilizados temporariamente para outros grupos. Portanto, para garantir a disponibilidade e maximizar a utilização do cluster, você deseja que o Serviço de Agendador de Trabalho do HPC aloque recursos com base em Pools de Recursos.
Neste tópico:
Noções básicas sobre as propriedades do pool de recursos
Os pools de recursos têm as seguintes propriedades:
Propriedade | Definição |
---|---|
de Peso | Definido pelo administrador do cluster. Um inteiro entre 0 e 999.999 que representa a proporção de núcleos de cluster que devem ser garantidos ao pool. |
núcleos garantidos | Definido pelo Serviço de Agendador de Trabalho do HPC. O número de núcleos que correspondem ao peso definido para o pool. O número de núcleos garantidos variará de acordo com quantos nós são online e acessíveis a qualquer momento. O número de núcleos garantidos é calculado como (poolWeight/totalWeights)*NumberOfCoresOnline. |
núcleos alocados | Definido pelo Serviço de Agendador de Trabalho do HPC. O número de núcleos que estão sendo realmente usados por trabalhos que são enviados para o pool. Esse número pode ser maior ou menor do que o número de núcleos garantidos. |
Considerações importantes
Um pool com um peso de 0 não tem núcleos garantidos, mas pode ter núcleos alocados se houver trabalhos enviados para o pool e os outros pools não estiverem usando todos os seus recursos.
Não é possível excluir o de pool padrão
. Quando os Pools de Recursos estiverem habilitados no Serviço de Agendador de Trabalho do HPC, todos os trabalhos que não especificarem um pool usarão o Pool Padrão. Ao contrário dos pools personalizados, especificar o Pool Padrão não fornece nenhuma garantia de recursos. Você pode definir o peso do Pool Padrão como 0. Quando o Serviço agendador de trabalho HPC calcula o número de núcleos para cada Pool de Recursos (de acordo com o peso do pool), o valor resultante para cada pool é arredondado para baixo para o número inteiro mais próximo. Os núcleos restantes são adicionados ao Pool Padrão.
Grupos de nós e uma lista de nós solicitados fornecem maneiras alternativas de alocar recursos de cluster para um trabalho e nenhum deles deve ser usado junto com pools de recursos. Se você adicionar grupos de nós específicos (ou uma lista de nós solicitados) e pools de recursos a um modelo de trabalho, o Serviço de Agendador de Trabalho do HPC restringirá o acesso a recursos de cluster com base em ambas as propriedades de forma independente.
Configurar pools de recursos
Para configurar pools de recursos, você deve definir um ou mais pools e associar os pools a modelos de trabalho. Por exemplo, digamos que você tenha dois grupos de usuários e cada grupo espera poder usar as seguintes proporções do cluster a qualquer momento: Grupo A 60%e Grupo B 40%. Digamos também que o Grupo A tenha dois tipos distintos de trabalhos para os quais eles desejam modelos de trabalho separados: um tipo é de alta prioridade e o outro é de baixa prioridade. Para impor as políticas de agendamento desejadas, crie três modelos de nó: "GroupA_HighPriJobs", "GroupA_LowPriJobs" e "GroupB_AllJobs".
Importante
Depois de definir pools de recursos e associá-los aos Modelos de Trabalho, você deverá habilitar o agendamento do Pool de Recursos nas configurações do Agendador de Trabalho. Consulte Habilitar pools de recursos neste tópico.
Para definir pools de recursos
No Gerenciador de Cluster do HPC, clique em de Configuração.
No Painel de Navegação, clique em Pools de Recursos.
No Actions, clique em Editar Pools e Pesos. A caixa de diálogo é exibida.
Na caixa de diálogo, clique em Adicionar duas vezes. Duas novas linhas aparecem na lista de pools.
Na coluna nome do pool
, renomeie os pools poolA e poolB .Na coluna Peso, digite os pesos desejados para cada grupo (60, 40).
Defina o peso do pool de Padrão
como 0. Clique em OK para salvar e fechar a caixa de diálogo.
Para associar pools de recursos a modelos de trabalho
No Painel de Navegação, clique em Modelos de Trabalho.
No Actions, clique em Novo para abrir o assistente de Modelo de Trabalho e, em seguida, defina o modelo da seguinte maneira:
Nome: GroupA_HighPriJobs
Prioridade máxima: mais alta
Prioridade padrão: mais alta
Abra o modelo de trabalho "GroupA_HighPriJobs" no Editor de Modelo de Trabalho e defina o Pool e as permissões do usuário da seguinte maneira:
Adicione a propriedade Pool ao modelo e, para o de Valor Válido, selecione "PoolA".
Clique em Permissõese verifique se somente os usuários no Grupo A têm permissão para enviar trabalhos com esse modelo.
Salve as alterações.
Crie um modelo de trabalho para "GroupA_LowPriJobs" da seguinte maneira:
Na lista Modelo de Trabalho, clique com o botão direito do mouse em "GroupA_HighPriJobs" e clique em Copiar.
Clique com o botão direito do mouse na cópia, clique em Editare defina o modelo da seguinte maneira:
Nome: GroupA_LowPriJobs
Prioridade máxima: Normal
Prioridade padrão: BelowNormal
Como esse modelo se baseia no "GroupA_HighPriJobs", as permissões e o Pool já estão definidos corretamente.
Crie um novo modelo de trabalho para "GroupB_AllJobs" com as seguintes propriedades:
Nome: GroupB_AllJobs
Prioridade máxima: mais alta
Prioridade padrão: Normal
Adicione a propriedade
Pool ao modelo e, para ode Valor Válido, selecione "PoolB". Clique Permissõese verifique se somente os usuários do Grupo B têm permissão para enviar trabalhos com esse modelo.
Agora você está pronto para habilitar o agendamento do Pool de Recursos por meio das configurações do Agendador de Trabalho.
Habilitar pools de recursos
Você deve habilitar o agendamento do Pool de Recursos nas configurações do Agendador de Trabalho. Você pode fazer isso por meio do Gerenciador de Cluster HPC ou usando utilitários de comando. Use um dos seguintes métodos para habilitar o agendamento do Pool de Recursos:
do Gerenciador de Cluster do HPC
No Gerenciador de Cluster do HPC, clique em Opçõese, em seguida, clique em de Configuração do Agendador de Trabalho.
Selecione a guia pools de recursos
. Marque a caixa de seleção Habilitar Pools de Recursos.
Clique no OK.
da janela do prompt de comando (executar como Administrador)
Use o comando
cluscfg setparams, por exemplo: Cluscfg setparams enablepools=true
do HPC PowerShell (executar como Administrador)
Use o cmdlet
Set-HpcClusterProperty, por exemplo: Set-hpcclusterproperty -enablepools $true
Consulte também
Configuração do Agendador de Trabalho no Microsoft HPC Pack
modelos de trabalho
Como adicionar ou remover filtros de envio ou ativação no nível do modelo de trabalho