|
|
| Linha 1: |
Linha 1: |
| == Técnicas ==
| |
|
| |
|
| Existem várias técnicas de virtualização, as quais fornecem aspectos similares, porém, diferem no grau de abstração e nos médodos usados para a virtualização.
| |
|
| |
|
| |
|
| |
| == Virtual Machines ( VMs ) ==
| |
|
| |
|
| |
|
| |
| As Máquinas Virtuais emulam algum hardware real ou fictício, o qual , por sua vez, requer recursos reais da máquina hospedeira.
| |
|
| |
|
| |
| Esta abordagem, usadas por muitos dos emuladores , permite que o emulador seja executado em um sistema operacional "guest" arbitrário , sem modificações, pelo fato dele não saber que não está sendo executado em hardware real.
| |
|
| |
|
| |
|
| |
| A questão principal dessa abordagem é que, algumas instruções da CPU necessitam de privilégios adicionais e não podem ser executadas no espaço do usuário, exigindo portanto, um Monitor de Máquinas Virtuais ( VMM ) para analisar o código sendo executado e torná-lo seguro, dinamicamente.
| |
|
| |
|
| |
| A abordagem de emulação de hardware é usada pelo VMware, QEMU Parallels e Microsoft Virtual Server.
| |
|
| |
| <br>
| |
|
| |
|
| |
| == Paravirtualização ==
| |
|
| |
|
| |
| Esta técnica também requer um Monitor de Máquinas Virtuais ( VMM ), porém, muito do seu trabalho é executado no sistema operacional convidado (guest), que por sua vez , é modificado para suportar este VMM, e evita o uso desnecessário de instruções privilegiadas.
| |
|
| |
|
| |
|
| |
| A técnica de paravirtualização também permite a execução de diferentes sistemas operacionais (OSs) em um único servidor, mas é necessário que eles sejam portados, ou seja, esses OSs sabem que estão rodando debaixo de um supervisor.
| |
|
| |
|
| |
|
| |
| A técnica de paravirtualização é usada por produtos tais como o Xen e o UML.
| |
|
| |
|
| |
| == Virtualização ao nível do SO ==
| |
|
| |
|
| |
| Virtualização de Containers
| |
|
| |
|
| |
| Muitas aplicações rodando em um servidor podem facilmente compartilhar a máquina com outros processos, se puderem ser isoladas e terem a segurança adequada.
| |
|
| |
|
| |
|
| |
| Além disso, em muitos casos sistemas operacionais diferentes não são necessários no mesmo servidor, apenas múltiplas instâncias de um único sistema operacional.
| |
|
| |
|
| |
|
| |
| Os sistemas de virtualização ao nível do sistema operacional foram projetados para prover o isolamento e a segurança necessários para rodar múltiplas aplicações ou cópias do mesmo sistema operacional ( porém, diferentes distribuições do OS ) no mesmo servidor.
| |
|
| |
|
| |
|
| |
| OpenVZ, Virtuozzo, Linux-Vserver, Solaris Zones e FreeBSD Jais são exemplos desse tipo de virtualização.
| |
|
| |
|
| |
| == Breve comparação ==
| |
|
| |
| As três técnicas diferem:
| |
|
| |
| * na complexidade de implementação
| |
|
| |
| * no suporte a diferentes sistemas operacionais
| |
|
| |
| * na performance em relação a um servidor stand-alone no nível de acesso aos recursos compartilhados.
| |
|
| |
|
| |
| Por exemplo, VMs tem uma abrangência maior de sistemas operacionais, porém sua performance é pior.
| |
|
| |
|
| |
| Para-VMs tem uma performance melhor , mas suportam poucos SOs um vez que eles precisam sofrer alterações para rodar nesse modo de virtualização.
| |
|
| |
|
| |
|
| |
| A virtualização ao nível do SO provê a melhor performance e escalabilidade em comparação com as outras abordagens.
| |
|
| |
|
| |
| == Aplicação pŕatica ==
| |
|
| |
|
| |
| * OpenVZ
| |
|
| |
|
| |
|
| |
| Solução implementada que permite criar, manipular e gerenciar VMs (Máquinas Virtuais) mostrando que o esforço interno para disponibilização de ambientes para desenvolvimento e produção podem ser otimizados.
| |
|
| |
|
| |
|
| |
| Com essa ferramenta, todo o processo interno de criar máquinas para desenvolvimento de aplicações, testes de carga, homologações de novas soluções e outras demandas poderiam ser facilitadas pelo gerenciamento do OpenVZ.
| |
|
| |
| O cliente deste serviço teria flexibilidade e agilidade na criação de máquinas virtuais para vários propósitos , com uma interface amigável e funcionalidades que satisfazem as principais atividades de um configurador de ambientes com autonomia para administrar as máquinas através de um interface web.
| |
|
| |
|
| |
| * Hélvio Pereira de Freitas
| |