Esse site utiliza cookies
Nós armazenamos dados temporariamente para melhorar a sua experiência de navegação e recomendar conteúdo do seu interesse.
Ao utilizar os nossos serviços, você concorda com as nossas políticas de privacidade.
Esse site utiliza cookies
Nós armazenamos dados temporariamente para melhorar a sua experiência de navegação e recomendar conteúdo do seu interesse.
Ao utilizar os nossos serviços, você concorda com as nossas políticas de privacidade.
Categoria de Tecnologia
Postado em 24 agosto 2022
Atualizado em 24 agosto 2022
Palavras-chave: infraestrutura,hardware,maquina,virtual,software
Visualizações: 2799
A infraestrutura de máquinas disponíveis no mercado hoje, possibilitou uma série de capacidades para a ciência da computação. Computação em nuvem é um exemplo disso.
A computação em nuvem permite que um usuário final possa acessar múltiplos computadores através da internet, sem a presença de infraestrutura extra. Assim como o fornecedor desses serviços não precisa necessariamente ter múltiplos computadores disponíveis para fornecimento.
Em outras palavras, um único computador pode abrigar múltiplos computadores dentro dele. Isso se chama virtualização.
A virtualização é o uso de determinados softwares para criar ambientes virtuais isolados em uma mesma máquina. Esses ambientes virtuais são praticamente idênticos a um computador convencional.
O ambiente virtual compartilha os mesmos recursos da máquina hospedeira, como CPU, memória e internet.
A virtualização pode ser parcial ou total, sendo respectivamente chamada de para-virtualização ou virtualização total. Na maioria dos casos, a virtualização total é adotada e normalmente é chamada apenas de virtualização.
O ambiente virtual é chamado de máquina virtual, que frequentemente é representado pela sigla VM (Virtual machine). Um computador pode hospedar múltiplas VMs, que serão gerenciadas pelo VMM (Virtual machine monitor).
A virtualização pode ser efetuada por um hipervisor (hypervisor) como no exemplo acima ou por um contentor (container).
O hipervisor é o intermediário entre a máquina hospedeira e as máquinas virtuais.
Esse software representa uma camada na virtualização, responsável por balancear a distribuição de recursos físicos da máquina hospedeira entre as VMs, portanto sendo um VMM.
Ao todo, existem 2 tipos de hipervisores, o tipo 1 (bare-metal architecture) e o tipo 2 (hosted architecture).
No tipo 1, o hipervisor é diretamente instalado no hardware do computador, ou seja, de forma independente do sistema operacional (OS).
Nesse caso, ao mesmo tempo que utilizamos esse computador, a máquina virtual estará rodando em segundo plano, podendo ser usada como servidor.
O hipervisor tipo 1 é o mais eficiente, pelo fato de ter acesso direto aos recursos da máquina física.
No caso do hipervisor tipo 2, a camada de VMM é instalada acima do sistema operacional, idêntico a um aplicativo executável.
O hipervisor tipo 2 é de fácil gerenciamento e acesso, sendo bastante conveniente para testes.
Apesar de ter uma performance mais baixa do que o tipo 1, ainda é o tipo mais utilizado, pois apresenta bastante facilidade na instalação.
Máquinas virtuais podem ser utilizadas como um computador convencional, seja para rodar aplicativos específicos ou disponibilizar serviços para terceiros.
Caso, uma máquina seja contaminada por algum tipo de vírus, a máquina hospedeira (máquina física) não sofre riscos de ser contaminada, assim como as outras máquinas virtuais também não sofrem nem um tipo de dano.
A máquina virtual pode ser restaurada facilmente em casos de ataque, recuperando o mesmo estado antes da contaminação.
O contentor não utiliza hipervisor, sendo gerenciado por um software de containers e sofrendo influência do sistema operacional instalado.
Os containers compartilham o mesmo kernel do sistema operacional.
A grande diferença é como os recursos físicos são utilizados. Além disso, contentores e VMs são usados para propósitos diferentes.
A máquina virtual é um computador virtual que utiliza uma porção física do computador hospedeiro, sendo considerada uma máquina totalmente separada do computador físico. Mesmo se um usuário acessar um servidor virtual, não é possível saber se de fato essa máquina é virtual ou física. Além disso, ainda é possível selecionar os recursos de hardware, como memória RAM.
Algumas das vantagens da máquina virtual são:
O container também é um ambiente virtual isolado, porém é um isolamento parcial e não é considerado uma máquina virtual. A virtualização por containers é usada para simular múltiplos ambientes que empacotam determinados aplicativos, simulando futuros ambientes onde aplicativos em desenvolvimento serão implantados (deployed). Porém, isso não significa que containers não podem ser utilizados no modo de produção.
O container roda em cima do sistema operacional atual do computador, por isso dependendo do sistema operacional instalado na máquina, diferentes configurações podem ser necessárias na construção de containers.
Algumas vantagens do container são:
A virtualização é a criação de um ou mais ambientes virtuais em uma mesma máquina física, com o intuito de cumprir o mesmo papel de um computador físico.
Existem vários modos de virtualização, com suas respectivas vantagens. A virtualização é principalmente utilizada para cortar custos de infraestrutura e ocupação espaço físico.
Projetos práticos
Programando o clássico jogo da serpente usando o framework p5.js. Tutorial indicado para iniciantes da programação que querem aprender os conceitos básico da área criando jogos.
Implementando um programa que encontra a menor distância entre dois pontos dentro de um labirinto usando o algoritmo A* (a-estrela).
Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.
Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.
Fazendo a integração contínua de Jenkins, Sonatype Nexus, Sonatype, JUnit e Gradle para automatizar processos repetitivos. Prática bastante usada em tecnologias de DevOps.
Existe muitos programadores que escrevem algoritmos mal planejados. Essa falta de planejamento dificulta a manutenção do aplicativo e aumenta a probabilidade de novos bugs.
Já não é mais novidade saber que os robôs não precisam mais da orientação de um humano para aprender. Além disso, os robôs já superam os humanos em muitas áreas...
A VPN permite a transferência de dados de modo privado e seguro em uma rede pública sem a utilização de infraestrutura adicional.
Modelo tradicional de desenvolvimento de software, cada etapa do projeto deve seguir a ordem dos processos sem retroceder para as etapas anteriores.
Serviço disponível na internet que oferece softwares que permitem realizar atividades como verificar e-mails, armazenar fotos e compartilhar arquivos.
O RAT é um malware que tipicamente infecta o computador da vítima por um cavalo de tróia. Uma vez detectado, não é muito difícil sua remoção.