A virtualização de servidores é a técnica de execução de servidores virtuais para um servidor físico que permite o compartilhamento e execução de dados com recursos que proporcionam critérios e benefícios com maior disponibilidade de aplicações e serviços, o qual pode aperfeiçoar a estrutura do ambiente. Com diversos servidores as vantagens são inúmeras, destacando-se redução de espaço físico para armazenamento, redução de energia e a redução de custos. Diante disso, tem-se como tema a Virtualização de Servidores.
Mas, ainda com todos esses benefícios de um ambiente virtualizado, há uma preocupação sobre a tecnologia de virtualização de servidores que pode gera os seguintes questionamentos: Qual a melhor ferramenta de virtualização e o recurso para a estrutura do ambiente? É compensatório todo este investimento tecnológico? Esta ferramenta trará resultados compensatórios à estrutura do ambiente?
Há inúmeros benefícios de otimização acerca da virtualização de servidores, tendo fácil implantação, backup e recuperação de dados, com flexibilidade e eficiência na gestão de compartilhamento de recursos.
A virtualização de servidores é um tema muito interessante. E vem demonstrando os avanços na tecnologia e estruturas dos ambientes virtualizados, além de grandes benefícios.
Virtualização
Na década de 60 surgiu a virtualização em servidores de grande porte da IBM, os Mainframes. Esta virtualização era realizada por meio do software de virtualização VM CMS, no qual se podia criar virtual machines (sistemas operacionais - Figura 1). Virtualização corresponde à reorganização de ambientes operacionais de servidores físicos em ambientes de servidores virtualizados, por meio da emulação de hardwares através de software, obtendo-se virtual machines.
Figura 1. Virtual Machine. Fonte: Dgtecnologia (2014)
Em 1999, a VMWARE Inc. iniciou o conceito de virtualização na plataforma x86 com uma estrutura computacional que reduziria a ociosidade de processamento das máquinas. A partir de 2005 fabricantes de processadores, como a Intel e AMD, aplicaram essa tecnologia aos seus produtos. O hardware possui funcionalidades específicas que permitem melhor desempenho das aplicações.
A virtualização conta com inúmeras vantagens que chega a constituir um novo campo da informática, permitindo a simulação de aplicativos, ferramentas e demais recursos. Facilita a transformação de ambientes físicos complexos em ambientes simplificados e fáceis de gerenciar.
Ao utilizar as camadas adicionais de software (hypervisors) entre as máquinas virtuais e o servidor para que haja o compartilhamento de hardware, a virtualização autoriza que muitos sistemas operacionais sejam executados em um único servidor físico. Cada máquina virtual terá um sistema operacional independente, com desempenho parecido de uma máquina física.
Por meio da virtualização, cada virtual machines é capaz de disponibilizar serviços de rede virtualmente através de interfaces da rede, switches, roteadores e firewalls virtuais. Ao sistematizar uma máquina virtual utilizam-se recursos como memória, processamento através de dispositivos lógicos, espaço de disco, de acordo com a necessidade específica a qual se destina a virtual machine.
A virtualização propicia o uso do monitor de máquina virtual. Tal monitor pode ser programado a realocar, automaticamente, recursos que não estão sendo utilizados pelo servidor virtualizado ou em servidores que precisam manter a estabilidade de desempenho e atender as intenções em todos os níveis de serviço.
Pode-se conceituar virtualização como uma maneira de executar vários serviços, programas, ou até mesmo sistemas operacionais em um único equipamento físico, possibilitando simular hardwares diferentes em um único equipamento, como roteadores, switchs, servidores, celulares, etc.
Formas de Virtualização
Existem várias formas de uso de virtualização, nas quais se destacam: a virtualização assistida por hardware, a virtualização de aplicativos, a virtualização de storage e a virtualização do sistema operacional. Veja a comparação na Figura 2.
Figura 2. Arquitetura Tradicional x Virtualização. Fonte: Adaptado de Faster Tecnologia (2014)
- Virtualização assistida por hardware: reproduz de maneira similar os componentes físicos da máquina, emulando processador, memória cache, ciclos de clock e os demais componentes e processos. Compreende o tipo mais complexo de virtualização, no qual permite que o sistema guests rode isolado no hardware do sistema host. Neste processo, existem circuitos no processador e no controlador de memória que possibilitam ao hardware rodar simultaneamente vários sistemas operacionais.
- Virtualização de aplicativos: possibilita a execução de qualquer aplicação, protegendo o sistema operacional de ações que poderiam comprometer a sua performance. Neste processo, as aplicações não usam arquivos, bibliotecas do sistema e chaves de registro, elas apenas são executadas. Acontece o isolamento da aplicação no interior da máquina virtual, tornando-se independente do sistema operacional, uma vez que pode ser executada em qualquer sistema que possua a máquina virtual instalada. Por exemplo, a Java Virtual Machine (JVM), que pode rodar aplicativos Java em qualquer sistema operacional que possua a máquina Java instalada.
- Virtualização de Storage: também conhecida como armazenamento. Compreende o fortalecimento de vários dispositivos físicos, reorganizando-os em grupos virtuais para um comum acesso de aplicativos e usuários finais. Esta interação das camadas físicas não interromperá o acesso aos dados na camada lógica de armazenamento. Este processo de virtualização é ramificado em armazenamento de bloco (SANs - Storage Area Network, - e NAS - Network Attached Storage) e armazenamento de arquivo.
- Virtualização do sistema operacional: possibilita de vários sistemas operacionais rodem em um mesmo hardware simultânea e isoladamente, fornecendo desempenho, segurança e confiabilidade aos meios englobados. Além disso, com ela é possível englobar tanto software quanto hardware, possibilitando usá-la de inúmeras maneiras, não se limitando somente a uma aplicação ou arquitetura. Para que escolha a mais correta, devem-se considerar as necessidades a serem satisfeitas e os objetivos a serem alcançados.
Máquinas Virtuais e Emuladores
As máquinas virtuais correspondem aos ambientes totalmente isolados, capazes de executar aplicativos e sistemas operacionais similares a um computador físico, possuindo placa de rede, CPU, memória e outros elementos de hardware, formados, porém, por software. Em outras palavras, são elementos de arquivos simples, portáveis e compactos, os quais facilitam a movimentação e a cópia para outro local.
Os snapshots são ficheiros embasados no estado, dados e na configuração da máquina em um determinado espaço de tempo, capaz de proporcionar maior segurança às máquinas virtuais. Uma máquina virtual pode ter vários snapshots mesmo online. Esses ficheiros são úteis para fazer backups temporários de uma máquina virtual, porém não são recomendados como solução permanente de cópia de segurança.
Os emuladores tratam-se de um software com função idêntica a um hardware real, reproduzindo as orientações do processador simulado para o processador físico, porém perdem a sua eficiência quando traduz cada instrução da máquina real.
Concluindo, há grandes diferenças entre virtualização e emulação. O emulador é utilizado para possibilitar a interação entre dois sistemas diferentes intermediando o processo, permitindo que um sistema rode sobre outro para o qual, inicialmente, não foi construído, sem afetar seu desempenho. Em contrapartida, a virtualização usa a emulação e outras técnicas a fim de possibilitar que diversos sistemas executem sobre uma mesma plataforma, porém importando-se com o desempenho.
Virtualização de Servidores
A virtualização de servidores não tinha o mesmo conceito que hoje em dia. Após 20 anos, em 1998, VW Ware foi a primeira empresa a comercializar hypervisores para pcs ou servidores com processadores x86.
A virtualização de servidores compreende uma técnica de execução de um ou mais servidores virtuais sobre um servidor físico, permitindo maior densidade de uso de recursos (hardware, espaço, etc.), enquanto mantém o isolamento e a segurança do processo.
A virtualização deixou de ser uma tendência e passou a ser uma realidade de muitos setores, sejam eles envolvidos ou não com a área da tecnologia. A virtualização tem sido utilizada desde os primórdios da informática, em que os mainframes simulavam terminais virtuais remotos nos quais vários clientes usavam, remotamente, os seus recursos.
Atualmente, neste mundo globalizado, é quase impossível realizar qualquer serviço sem que haja a utilização da internet ou sem o conhecimento de algum servidor ou serviço virtualizado. Pode-se citar como exemplo os serviços de cloud computing (Figura 3), em que servidores vrtualizados formam uma rede fisicamente distribuída para cada serviço específico que se pretende executar.
Figura 3. Could computing
A virtualização de servidores utiliza um software que simulará completa ou parcialmente o hardware no qual será executado um sistema operacional, não precisamente o mesmo do sistema hospedeiro. Assim, a grande vantagem da virtualização é a possibilidade de simular um hardware que não seja o hospedeiro.
Alguns exemplos de produtos de virtualização de servidores: Hyper-V (Microsoft), ESX (VMWare), Xen (Citrix), etc.
Há inúmeros tipos de virtualizações, em que cada um seja adapta a uma função específica em diferentes tarefas, como, por exemplo, quando há necessidade de simular ou virtualizar roteadores, switchs, bridges, hubs e demais equipamentos de rede pode ser utilizados softwares como: Dynamips/Dynagen ou Packet Tracker. Para virtualizar máquinas, servidores para testes em sistemas desktop, utiliza-se os softwares: Virtual Box, Qemu, VMWare, Microsoft Virtual PC, BootCamp ou Parallels. Para a virtualização de servidores em ambiente de produção usa-se: Xen, VMWare ou KVM.
A utilização da virtualização de servidores traz alguns benefícios para os usuários, dentre eles:
- Redução de downtime: Eliminação de paradas de ambiente de produção; Redução do tempo de downtime com virtualização de servidores; Prevenção de perda de dados; Prevenção de downtimes não planejados.
- Automação e gerenciamento: Sistemas de gerenciamento centralizado de máquinas virtuais com interface amigável e intuitiva; Gerenciamento de ambiente de produção e homologação; A Virtualização de Servidores proporciona Gerenciamento de implantação; Gerenciamento de atualização de versões de softwares e firmwares.
- Otimização da Infraestrutura: Pesquisas apontam que a utilização de servidores convencionais é em torno de 5 – 20%, através da virtualização essa taxa fica em torno de 65% - 90%; Maior ROI; Redução de até 40% de custo operacional; Com Virtualização de Servidores é obtido menor TCO de servidores; Melhor Gerenciamento; Otimização de infraestrutura, espaço físico e maximização da utilização de recursos; Redundância em caso de falha de Hardware, Virtualização de Servidores, o ambiente virtualizado migra as máquinas virtuais para os demais servidores virtualizados.
Vantagens e Desvantagens
A virtualização não é mais uma tendência e sim uma necessidade no mundo corporativo, e vem trazendo inúmeras vantagens a todos, já que pela economia de recursos e equipamentos também se refere a uma tecnologia verde, ou seja, sustentável.
A virtualização traz consigo muita praticidade, entretanto, é preciso avaliar se não acarretará problemas em situações de falhas, como, por exemplo, a queima de um host físico.
Há inúmeras vantagens e desvantagens ao se utilizar a virtualização de servidores.
Vantagens:
- Gerenciamento centralizado
- Instalações simplificadas
- Facilidade para a execução de backups
- Suporte e manutenção simplificados
- Independência de Hardware
- Migração de servidores para novo hardware de forma transparente
- Maior disponibilidade e mais fácil recuperação em caso de desastres
- Compatibilidade total com as aplicações
- Economia de espaço físico
- Economia de energia elétrica utilizada em refrigeração e na alimentação dos servidores.
- Segurança
- Confiança e disponibilidade
- Custo
- Adaptação às diferentes cargas de trabalho
- Balanceamento de carga
- Suporte a aplicações legadas
- Redução de custos
- Melhor aproveitamento do espaço físico
- Melhor aproveitamento do hardware
- Simulações
- Pode-se utilizar sistemas operacionais que não possuam compatibilidade com o hardware, utilizando os recursos de virtualização de hardware, possibilitando, assim, testes ou até mesmo economia com a compra de hardware de menor custos.
- Redução do downtime
- Facilidade ao migrar ambientes
- Utilização de uma VM como ambiente de desenvolvimento
Desvantagens:
- Grande uso de espaço em disco, já que é preciso de todos os arquivos para cada sistema operacional instalado em cada máquina virtual.
- Dificuldade no acesso direto a hardware
- Grande consumo de memória RAM
- Gerenciamento
- Desempenho
Em suma, a virtualização é inevitável nos ambientes organizacional, principalmente no que concerne à Tecnologia da Informação, haja vista a sua economia com equipamentos, conjuntamente com o aumento de capital intelectual nos mais variados segmentos profissionais, bem como a alta demanda por soluções automatizadas e eficientes.
Referências
BUENO, Henrique. Virtualização – Um pouco de história. Wordpress, 29 abr. 2009. Acesso em: 05 mai. 2014.
DEVEL SISTEMAS. Virtualização de servidores – Vantagens e desvantagens. Acesso em: 06 mai. 2014.
LAUREANO, Marcos. Máquinas Virtuais e Emuladores: Conceitos, Técnicas e Aplicações. São Paulo: Novatec, 2006.