Office Grid Computing utilización de ambientes virtuais - Parte 5

Por Watkin Steven Lloyd , venres 04 decembro 2009 11:03

Introdución

Eu traballo nunha empresa onde realizar traballos de procesamento por lotes moitos millóns de rexistros de datos de cada día e eu teño pensado recentemente sobre todas as máquinas que se senten ao redor de cada día sen facer nada por varias horas. Non sería bo se puidésemos utilizar estas máquinas para reforzar o poder de procesamento dos nosos sistemas? Neste conxunto de artigos que eu vou mirar para os potenciais beneficios da contratación dunha oficina da rede usando ambientes virtualizados.

Na Parte 4 miramos para usar ferramentas para garantir que estamos executando a versión máis recente de código e as fontes de datos para que os resultados obtidos son sempre actualizados coas últimas información de empresas e da lóxica.

Pre-Implantación

Antes de implantar o seu sistema de rede, se hai unha cousa que fai e unha cousa só que é referencia do sistema actual! Non importa o que di sobre o que os compañeiros de traballo extra o sistema vai facer menos que teña números para isto as súas garantías non son nada. Así,

  • cantos rexistros pode proceso actualmente? Ao día? Por hora?
  • Canto tempo fai exame tipicamente de xirar ao redor dun emprego?
  • Canto máis capacidade ten?

Hai tamén cuestións adicionais:

  • Se o servidor de procesamento (ou un dos seus servidores de procesamento) vai para abaixo como isto afectará a súa capacidade, vai estar aleijado?
  • Que vantaxes ten que espera / espera obter un sistema de rede?
  • Son máquinas do seu despacho capaz de realizar os traballos?
  • É o seu (ou se pode converter emprego) para traballar neste estilo de correr?

O último punto importante é levar o seu tempo en calquera gran cambio como esta. Actualiza o seu código de procesamento para o traballo a través da nova metodoloxía, referencial de novo. Posiblemente configurar o servidor de procesamento para realizar unha máquina virtual, ao final o seu servidor de procesamento será só outro traballador (só unha moi poderosa relativamente). Facer que o novo proceso para resolver.

Implantación

A miña suxestión sería a de pop na fin de semana unha oficina de realizar todas as instalacións e configuración. Faino logo antes de vacacións dunha quincena e deixar que outros pobre home para xestionar as consecuencias ... quizais non ...

Implantación dun sistema coma este debe ser lento. A pesar de ser relativamente sinxela de configurar este sistema pode afectar a súa infraestrutura de oficina enteiro (ben o dixital). En primeiro lugar, lanzar un par de máquinas á vez, monitorizar o tráfico da rede, como os anfitrións traballador executar nunha base día a día. Pode cambiar a configuración de traballo en resposta ás seus descubrimentos.

Xa que o sistema teña resolto con algunhas máquinas (digamos 10% de todas as máquinas de oficina, ou sexa, 5) manter o seguimento do tráfico de rede e servidor da máquina benchmark performance. Seguinte novo, que agora debe estar a procesar os traballos de 33% máis que a súa referencia primeira. Comprobe isto é así, ou que é, polo menos neste estadio. Se non, investigar o que está a ocorrer antes de continuar. Repita este ciclo ata que afortunadamente temos todas as máquinas de oficina sen matar o rendemento da máquina individual ou range de rede a un impasse.

En todo momento manter Benchmarking, mesmo despois de todas as implementacións poden facer. Consulte como actualizacións novo código afecta a velocidade do seu sistema, comproba todos os traballadores e de información en tarefas de procesamento. Pouco a pouco (moi lentamente) incrementar a súa configuración de traballo para obter o mellor dos seus traballadores e de rede.

Pare!

E se queres deixar o seu traballo sexa executado en algún momento? Están todos aí fóra, correndo, rexeneración, e probar o mellor para a xestión dos datos como insectos famentos. A resposta pode parecer obvia, mais o que vale engadir só no caso do seu predio. Basta editar o seu programa de transformación cunha saída (0) or die () ou algunha outra indicación para matar o seu traballo de procesamento. Unha razón importante pola cal a xente sempre intenta actualizar o último guión de procesamento antes de calquera carreira!

Demostración do Sistema

Para escribir este conxunto de artigos curtos, creei unha rede moi pequena para demostrar as tecnoloxías e metodoloxías. Lin moitos artigos, tutoriais e usado diversas ferramentas para configurar e supervisar o que estaba a ocorrer. De maneira ningunha eu teño ido para fóra, e saturada de oficina conxunto co tráfico e nin tiven acceso a un ordenador común os funcionarios para ver como o rendemento do servidor foi afectada.

O meu sistema de demostración foi moi humilde, de feito. Eu usei o meu escritorio regular configurado como un servidor de control de traballo. Polo que eu tiña instalado MySQL server instalado configurado como un mestre na replicación, PHP , Â e SVN ligadas a través de apache (para acceso vía traballador VM).

Eu, entón, creou unha máquina Center traballador no VirtualBox nun vello portátil con Windows XP seis anos. Eu configurar as tarefas programadas, segundo especificou despois da copia da VM na máquina e deixar ir.

