Aula 04
Aula 04
Aula 04
Distribuídos
Virtualização e Conteinerização
• Teleaula nº: 4
Contextualização
• Virtualização
• Containerização
• Simulação com Docker
Virtualização
Virtualização
• Amplamente utilizada nos ambientes corporativos e,
em alguns casos, até domesticamente.
• Fornecer uma versão virtual de tecnologias essenciais
em computação, por exemplo, redes, armazenamento,
hardware, entre outros.
• Virtualizar aplicações.
• Exemplo: site em servidor virtual ou máquina virtual
Virtualização
Virtualização de recursos de hardware - máquina
virtual que funciona com os recursos de hardware em
formato virtual.
• são representados por entidades de softwares
• Máquinas virtuais (VMs)
• Software Defined Storage (SDS),
• Software Defined Networking (SDN)
• Software Defined Data Center (SDDC)
Componentes principais da virtualização
Aplicações Aplicações
Máquinas
Convidado
Virtuais
Hardware Camada
virtual Software de emulação de
Virtualização
Fonte: retirado de: Pereira, Caique Silva. Sistemas distribuídos. Londrina: Editora e Distribuidora Educacional S.A., 2019
Arquitetura de
Máquinas Virtuais
Arquitetura de Virtualização
Hypervisor
Software que permite emular uma máquina física
é 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
Exemplos: VirtualBox, VMWare, QEMU (Android Studio)
Arquitetura de Virtualização
• Podemos instalar várias máquinas virtuais em uma
única máquina física, limitando-se às capacidades de
processamento, RAM e armazenamento da máquina
física.
• As máquinas físicas são tipicamente chamadas de
hosts (hospedeiros)
• As máquinas virtuais são tipicamente chamadas de
guests (convidados)
Elementos de Máquinas Virtuais
Programa 1 Programa 1 Programa 1
Hypervisor
RAM
Conteúdo da Autenticação
Interface WEB
página dos usuários
Lógica do Controle de
Relatórios
negócio compras
Banco de Banco de
Dados
dados dos dados dos
usuários produtos
nginx.1 nginx
Nó escravo (worker) 3
nginx.1 nginx
Windows 10
API Banco
Node.js MySQL
Debian Ubuntu
Hypervisor Docker