Como encontrar quais máquinas estão inativas em um cluster de muitos nós

1

Eu executo medições em um cluster que consiste em 32 nós / máquinas. Eu não preciso de todos os nós, apenas 4, por exemplo. O problema é na maioria das vezes, os nós estão ocupados com outras pessoas executando seu trabalho pesado neles. Então, para encontrar nós ociosos para obter bons resultados, eu corro o comando top em cada máquina, começando do primeiro até encontrar 4 livres.

Existe uma maneira de testar o carregamento / utilização da cpu em várias máquinas de uma só vez e, se possível, listar as máquinas que estão menos ocupadas?

    
por vis 08.03.2012 / 17:28

5 respostas

3

Embora a resposta do @wnoise seja uma solução melhor, pode não ser possível implementá-la (por exemplo, você administra o cluster?) ... então, por que não dar uma olhada em

  1. uma das soluções 'cluster SSH' @Chaleb mencionada aqui (pssh, pdsh, clusterssh, clusterit) ou
  2. Tecido ( também mencionado neste tópico, por @Crankyadmin )

para coletar estatísticas de uso.

Adicione um pequeno script a para avaliar as estatísticas que você coletou em cada host e você deve estar pronto.

( a ) dependendo das suas preferências, uma ou outra das ferramentas mencionadas pode ser mais útil, ou seja, o Fabric é uma estrutura Python, portanto, se você quiser fazer a avaliação em Python, pode ser bem adequado (enquanto qualquer linguagem de script Perl / Bash / whatever é tão boa).

    
por 08.03.2012 / 18:00
3

O comando rup do pacote rstatclient pesquisará todas as máquinas em sua sub-rede para obter informações, incluindo suas médias de carga. As máquinas devem estar executando rstatd para fornecer essas informações e eu tcpwrapper para responder apenas às suas áreas de trabalho administrativas. Você também pode especificar máquinas individuais para coletar dados. Com o rstatd sendo executado nas máquinas remotas, você também pode exibir xmeter para monitorar visualmente sua média de carga histórica.

    
por 09.03.2012 / 01:32
2

Existem muitos "sistemas em lote" projetados para lidar com esse tipo de problema. Um especificamente adaptado para lidar com o "roubo de ciclo" de sistemas não ocupados é o condor , um projeto de pesquisa de longa duração na Universidade de Wisconsin.

    
por 08.03.2012 / 17:36
2

Se o SNMPD estiver em execução, você poderá consultar os valores de carregamento dessas máquinas com um simples snmpget. Se você script que você pode classificá-los com o valor de carga e saída dos quatro mais baixos ...

    
por 08.03.2012 / 22:35
-1

você deve usar o comando mdiag -n para verificar se os nós estão inativos ou ocupados.

    
por 24.06.2015 / 07:17