Aula 1 - Virtualização
Aula 1 - Virtualização
Aula 1 - Virtualização
Objetivos da Unidade
Introdução da Unidade
Olá, estudante! Boas-vindas a mais uma unidade. Agora que já conhecemos os papéis que as
diferentes máquinas podem assumir, vamos verificar, na prática, como instalar e configurar
máquinas com diferentes propósitos. Você já parou para pensar em quantos sistemas
operacionais diferentes existem? Será que há um único sistema que pode ser instalado em uma
máquina do tipo cliente e em uma do tipo servidor? Além disso, qual é a melhor forma de
testar e se familiarizar com esses diferentes sistemas operacionais?
Nesta unidade, vamos entender conceitos muito importantes e como aplicá-los de maneira
prática, para que você consiga responder às questões anteriores e muitas outras. Talvez você já
tenha ouvido falar de máquinas virtuais, mas será que já ouviu sobre conteinerização? Ainda
que sim, de maneira prática, como você pode conteinerizar uma aplicação web, por exemplo?
Se respondeu não a alguma dessas perguntas, não se preocupe! A ideia aqui é mostrar que,
caso você estude com afinco, pesquise e faça todas as atividades sugeridas, aprenderá a
implementar e configurar contêineres para sistemas distribuídos.
Uma importante empresa do ramo de tecnologia que presta serviços a praticamente todos os
bancos corporativos está com uma vaga aberta de trainee DevOp e, por isso, deu início a um
processo seletivo. Interessado em ingressar nessa empresa, você está disputando a vaga e, na
última etapa do processo seletivo, será preciso pôr seus conhecimentos à prova. Você será
capaz de atingir todos os objetivos conforme a necessidade da empresa?
Na primeira aula desta unidade, você entenderá quais são os princípios e as melhores práticas
relacionadas à ideia de virtualização. Já na segunda aula, será apresentado ao – relativamente
novo – conceito de contêineres e entenderá o motivo de muitas empresas de grande porte,
que possuem sistemas distribuídos altamente escaláveis, estarem migrando cada vez mais para
esse tipo de solução. Por fim, você terá a oportunidade de colocar em prática conceitos
importantes sobre conteinerização, por meio do uso de uma ferramenta largamente utilizada
no mercado de trabalho.
Chegou a hora de prosseguir com os estudos dos sistemas distribuídos, o que vai lhe
proporcionar conhecimentos e oportunidades no mercado de trabalho. Lembre-se de que,
quanto mais você se dedicar, mais poderá aproveitar os ensinamentos transmitidos neste
material.
Introdução da aula
Você já deve ter ouvido falar de (talvez até utilizado) softwares como o VirtualBox e o VMWare.
Nessa aula vamos entender, conceitualmente e de maneira prática, a importância desse tipo de
tecnologia e quais problemas ela veio solucionar.
Introdução da aula
A importância de softwares como o VirtualBox e o VMWare vai muito além do simples fato de
testar ou “dar uma olhada” na nova versão de um sistema operacional. Na situação-problema à
qual você será exposto, terá que criar uma máquina virtual com uma configuração previamente
definida, de forma que será necessário entender os principais parâmetros que devem ser
ajustados para tal. Caso não saiba como fazer isso, a máquina nem passará da fase inicial de
boot do sistema.
Imagine que você está participando de um processo seletivo para uma oportunidade muito
interessante e bem remunerada na área de DevOps da maior empresa nacional de portal de
notícias, cujos clientes que consomem o conteúdo disponibilizado por essa empresa são
bancos, em sua maioria. Na entrevista, além da Gerente de RH, também está participando o
Coordenador de Infraestrutura, que será o seu futuro gestor.
Inicialmente, o Coordenador pede para você criar uma máquina virtual e testá-la: neste
contexto, crie uma máquina virtual com o software VirtualBox. Esse tipo de procedimento é
rotineiro nesta empresa que necessita de máquinas para execução de diversos serviços de
tecnologia.
A virtualização se torna cada vez mais popular com o passar dos anos e é amplamente utilizada
nos ambientes corporativos e, em alguns casos, até domesticamente. O grande objetivo da
virtualização é fornecer uma versão virtual de tecnologias essenciais em computação, por
exemplo, redes, armazenamento, hardware, entre outros. Além disso podemos também,
virtualizar aplicações. Segundo Dawson e Wolf (2011, [s.p.]), a “virtualização desacopla as
tarefas e a parte funcional das aplicações da infraestrutura física necessária para seu
funcionamento, permitindo uma flexibilidade e agilidade sem precedentes em termos de
armazenamento, servidores e desktops”.
______
Assimile
______
Quando virtualizamos recurso de hardware, como memória RAM, processador, placas de vídeo,
placa de rede, entre outros, temos uma máquina virtual que funciona com os recursos de
hardware em formato virtual. Sabendo disso, podemos instalar um sistema operacional sobre
outro sistema, ou seja, sobre nossa máquina física podemos ter várias máquinas virtuais. Esses
recursos de hardware são representados por softwares na virtualização. A mesma coisa
também pode ser feita com a rede: é possível criar uma infraestrutura lógica de rede sobre
uma rede física. Nela podemos personalizar e configurar de formas diferentes da rede física,
conforme nossas necessidades. Também é possível ter em nossa residência uma rede física “A”
composta pelas redes lógicas “B” e “C”.
Para o usuário final, não faz diferença se a máquina acessada é física ou virtual, pois as duas
funcionam da mesma forma, o que acaba sendo imperceptível. Nesse cenário de virtualização
podemos ter em um mesmo servidor uma máquina virtual com o sistema operacional
Windows Server, uma máquina virtual com Linux e uma máquina com FreeBSD, por exemplo.
Os principais fatores que levam à utilização de virtualização são:
• Diminuição de espaço físico: muitas vezes, o ambiente corporativo não tem espaço
físico para suportar servidores, com todos requisitos necessários, como a refrigeração
adequada para eles.
Existem vários softwares nos quais é possível criar e administrar máquinas virtuais, e os mais
populares são VirtualBox, VM Ware e Hyper-V Microsoft. Nesta aula vamos utilizar o
VirtualBox©, fabricado pela Oracle®. Esse software tem uma licença do tipo GNU General
Public License (Licença Pública Geral GNU), GNU GPL ou simplesmente GPL. A licença GPL
permite a utilização e o estudo do software de maneira livre para quaisquer fins.
Após o download do instalador, devemos selecionar a opção “Next”. Agora devemos escolher
quais elementos da instalação queremos e qual será o local de instalação. No nosso caso
deixaremos tudo conforme o padrão. Lembrando que você deve ter 175MB livres em seu HD
para a instalação do VirtualBox. Após essas configurações devemos selecionar a opção “Next”,
conforme a figura que segue:
Instalando o VirtualBox. Fonte: captura de tela do VirtualBox.
Dentro da opção “Novo” definimos todas as configurações de nossa máquina virtual, como seu
nome, sistema operacional, quantidade de memória RAM, capacidade de disco rígido,
processamento, entre outras.
O papel da virtualização em sistemas distribuídos
Dois tipos de virtualização são muito úteis no contexto de sistemas distribuídos, conforme Coulouris et al. (2013):
• Virtualização de redes;
• Virtualização de sistemas.
______
Exemplificando
______
Para Coulouris et al. (2013), a virtualização de sistemas é uma alternativa interessante por
permitir emular o hardware de uma máquina física, permitindo, assim, que várias máquinas
virtuais, cada uma com um sistema operacional, coexistam e se comuniquem. Os autores ainda
salientam que a principal vantagem da virtualização de sistemas está no fato de que as
aplicações já escritas e validadas, que dependem de um sistema operacional em específico e
que necessitam se comunicar e interagir com outra aplicação em um sistema operacional
diferente, podem assim fazê-lo, através da virtualização dos sistemas operacionais, sem a
necessidade de que a aplicação seja reescrita ou recompilada.
______
Reflita
______
Arquitetura de virtualização
A maioria das pessoas, quando ouve falar de virtualização, pensa em um sistema operacional
“dentro” de um software como, por exemplo, o VirtualBox da Oracle, instalado em uma
máquina física obviamente com um sistema operacional instalado. Partindo desse contexto,
podemos destacar algumas características: esse sistema operacional instalado “dentro” da
máquina física refere-se a uma máquina virtual, pois é similar à sua máquina física, porém,
puramente emulada via software. O software que permite emular uma máquina física é, de
maneira genérica, chamado de hypervisor e é responsável por desacoplar a máquina física da
virtual, bem como alocar os recursos da máquina física, de acordo com a necessidade da
máquina virtual, conforme artigo da VMWare, uma das empresas mais conhecidas na área de
virtualização (VMWARE, [s.d.]).
______
Exemplificando
______
Podemos instalar várias máquinas virtuais em uma única máquina física, limitando-se, é claro,
às capacidades de processamento, RAM e armazenamento da máquina física. As máquinas
físicas são tipicamente chamadas de hosts (hospedeiros), e as máquinas virtuais são
tipicamente chamadas de guests (convidados), embora não seja tão comum a utilização dos
nomes traduzidos para o nosso idioma. A figura a seguir ilustra esses elementos.
Elementos de máquinas virtuais. Fonte: elaborada pelo autor.
______
Dica
Você pode fixar seu conhecimento acessando a documentação do VirtualBox, que auxilia em
todo processo de manipulação da ferramenta, assim como fornece informações sobre a
tecnologia de virtualização.
Retomando a situação apresentada na introdução desta aula, considere que você está
participando de um processo seletivo para uma oportunidade como trainee na área de DevOps
da maior empresa nacional de portal de notícias, cujos clientes que consomem o conteúdo
disponibilizado por essa empresa são bancos, em sua maioria. Na entrevista, você será
submetido a algumas atividades práticas sobre virtualização, definidas pelo Coordenador de
Infraestrutura.
Sua primeira atividade é criar uma máquina virtual. Crie uma máquina virtual com o software
VirtualBox, com sistema operacional GNU/Linux, distribuição Ubuntu Desktop, nas
configurações padrão, e acesse o website glassdoor (GLASSDOOR, 2021), a partir da máquina
virtual recém-criada, utilizando o navegador Firefox, da Mozilla. A primeira coisa que devemos
fazer é realizar o download do sistema operacional Ubuntu na versão Desktop que foi
solicitada, pode ser feito no site do Ubuntu (UBUNTU, 2019). Agora, no VirtualBox, devemos ir
até a opção “Novo”, conforme a figura abaixo:
Criando uma máquina virtual. Fonte: captura de tela do VirtualBox, elaborada pelo autor.
Agora, devemos definir um nome para nossa máquina virtual, o tipo de sistema operacional e a
versão. É necessário também estabelecer a quantidade de memória RAM que será usada pela
máquina virtual. O próximo passo é selecionar a criação de um novo disco virtual. Caso existam
discos virtuais prontos, também podemos utilizá-los. Na próxima figura criamos um novo:
Criando um disco virtual. Fonte: captura de tela do VirtualBox, elaborada pelo autor.
Agora que as configurações estão definidas e a máquina virtual já aparece na lista, vamos até a
opção “Configurações”, representada pelo ícone de uma engrenagem, para apontar o caminho
de nossa imagem (iso) que contém o sistema operacional. Podemos observar na figura abaixo
que a opção “Configurações” está habilitada:
Definindo as configurações da máquina virtual. Fonte: captura de tela do VirtualBox, elaborada pelo autor.
Caminho da imagem de instalação do sistema operacional. Fonte: captura de tela do Ubuntu, elaborada pelo autor.
Após a seleção, o local em que estava escrito “Vazio” passa ter o nome da imagem do Ubuntu.
Depois do apontamento do caminho da imagem, devemos pressionar o botão “OK” e, então, o
botão “Iniciar”, representado pelo ícone de uma seta na cor verde. Feito isso, será aberta uma
nova janela de execução da máquina virtual. Agora, devemos pressionar a tecla “Enter” do
teclado para iniciar nossa máquina via CD, assim, teremos a opção de instalar nossa máquina,
seguindo as etapas de instalação até a conclusão. Depois de finalizar a instalação, podemos ver
a execução da máquina virtual. Agora, só resta ir até o site do Mozilla Firefox, realizar o
download e a instalação e acessar o site glassdoor, conforme solicitado.