CentOS vpsの空のカーネルプロセス:2つの異なるサーバー

CentOS vpsの空のカーネルプロセス:2つの異なるサーバー

私が質問するのが正しいかどうかはわかりません。それとも間違ったことを見ているかもしれません。あるCentOS Vps(OpenVZシステム)から別のCentOS VPS(VMWareシステム)に移行しようとしています。

  • VPS#1 = CentOSバージョン6.5(最終) - Linuxバージョン2.6.32-042stab061.2(gccバージョン4.4.6 20120305(Red Hat 4.4.6-4)
  • VPS#2 = CentOSバージョン6.5(最終)Linuxバージョン2.6.32-431.29.2.el6.x86_64(gccバージョン4.4.7 20120313(Red Hat 4.4.7-4)

デフォルトでは、同じ設定のLAMPがYUMを介して最新バージョンに更新されました。ただし、VPS#1には多くのプロセスがなく、設定で予想される標準しかありません。

VPS#2にはより多くのプロセスがありますが、その理由はわかりません。もちろん、「空」プロセス(0%CPU、0%メモリ)のように見えますが、なぜそこにありますか?

1つのVPSはOpenVZにあり、もう1つはVMWareにあるためではないようです。それともそうですか?

仮想プライベートサーバー#1

仮想プライベートサーバー1

仮想プライベートサーバー#2

仮想プライベートサーバー2A 仮想プライベートサーバー2B

質問

  • 誰かがこれら2つのシステム間にこれらの違いが存在する理由を説明できますか?
  • あるシステムに他のシステムよりも多くのプロセスがあるのはなぜですか?

ベストアンサー1

OpenVZでは、欠落しているプロセスは正常です。 OpenVZは、VMWareやVirtualBoxなどの真の仮想化テクノロジではなく、コンテナテクノロジです。 VMWareには、ホストシステムのカーネルに統合されるハイパーバイザーと呼ばれる技術があります。

OpenVZシステムでは、ゲストシステムは同じLinuxカーネルを共有します。したがって、実際にはゲストごとに1つずつ実行されるのではなく、1つのLinuxカーネルだけが実行されます。

私のOpenVZゲストの1つの出力は次のとおりです。

$ ps -eaf
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Mar09 ?        00:00:18 init [3]      
root      7699 22497  1 14:05 ?        00:00:00 sshd: root@pts/0 
root      7769  7699  2 14:05 pts/0    00:00:00 -bash
root      7794  7769  0 14:05 pts/0    00:00:00 ps -eaf
apache   12221 25901  1 10:41 ?        00:02:33 /usr/sbin/httpd
apache   13386 25901  1 Sep17 ?        00:14:23 /usr/sbin/httpd
apache   14030 25901  1 07:22 ?        00:05:37 /usr/sbin/httpd
apache   14038 25901  1 07:22 ?        00:05:36 /usr/sbin/httpd
root     21967     1  0 Mar09 ?        00:00:00 /sbin/udevd -d
rpc      22317     1  0 Mar09 ?        00:00:22 portmap
rpcuser  22349     1  0 Mar09 ?        00:00:00 rpc.statd
root     22419     1  0 Mar09 ?        00:00:01 /sbin/rsyslogd -i /var/run/rsyslogd.pid -m 0
root     22435     1  0 Mar09 ?        00:00:49 ypbind
root     22457     1  0 Mar09 ?        00:15:42 automount
root     22485     1  0 Mar09 ?        00:13:33 /usr/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd.pid -a
root     22497     1  0 Mar09 ?        00:00:00 /usr/sbin/sshd
root     22508     1  0 Mar09 ?        00:00:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
root     22526     1  0 Mar09 ?        00:00:23 sendmail: accepting connections
smmsp    23558     1  0 Mar09 ?        00:00:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue
root     23577     1  0 Mar09 ?        00:00:03 crond
root     23585     1  0 Mar09 ?        00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam -n 2
root     23586 23585  0 Mar09 ?        00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam -n 2
root     23594     1  0 Mar09 ?        00:00:07 /usr/sbin/uptimed
apache   24238 25901  1 04:34 ?        00:07:22 /usr/sbin/httpd
root     25901     1  0 Sep16 ?        00:00:00 /usr/sbin/httpd

OpenVZプロジェクトのWebサイトは、コンテナ仮想化技術と仮想マシン技術の違いの良い概要を提供します。

「空」プロセスの削除

これは空のプロセスではありません。仮想マシン環境はハードウェア層で仮想化するため、ゲストオペレーティングシステムはベアメタルで実行されている場合よりも多くのコアプロセスを提供する必要があります。

OpenVZ / Docker / LXCなどのコンテナテクノロジを使用すると、プロセスレベルで仮想化されるため、義務が異なります。すべてのコンテナは単一のLinuxカーネルを共有することで利点を得ることができます。

おすすめ記事