Tenho alunos executando Mac e Windows. A cada semestre, sempre há muitas perguntas sobre como instalar a ferramenta “X”. Gostaria de criar uma única máquina virtual Linux (tentei o VirtualBox) e distribuir a imagem. Dessa forma, todas as ferramentas estão pré-instaladas e todos estão usando o Linux.
A questão é que, como as pessoas têm hardware gráfico diferente, como isso funciona? Ou isso funciona? E se sim, como distribuí-lo? Eles precisam instalar o VirtualBox e carregar algum arquivo que eu lhes fornecer, ou posso criar um único instalador facilmente?
virtualbox
Dov
fonte
fonte
Respostas:
Eu gosto da resposta centrada no Vagrant de mperrin , mas como você pode ver nos comentários, minha opinião pessoal é “simplificar” e eu recomendaria uma exportação simples de um OVA do VirtualBox conforme você configurou e passou isso para seus alunos .
Dito isto, você pergunta o seguinte:
Virando para o DevOps
Não tenho muita certeza do que você está ensinando ou fazendo ou do que espera que seus alunos saiam de todo esse exercício, mas muitas das preocupações que você está transmitindo se voltam para o reino do DevOps (desenvolvimento e operações) e você pode querer considere misturar esse conceito em seus ensinamentos.
Agora, não acho que todo o conceito de DevOps precise ser transmitido, mas em minha mente sua criação de um OVA VirtualBox estável que você passa para os alunos e pede que eles usem em suas máquinas domésticas / escolares definitivamente abriria uma porta para perguntas sobre como lidar com diferentes configurações de hardware / sistema e como se adaptar.
Portanto, minha recomendação para você é recomendar fortemente que os alunos usem o VirtualBox OVA que você configuraria, mas também esteja aberto a permitir que os alunos instalem ferramentas por conta própria. Meu intestino me diz que 95% - ou mais - dos alunos usaria feliz e facilmente o método OVA do VirtualBox, mas você não pode esperar que seja 100% perfeito.
Talvez no final você deva ter apenas uma linha de base de requisitos para o uso de ferramentas de curso e ser flexível em sua implementação.
Seja flexível em relação à forma como as ferramentas são usadas
Por exemplo, desenvolvo muito o desenvolvimento de PHP e administro sistemas / DevOps relacionados ao desenvolvimento de PHP. E como estou em um Mac, prefiro usar o MAMP para desenvolvimento local. Mas trabalho com desenvolvedores que usam Linux ou Windows para seu desenvolvimento. Heck, alguns gostam de usar o Vagrant juntamente com o VirtualBox para suas necessidades de desenvolvimento de LAMP. E minha atitude é que não me importo com a configuração básica do sistema operacional. Desde que a versão do PHP esteja alinhada com as versões que meus clientes usam, eu estou bem com o que quer.
Ocasionalmente, um desenvolvedor declara que um bug foi causado porque, por exemplo, o código que testei no MAMP "não é o mesmo" do que seria em uma instalação do Linux LAMP. E digo com 100% de confiança, que sempre provei que o problema não é o sistema operacional base, mas a codificação do PHP em si.
Portanto, tudo isso é basicamente transmitir o seguinte: Seja flexível na explicação do uso de uma configuração do VirtualBox para os alunos e não espere que um sistema operacional com alimentação por colher simplesmente acabe com todos os problemas. Isso pode deixar 95% de seus problemas fora do parque, mas os 5% restantes sempre deverão ser abordados de alguma forma. Portanto, observe uma configuração do VirtualBox - e talvez um script do Vagrant - como uma ferramenta que pode ser usada em um arsenal para facilitar a vida de alguns, mas não necessariamente a solução definitiva para todos os problemas.
fonte
Você deveria dar uma olhada no Vagrant .
O Vagrant suporta o VirtualBox e permite:
Será muito mais fácil compartilhar um ou vários arquivos de texto do que uma grande exportação da imagem do VirtualBox. Especialmente se você deseja gerenciar atualizações.
Depois que o VirtualBox e o Vagrant são instalados, é simples:
Vai:
vagrant ssh
.Um único arquivo Vagrant também pode lidar com especificidades de hosts Windows ou Mac.
fonte
Não importa nada - o virtualbox (e todos os outros softwares de virtualização) emula seu próprio adaptador de vídeo (IIRC cirrus logic). Enquanto o arquivo virtualbox tradicional é dividido em arquivos diferentes para configurações e armazenamento, você pode exportá-lo para um arquivo ovf, conforme sugerido. Se seus alunos podem instalar o virtualbox ou o vmware, isso deve ser trivial. Caso contrário, eles precisam aprender.
A instalação do virtualbox é bastante trivial (supondo que você tenha suporte de hardware).
Há algumas coisas que eu sugiro: mantenha a VM em 32 bits (para que você não precise se preocupar com o suporte ao VT-X no host), criando um tutorial para instalar a caixa virtual nos 2 grandes sistemas operacionais (o Windows é simples, o linux precisa de algumas etapas adicionais) e a importação do arquivo OVF. Isso também significa se os alunos querem usar o vmware player ou algo semelhante. Use o NAT para redes, a menos que você precise executar um servidor acessível de fora.
Se o desempenho não for um problema, você provavelmente poderá agrupar tudo em uma instância do QEMU (eles podem ser configurados para execução independente) e scripts de inicialização adequados. Eu consideraria isso um último recurso.
Eu observaria que muitas universidades realmente fornecem à VM ferramentas adequadas (o IIRC stanfords CS 50 faz isso e é um curso disponível gratuitamente na edx), portanto, pode valer a pena ver como elas o fazem.
fonte
Como alternativa à maioria das tecnologias de virtualização, o Linux (por exemplo, Ubuntu) pode ser instalado em um pendrive. Praticamente todos os computadores iniciam um pen drive, e os instaladores mais modernos detectam placas gráficas / placas de rede no momento da inicialização. Se você instalar um Ubuntu de 32 bits, ele será executado em quase todo o hardware que as pessoas provavelmente terão em casa.
Eles são fáceis de distribuir e não requerem QUALQUER software instalado adicional. Eles também podem ser facilmente movidos de uma máquina para outra - desconecte-o do computador da escola e coloque-o no bolso. Quando chegar em casa, basta conectá-lo.
Eles podem ser obtidos com um preço bastante baixo (percebo que os orçamentos das escolas são muito limitados!); dependendo de qual aplicativo seria executado na máquina, 4 GB devem ser suficientes, talvez 8 GB.
fonte
Outra opção a considerar. Se você não está realmente preocupado com o fato de eles terem uma GUI, use algo como terminal.com .
Você pode criar seu próprio instantâneo público e simplesmente mantê-lo disponível para seus alunos. É semelhante à abordagem do VirtualBox, mas, em vez de instalar as VMs em sua própria máquina, está na
nuvem deoutra pessoa.Então, tudo o que eles precisam é de um navegador da web suficientemente moderno. E se estiverem interessados, eles podem configurá-lo para que possam usar SSH / Putty / etc.
De acordo com as figuras, se os alunos estiverem usando a microinstância (256 MB de RAM, alguns GB de espaço em disco), se pausarem a VM quando não estiverem em uso, isso custaria US $ 9 / ano por 8h / dia. Não posso falar pelo terminal.com, mas suspeito que, se você os tiver contatado, eles poderão fornecer algum tipo de desconto educacional.
fonte