Posso virtualizar o Windows e o Linux usando o virtualbox no solaris com zfs zvols?

Posso virtualizar o Windows e o Linux usando o virtualbox no solaris com zfs zvols?

Estou pensando em construir um sistema para virtualizar o Windows Server 2016 e o ​​CentOS 6 usando o virtualbox no Solaris (para uso doméstico), para aproveitar a confiabilidade do zfs.

Eu estava planejando adquirir uma placa DP ws/server com 1 TB de RAM, além de uma pilha de unidades WD Red.

Também estou interessado em permitir que VMs do Windows acessem recursos de GPU. Isso é possível nesta situação?

É possível hospedar uma VM Windows/Linux que use um zfs zpool ou vdev em vez de ir direto ao hardware para acesso ao sistema de arquivos?

Eu realmente só preciso de sistemas operacionais Windows e Linux, mas estava considerando um host Solaris apenas para os benefícios do zfs e sua compatibilidade com o virtualbox.

Existe uma maneira melhor de fazer isso ou escolhi a melhor opção?

Se este é o melhor método ou se existe uma maneira melhor, quais são as pegadinhas envolvidas em qualquer método que você sugere?

Tenho um orçamento limitado e preferiria gastar meu dinheiro em hardware em vez de software, se houver uma opção de software gratuito que funcione.

Minha outra opção foi adicionar um adaptador sas de hardware com raid 6 e usar o Windows Server 2016 como host para o virtualbox, o linux e quaisquer outras VMs, mas o ntfs não é tão confiável quanto o zfs ...

EDITAR

Meus objetivos são:

  1. Tenha uma máquina física.

  2. Minimize o potencial de perda de dados como resultado de falhas no disco rígido e outros problemas no sistema de arquivos.

  3. Execute um sistema operacional de servidor Windows 2016 e alguns aplicativos como Exchange, SQL Server. GPU é necessária aqui

  4. Execute um sistema CentOS modificado (FreePBX).

  5. Execute algumas outras máquinas virtuais, de preferência também com suporte para GPU.

  6. Complemente e eventualmente substitua uma caixa Synology RS812+.

  7. Minimizar gastos com software, permitindo mais/melhor hardware para meu orçamento.

Estou na fase de planejamento, então posso considerar qualquer coisa nesta fase.

Meu pensamento ao ter um host Solaris era que todo o sistema de arquivos seria zfs e, portanto, mais protegido contra falhas do que os convidados da VM poderiam permitir - a menos que eu tenha entendido algo errado em algum lugar. As alternativas parecem resultar em pelo menos parte do sistema de arquivos não-zfs, com menor confiabilidade.

Responder1

Também estou interessado em permitir que VMs do Windows acessem recursos de GPU. Isso é possível nesta situação?

Para passar diretamente por uma placa gráfica PCIe, você precisará de:

  • duas placas gráficas PCIe (uma se certos truques forem usados, como mover a placa por scripts do sistema hipervisor para o sistema convidado na inicialização)
  • uma placa-mãe que suporta Intel VT-d ou AMD Vi (anteriormente IOMMU)
  • software hipervisor que o suporta

Parece que infelizmente, Virtualboxatualmente não suporta. Se este for um requisito difícil, você pode precisar usar KVM no Linux ou Illumos, VMware ESXi ou Microsoft Hyper-V, todos eles suportam (embora seja necessário trabalho de configuração diferente).

É possível hospedar uma VM Windows/Linux que use um zfs zpool ou vdev em vez de ir direto ao hardware para acesso ao sistema de arquivos?

Sim, é possível. Aqui está ocomandos relevantes, retirado da postagem do blog de Johannes Schlüter:

# zfs create -V 10G tank/some_name
# chown your_user /dev/zvol/rdsk/tank/some_name
# VBoxManage internalcommands createrawvmdk \
  -filename /home/your_user/VBoxdisks/some_name.vmdk \
  -rawdisk /dev/zvol/rdsk/tank/some_name
# VBoxManage registerimage disk /home/your_user/VBoxdisks/some_name.vmdk

Alternativamente, você pode usarCOMSTARpara servir o zvol por meio de iSCSI.

Embora isso tenha apenas uma pequena sobrecarga adicional e nenhuma vantagem direta no caso local, você pode lucrar com isso quando quiser espalhar e, por exemplo, adicionar outro servidor de armazenamento (redundante) ou ao mover o armazenamento para uma caixa separada.

No seu caso específico eu não faria isso, mas existe a opção (também com NFS em vez de iSCSI, mas ao usar zvols em vez de sistemas de arquivos não há vantagem imediata se ambos estiverem configurados corretamente).

