サーバーの帯域幅が異常に上昇していますが、再起動後はすべて正常です

サーバーの帯域幅が異常に上昇していますが、再起動後はすべて正常です

10Gbps カードを搭載したストリーミング サーバーがあります。約 2.5Gbps を使用しています。

私のサーバーは 1 日 8 ~ 9 時間は完璧に稼働していますが、それ以降は調子がおかしくなり、すべてがフリーズしてしまいます。同時にシステムを再起動すると、すべて正常に戻ります。

モニター接続、帯域幅出力すべてがあります。2.5 Gbps から、8 ~ 9 時間後に 1 Gbps に低下します。これがすべてのフリーズの原因ですが、再起動するとすべて正常に戻ります。

これについて何か説明できる人はいますか?

これは私のsysctl設定です

net.core.somaxconn = 65535
net.ipv4.route.flush=1
net.ipv4.tcp_no_metrics_save=1
net.ipv4.tcp_moderate_rcvbuf = 1
fs.file-max = 6815744
fs.aio-max-nr = 6815744
fs.nr_open = 6815744
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_rmem = 10000000 10000000 10000000
net.ipv4.tcp_wmem = 10000000 10000000 10000000
net.ipv4.tcp_mem = 10000000 10000000 10000000
net.core.rmem_max = 524287
net.core.wmem_max = 524287
net.core.rmem_default = 524287
net.core.wmem_default = 524287
net.core.optmem_max = 524287
net.core.netdev_max_backlog = 300000
net.ipv4.tcp_max_syn_backlog = 300000
vm.swappiness=1
net.netfilter.nf_conntrack_max=196608
net.ipv4.tcp_window_scaling = 1
vm.max_map_count = 655300
net.ipv4.tcp_max_tw_buckets = 1440000

ストリーミングは PHP-FPM と nginx を使用して行われます。

私は標準カーネルの Ubuntu 14.04 64 ビットを使用しています。カーネル 4.8 を試しましたが、結果は同じでした。

答え1

たくさんの設定オプションやシステムに関するランダムなデータを私たちに提供しても、まったく役に立ちません。

科学的な方法を適用する必要があります。

  • インストール監視
  • データを集めます
  • データを活用してシステムを理解する
  • 上記で学んだことに基づいて変更を加えます
  • 変更を監視する
  • 分析を繰り返し、必要に応じて変更を加える
  • 文書の変更

これはロケット工学でもなければ、代替事実でもありません。必要なのは、シンプルな応用システム管理の原則だけです。

参考文献

答え2

あなたの投稿は少々わかりにくいです。

その後は狂ってる

活動の増加を意味しますが、あなたは言います...

みんな凍えている

...しかし、あなたは「すべての人」が影響を受けるという主張と矛盾している。

2.5Gbpsから8~9時間後には1Gbpsになります

まだ 1Gbps を送信している場合、明らかに一部のクライアントは影響を受けません。また、次のようにも述べています。

ストリーミングはPHP-FPMとnginxを使用して行われています

...その場合、ないストリーミング。HTTP および fastCGI はストリーミング プロトコルではありません。

あなたが提供した情報に基づいて、あなたのサーバーの何が問題なのかはわかりませんが、おそらく原因は、nfconntrack テーブルがいっぱいであることです。

ネット.netfilter.nf_conntrack_max=196608

使用されているバケットの数はいくつですか?

また、サーバーが動作不良のルーターの背後にあるか、輻輳通知を受信して​​いない可能性もあります。

関連情報