Linux-VServer - Linux-VServer
Desenvolvedor (s) | Herbert Pötzl (Projeto Comunitário) |
---|---|
Versão estável | 2.6.22.19-vs2.2.0.7 / 14 de março de 2008
|
Versão de visualização | 4.9.195-vs2.3.9.8 / 5 de outubro de 2019
|
Repositório | |
Sistema operacional | Linux |
Plataforma | x86 , SPARC / 64 , PA-RISC , S390 / x , MIPS / 64 , ARM , PowerPC / 64 , Itanium |
Modelo | Virtualização de nível de sistema operacional |
Licença | GNU GPL v.2 |
Local na rede Internet | linux-vserver |
Linux-VServer é uma implementação de servidor virtual privado que foi criada adicionando recursos de virtualização em nível de sistema operacional ao kernel Linux . É desenvolvido e distribuído como software de código aberto .
O projeto foi iniciado por Jacques Gélinas . Agora é mantido por Herbert Pötzl. Não está relacionado ao projeto Linux Virtual Server , que implementa o balanceamento de carga de rede .
Linux-VServer é um mecanismo de prisão porque pode ser usado para particionar recursos de forma segura em um sistema de computador (como o sistema de arquivos , tempo de CPU, endereços de rede e memória) de forma que os processos não possam montar uma negação de serviço ataque a qualquer coisa fora de sua partição.
Cada partição é chamada de contexto de segurança e o sistema virtualizado dentro dela é o servidor virtual privado . Um utilitário semelhante ao chroot para entrar em contextos de segurança é fornecido. A inicialização de um servidor virtual privado é simplesmente uma questão de iniciar o init em um novo contexto de segurança; da mesma forma, encerrá-lo envolve simplesmente encerrar todos os processos com esse contexto de segurança. Os próprios contextos são robustos o suficiente para inicializar muitas distribuições Linux sem modificações, incluindo Debian e Fedora .
Os servidores virtuais privados são comumente usados em serviços de hospedagem na web , onde são úteis para segregar contas de clientes, agrupar recursos e conter quaisquer violações de segurança em potencial. Para economizar espaço em tais instalações, o sistema de arquivos de cada servidor virtual pode ser criado como uma árvore de links físicos de cópia na gravação para um sistema de arquivos de "modelo". O link físico é marcado com um atributo especial do sistema de arquivos e, quando modificado, é substituído de forma segura e transparente por uma cópia real do arquivo.
O Linux-VServer oferece duas ramificações, stable (2.2.x) e devel (2.3.x) para os kernels da série 2.6 e uma única ramificação estável para a série 2.4. Um branch estável separado integrando o conjunto de patches grsecurity também está disponível.
Vantagens
- Os servidores virtuais compartilham a mesma interface de chamada do sistema e não têm nenhuma sobrecarga de emulação .
- Os servidores virtuais não precisam ser apoiados por imagens de disco opacas , mas podem compartilhar um sistema de arquivos comum e conjuntos comuns de arquivos (por meio de links rígidos de cópia na gravação). Isso facilita o backup de um sistema e o pool de espaço em disco entre os servidores virtuais.
- Os processos no servidor virtual são executados como processos regulares no sistema host. Isso é um pouco mais eficiente em termos de memória e E / S do que a emulação de todo o sistema, embora o balão de memória e as VMs modernas permitam retornar a memória não utilizada e compartilhar o cache de disco com o host e outros servidores virtuais.
- Os processos no servidor virtual são enfileirados no mesmo agendador do host, permitindo que os processos do convidado sejam executados simultaneamente em sistemas SMP . Isso não é trivial de implementar com a emulação de todo o sistema.
- A rede é baseada no isolamento em vez da virtualização, portanto, não há sobrecarga adicional para os pacotes.
- Avião menor para bugs de segurança. Apenas um kernel com uma pequena base de código adicional em comparação com 2+ kernels e grandes interfaces entre eles.
- Recursos avançados de agendamento do Linux, como prioridades em tempo real.
Desvantagens
- Requer que o kernel do host seja corrigido.
- Nenhum recurso de clustering ou migração de processo está incluído, portanto, o kernel do host e o computador host ainda são um único ponto de falha para todos os servidores virtuais.
- A rede é baseada no isolamento, não na virtualização. Isso evita que cada servidor virtual crie seu próprio roteamento interno ou configuração de firewall.
- Algumas chamadas de sistema (principalmente relacionadas ao hardware: por exemplo , relógio em tempo real ) e partes dos sistemas de arquivos / proc e / sys não são virtualizadas.
- Não permite que a largura de banda de E / S do disco seja alocada por servidor virtual.