Existe uma maneira melhor de fazer isso ou escolhi a melhor opção?

  • Se você quiser usar o Virtualbox, isso seria o que eu faria
  • Se você for flexível em relação ao hipervisor, você pode dar uma olhada no SmartOS (ZFS, Zones e KVM em um pequeno sistema operacional de servidor quase sem estado construído especialmente para hospedar máquinas virtuais)
  • Se você precisar de passagem PCIe para placas gráficas, talvez seja necessário usar Linux+KVM, ESXi ou Hyper-V como hipervisor, virtualizar a VM de armazenamento Solaris/illumos, passar os discos para ela e servi-los de volta por NFS ou iSCSI para o hipervisor, onde é usado normalmente. Isso também é conhecido como dispositivo de armazenamento All-in-One (AiO), sugiro ler sobre o conceito emexcelente manual do gea(veja o PDF vinculado na parte superior). Parece complicado, mas uma vez configurado, é surpreendentemente simples e flexível, pois você pode espalhá-lo da rede virtual para a rede física a qualquer momento, pode substituir o hardware normalmente e toda a abordagem é em camadas. Tem algumas desvantagens, mas só irei abordá-las se você estiver interessado, pois são um nicho e tanto.

Em relação à sua edição:

  1. Tenha uma máquina física.
  2. Minimize o potencial de perda de dados como resultado de falhas no disco rígido e outros problemas no sistema de arquivos.
  3. Execute um sistema operacional de servidor Windows 2016 e alguns aplicativos como Exchange, SQL Server. GPU é necessária aqui
  4. Execute um sistema CentOS modificado (FreePBX).
  5. Execute algumas outras máquinas virtuais, de preferência também com suporte para GPU.
  6. Complemente e eventualmente substitua uma caixa Synology RS812+.
  7. Minimizar gastos com software, permitindo mais/melhor hardware para meu orçamento.

Em termos gerais, você tem duas opções possíveis de configuração do All-in-One - armazenamento virtualizado (como no leia-me do napp-it que vinculei) ou armazenamento no hipervisor. Vou chamá-los de A e B para comparar seus pontos.

  1. A e B são iguais porque ambos estão na mesma máquina física.
  2. A e B são quase iguais porque ambos os sistemas podem usar ZFS. Com A, você é livre para escolher seu sistema operacional de armazenamento (Solaris, Illumos, Linux, BSD), com B, você deve escolher algo que suporte ZFS e passagem PCIe para VGA (atualmente apenas Linux e FreeBSD). Isso também afeta a escolha do hipervisor (ESXi, Hyper-V, KVM com A e somente KVM com B).
  3. A e B são iguais. Observe, entretanto, que uma única GPU só pode ser passada para uma única VM em execução, que a ocupa completamente. A troca de GPUs requer o desligamento das VMs afetadas. Se você precisar de suporte de GPU compartilhado, suas opções são limitadas: Nvidia Tesla/Grid (muito caro) ou novas GPUs compartilhadas Intel Skylake (não muito poderosas, ainda experimentais, consulteApresentação KVMGT).
  4. Não há problema em ambos os casos, pois uma placa VGA virtual é suficiente.
  5. Consulte o ponto 3, dependendo do número de VMs, pode ser aceitável comprar várias placas ou uma única placa Grid ou esperar até que o compartilhamento seja implementado corretamente para todas as placas no KVM.
  6. Ambos os casos suportam o uso de iSCSI e NFS para uso interno e externo (ou seja, rede real), depende da sua preferência de administração. Além disso, ambos podem usar o armazenamento do NAS/SAN (assumindo, pela folha de dados, que eu não tenho o sistema).
  7. Independentemente da sua escolha, todos os softwares podem ser executados sem qualquer custo de licença, exceto, é claro, o Windows Server mais as CALs necessárias (mas que podem ser substituídas pelo samba4) e o Solaris (pode ser substituído por uma distribuição illumos como OmniOS, OpenIndiana ou SmartOS) . A solução Grid pode ter custos adicionais de licença, não investiguei porque o hardware em si é tão caro que não é útil para esses casos.

Então, tudo se resume em grande parte à preferência:

  • Se você estiver confortável com a administração do Linux (incluindo ZoL) e a configuração do KVM (pode ser um pouco complicado dependendo do hardware e das distribuições), você pode ignorar o armazenamento adicional da VM e a necessidade de pequenos SSD/HDD se optar pela solução B.
  • Se, por outro lado, você quiser escolher entre toda a gama de opções e usar o melhor sistema para cada caso, poderá se beneficiar da flexibilidade da solução A (embora possa ocorrer aqui uma pequena sobrecarga interna da rede).

informação relacionada