proxmox コンテナ上の NetData で監視されたソフト IRQ RCU のスパイク

proxmox コンテナ上の NetData で監視されたソフト IRQ RCU のスパイク

次のような特徴を持つサーバーを所有しています。https://www.soyoustart.com/it/offerte/1801sysgame05.xml

プロセッサ Intel i7-4790K

メモリ 32GB DDR3 1333MHz

トラフィック無制限、DDoS対策付き

ディスク 1x240GB SSD

帯域幅 250 Mbps

私は、C++ で書かれたリアルタイム TCP ゲーム サーバーを処理するために、Ubuntu サーバーに基づくコンテナーを実行する Proxmox Linux ディストリビューションをインストールしました。現時点では、オンライン ユーザーは約 1000 人に達しており、まもなく現在のユーザー数を 2 倍に増やす予定です。

問題は、オンライン ユーザーの数が約 850 に達するとすぐに、奇妙なパフォーマンスの「ボトルネック」が発生することです。約 800 以下に戻ると、ボトルネックは解消されます。実際には、プレーヤーはサーバーに接続するのを約 30 秒待たなければなりませんが、すでに接続しているプレーヤーは問題 (遅延やフリーズなど) を経験していません。ネットワークの輻輳、または上限制限、または同様のものにより、同じプロセスへの接続が拒否され、CPU に負荷がかかるようです (下のスクリーンショットからわかるように)。

ここで私は、同じ「パターン」に気づいたNetDataからいくつかのグラフを集めました。ソフトIRQ RCU特に意味があると思いますが、それが正確に何を意味するのかはわかりません。

ソフトIRQ RCU: 画像

CPU 使用率/負荷: 画像

CPU周波数 画像

CPU温度

画像

問題は CPU 自体にあるとは思いませんが、前述のように、プロセスの制限などに関連する問題のようです。

何が起こっているのか分かりますか?

アップデート:

もう一つの関連グラフ

画像

答え1

私はこの問題をulimitを増やすことで解決しました

私の特定のケースでは、問題は、ulimit を (ハードとソフトの両方で) 増やし、ホストと lxc コンテナーの両方の /etc/ フォルダー内で永続的に構成する必要があることでした。

また、コンテナを特権コンテナに変更しましたが、それが本当に必要かどうかはわかりません。特権コンテナでも修正する方法があるかもしれませんが、それを実現できませんでした。

関連情報