小さなSSDVPSで、2GBのRAMと2つのvCPUコア(サーバー専用)をKVM経由で仮想化しました。これまでのところ良好です。サーバーは主にデータベース(MySQL)に使用されますおよび高速ネットワークファイルストレージ(sshfs経由)。現在、約5つのフォルダーがsshfs経由でリモートサーバーにマウントされています。
htop
を調べると、CPU使用率でプロセスを並べ替えると、それ自体または複数のプロセスを組み合わせてそれほど多くのCPUを使用するプロセスはないにもかかわらず、100%のCPU負荷がわかります。また、load average
は、サーバーが主に居眠りしていることを示します。から この質問 青いCPUバーは、「優先度の低いスレッド」がCPUを占有していることを示していることがわかりました。
どのプロセスがすべてのCPUパワーを使い果たしているかを知るにはどうすればよいですか?それはCPUパワーを使用しているのでしょうか、それともKVMによって引き起こされた単なる視覚的なバグですか? sshfsはユーザースペースから追跡できないCPUパワーを使用しますか?
CPUを使用していないときは、他のVMに渡されます。これは、ほとんどの使用法がある「盗む」値に反映されます。プロバイダーに問い合わせて、2つのvCPUが実際に優先されていることを確認することをお勧めします。または、2つのCPUを食べるタスク(openssl speed
など)を実行して、すべてを取得するようにします。
グラフによると、盗むCPU時間が長く、これが原因である可能性があります。この問題をホスティングプロバイダーに報告し、VMを別のホストに移行することについて尋ねてください。
一般に問題は、VMの同時実行性が高いために、KVMがホストからCPU時間を取得しないことです。
これにより、CPU使用率が高い場合の問題も解決されると思います。