Por que vejo mais processos no KVM do que no OpenVZ?

2

Eu tenho um 512mb Centos 6 VPS rodando no KVM. Agora outro VPS de uma organização. Eu gerencio está rodando em OVZ.

Quando digito top no KVM, recebo uma lista completa de todos os processos de ordenação. Mas quando eu faço isso no OVZ, eu consigo apenas 20, o que é normal.

Então, como fecho todos esses processos (desnecessários?) e os mantenho limpos? Aqui está uma tela de como é o topo agora:

    
por Mazzy 10.12.2013 / 19:48

2 respostas

5

Estes são, na maioria das vezes, processos normais que você precisa incorrer ao executar uma distribuição do Linux no bare metal ou como uma máquina virtual em outras tecnologias, como o KVM ou o VirtualBox. A diferença que você está vendo pode ser atribuída diretamente às diferenças de tecnologia de virtualização.

Tecnologias como KVM & VirtualBox, virtualize no nível de hardware, fornecendo essencialmente versões virtuais do hardware para os sistemas operacionais convidados. Tecnologias como o OpenVZ virtualizam no nível do processo, portanto, cada VM guest possui seu próprio processo init , mas todas compartilham o mesmo kernel do Linux. É por isso que quando você usa o OpenVZ, todos os sistemas operacionais convidados precisam ter a mesma distribuição que o sistema operacional host.

A vantagem de usar o OpenVZ, como você pode atestar, são as pegadas muito menores que os sistemas operacionais convidados precisam consumir, deixando, assim, mais recursos do sistema disponíveis para serem dedicados às VMs.

As principais desvantagens de usar o OpenVZ é que todos os convidados precisam usar o mesmo Kernel, e um kernel Linux especial precisa ser mantido com as tecnologias OpenVZ incluídas.

Então não há nada para remover então?

Uma coisa que você pode fazer para aparar sua área de cobertura do CentOS seria desabilitar todos os serviços que você sabe que não precisa. A desativação de serviços geralmente é o melhor método para reduzir um sistema, tanto nos recursos que ele precisa consumir quanto no endurecimento de uma perspectiva de segurança.

Exemplo

Aqui está um sistema que eu configurei recentemente (CentOS 6.5) para uso como um proxy da web. Eu corro o sistema no nível de execução 3, uma vez que não tem GUI e é basicamente apenas um servidor.

$ sudo chkconfig --list | grep 3:on
NetworkManager  0:off   1:off   2:on    3:on    4:on    5:on    6:off
acpid           0:off   1:off   2:on    3:on    4:on    5:on    6:off
auditd          0:off   1:off   2:on    3:on    4:on    5:on    6:off
blk-availability    0:off   1:on    2:on    3:on    4:on    5:on    6:off
cpuspeed        0:off   1:on    2:on    3:on    4:on    5:on    6:off
crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
haldaemon       0:off   1:off   2:off   3:on    4:on    5:on    6:off
irqbalance      0:off   1:off   2:off   3:on    4:on    5:on    6:off
livesys         0:off   1:off   2:off   3:on    4:on    5:on    6:off
livesys-late    0:off   1:off   2:off   3:on    4:on    5:on    6:off
lvm2-monitor    0:off   1:on    2:on    3:on    4:on    5:on    6:off
messagebus      0:off   1:off   2:on    3:on    4:on    5:on    6:off
netfs           0:off   1:off   2:off   3:on    4:on    5:on    6:off
nginx           0:off   1:off   2:on    3:on    4:on    5:on    6:off
ntpd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
postfix         0:off   1:off   2:on    3:on    4:on    5:on    6:off
rsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:off
sshd            0:off   1:off   2:off   3:on    4:on    5:on    6:off
sysstat         0:off   1:on    2:on    3:on    4:on    5:on    6:off
udev-post       0:off   1:on    2:on    3:on    4:on    5:on    6:off

Se você tem algum serviço que você sabe que não precisa, incentive-o a desativá-lo. Este é um processo de 2 etapas. O primeiro passo irá parar o serviço. A segunda etapa desativará a inicialização desse serviço novamente durante as reinicializações.

$ sudo /etc/init.d/nginx stop
$ sudo chkconfig nginx off

Use o mesmo método acima para desativar outros serviços. Basta alterar o nome de nginx para serviceX .

    
por 10.12.2013 / 21:53
3

A maioria desses processos - aqueles na parte inferior com todas as estatísticas zero - são threads do kernel. Você não os verá no OpenVZ porque a contenção é diferente.

Isso deixa você com 17 processos reais de espaço do usuário. Desses, os únicos que podem ser considerados desnecessários em um VPS são os mingetty , mas:

  • Livrar-se deles exigiria a reconfiguração do daemon de inicialização.

  • Eles são pequenos e inativos e não vale a pena se preocupar. Se o provedor de VPS tiver o sistema configurado dessa maneira, basta deixá-lo.

por 10.12.2013 / 20:55