Preocupações de segurança para clusters de alto desempenho

1

Esta é uma questão muito em aberto, já que é a primeira vez que eu crio um cluster. Só estou querendo saber que tipo de preocupações de segurança haverá e como evitá-las.

Informações básicas

Usando o SGE (atualmente instalando e descobrindo qual programação é a melhor) em um cluster interno.

Permitirá que programas PVM / MPI sejam executados, assim como programas Perl, usando um ou outro, ou talvez apenas bifurcando, porque são execuções paralelas constrangedoras (se bem me lembro, SGE permite bifurcar, mas isso foi lido há um tempo atrás antes de compilado muito mais informações. Alguém por favor, apenas comentar sobre isso).

Haverá um nó externo que se conecta ao cluster e este nó enviará os trabalhos recebidos da Internet / Servidor.

Todos os usuários devem enviar sua solicitação para executar um trabalho pela Internet no servidor (tentando pensar em maneiras de não permitir que eles ignorem isso quando estiverem conectados localmente).

Objetivos deste projeto:

Eventualmente, permita que pessoas da Internet, em qualquer lugar, enviem trabalhos para serem executados e, em seguida, seja notificado quando o programa for concluído. Além disso, permita que eles visualizem os dados, talvez até baixem os dados para visualização off-line.

Improvável, mas possível: talvez até permitir que os usuários façam upload de programas para ajustar seus dados quando nosso programa for insuficiente.

    
por Kamil Kisiel 26.02.2010 / 20:56

2 respostas

1

Uma maneira simples de impedir que as pessoas enviem trabalhos localmente (a partir de nós de cálculo) ou usando sessões de shell remotas é proibir logins ssh para usuários em nós de computação e E / S - há alguns modos de como não quebrar o SGE por fazendo isso. Não é preciso dizer que, ao fazer isso, você pode controlar qual host atua como a máquina de envio.

O trabalho de segurança primário deve ser feito no nó login / portal com interfaces adequadamente documentadas e definidas para que as pessoas façam o que quer que elas pretendam fazer lá. Há coisas como as transferências grid-ftp do Globus Toolkit sobre SSH ou com um PKI completo para esse assunto.

Ou você também pode preparar um portal da Web que, por sua vez, usa a API do DRMAA para enviar trabalhos de python, ruby, java etc. e oferece maneiras e meios de carregar / baixar programas ou dados do sistema.

Normalmente, a segurança não é uma grande preocupação para a maioria das instalações de HPC, e os princípios usuais de segurança de múltiplos usuários do UNIX se aplicam totalmente. O gerenciamento de recursos distribuídos até ajuda a proteger contra o abuso de recursos e coisas do tipo.

Para a parte de exibição de dados do problema: Eu geralmente implemento alguns nós de área de trabalho que são reservados para trabalho interativo como desenvolvimento e depuração. Na maioria das vezes eles também contêm GPUs e eu configuro o TruboVNC + VirtualGL para permitir que as pessoas dêem uma olhada em seus dados localmente antes de começarem transferências longas para outros armazenamentos e / ou suas áreas de trabalho (eles enviam sessões de desktop VNC para SGE). Ajuda-os a permanecer localmente no cluster e VNC quando configurados corretamente, permitindo uma experiência muito rápida com visualização 3D acelerada, mesmo com links do tipo WAN. Você também pode incorporar um visualizador VNC (mais lento) em seu portal da Web.

    
por 15.12.2010 / 15:21
0

Nós fizemos um script de manutenção que funciona duas vezes por hora e mata todos os trabalhos que o SGE não conhece. Isso funciona bem e limpa processos que, por algum motivo, foram deixados em execução nos nós também.

    
por 04.03.2010 / 12:47