A máquina virtual foi creada co PHP, subversión e MySQL. Eu confirme unha rama chamado "traballador" do meu traballo de servidores de arquivo e control por seguro que se pode actualizar a usar 'svn update ". Seguinte configuración que eu MySQL como un escravo e comprobado que os datos foron replicar a partir do MySQL no servidor de control de traballo ata o VM traballador. Despois de todo isto eu configurar o script bash e do traballo do cron.

O meu programa de procesamento, basicamente, deu ao longo das liñas do presente (cousa moi simple):

  • Ler no campo de nome
  • Contado o número de nomes similares nunha táboa da fonte de datos sobre a VM
  • Contado o número de nomes como anteriormente, pero dividindo o nome por espazos (por exemplo, nome propio, apelido do medio)
  • Repetido este proceso mil veces

Cada traballo durou aproximadamente 20 minutos para ser executado. Nun punto abri varias copias do VM traballador no portátil fiestras e observaba os traballos poden ser verificados polos cada un dos enderezos IP do traballador. Nese punto, eu tamén confirmou que a replicación se reinicia automaticamente.

Deixando o portátil para a marcha lenta deu lugar a un traballador comeza a procesar os traballos dende o servidor de control de traballo. Ao retomar o uso do portátil houbo un atraso de preto de 30-60 segundos, esta é unha cantidade razoable de tempo e persoal que precisa ser consciente de que a súa máquina pode facer unha pausa por un curto período ao voltar para a máquina. máquinas máis recentes non poden ter unha pausa de tanto tempo. O beneficio da cantidade de procesamento realizado por estas máquinas en períodos ociosos que máis que compensan os membros do persoal ter que esperar un curto período de tempo (digamos, 1 minuto), ao chegar ás súas máquinas de mañá (eu frecuentemente esperar máis que iso para un Windows Defender actualización para o lugar), sempre que tomaron coñecemento deste tempo (útil para incorporarse un almorzo!).

En xeral eu me sinto seguro de que teño demostrado nas tecnoloxías que se poden usar para crear tal sistema. Eu teño mostrado que este sistema funciona nunha escala (moi) pequeno e con pouco máis de experimentación pode ser máis grande utilizar os recursos das máquinas de oficina. Se eu non chegar ao punto de facelo eu estaría moi interesado en saber / ver cando alguén fai.

Conclusións da avaliación

O seguinte paso evidente sería comezar realmente un exemplo do mundo real e comezar a implantar un sistema como este dentro dun ambiente de escritorio para ver o que acontece. Pedir unha empresa se comprometer con esta empresa sen unha banda de chamas para probar a eficacia da tecnoloxía e pode ser un pouco difícil. Reixa / A computación distribuída é moi popular é nalgúns círculos, e ten unhas grandes aplicacións (BIONC, o SETI @ Home, Folding @ Home, etc). Eu non sabía, non obstante, atopar unha escala menor e un sistema simple como este nas miñas investigacións que poderían ser desenvolvidas dentro dun ambiente de escritorio.

Eu creei un sistema basicamente libres empregando software de código aberto e, sobre todo as ferramentas dispoñibles en case todo o escritorio. As tecnoloxías eran basicamente demostrado e amosar a executar e funcionar como esperaba. Espero ter mostrar que con moito traballo e non cunha configuración moi sinxelo, pode implantar unha oficina do sistema de grid computing, que é poderoso, barato, un e scalable, todo á vez.

Xa que o sistema está funcionando, non hai case ningunha final coa cantidade de personalización e melloras que podes facer. Por exemplo, estatísticas / Benchmarking poden ser facilmente engadidos amosando o valor dun tal sistema todos os días. Novas máquinas poden ser engadidas de forma rápida e doadamente como e cando chegan coas actualizacións de hardware existente reforzar o seu poder de procesamento.

Espero que disfrutara de ler esta serie de artigos cuxo dato alimento para o pensamento sobre a execución dun sistema de rede de oficina. A solución presentada aquí non necesariamente funcionará en todas as situacións, pero debe ser adaptable para permitir que obteña o seu procesamento de datos feito coa súa propia solución.

Síntase libre de me enviar comentarios, correccións ou melloras e vou facer o meu mellor para manter este artigo actualizado para corresponden.

3 Responses to "Office Grid Computing utilización de ambientes virtuais - Parte 5"

  1. [...] A parte final da serie, apropiadamente chamado Parte 5, imos discutir a implantación deste sistema para. Vou resumir o que foi aprendido e [...]

  2. Ola alí, cara Excelente artigo! Estou canso de uso de RSS e usar Twitter para que eu poida segui-lo alí:? D.
    PS: Vostede considera poñer vídeo no teu blog para manter os lectores máis me gustou creo que funciona, Roland Gorychka?.

  3. Vexa Twitter no lado dereito de cada páxina. Grazas!

Deixe unha resposta













Panorama Tema por Themocracy

10 convidados en liña agora
8 persoas, 2 bots, 0 membros
Max visitantes hoxe: 15 ás 02:40 UTC
Este mes: 26 en 2011/07/05 12:35 UTC
Este ano: 130 en 28-03-2011 22:40 UTC
Todas as horas: 130 en 28-03-2011 10:40 UTC