2
CoreOS:tcpdumpはネットワークの問題を不思議に解決します(過剰な数のソケットが使用されています)
今日はあなたのために謎があります。AzureでCoreOS(2023.5.0 / Linux 4.19.25-coreos)に基づいた小さな3ノードのElasticsearchクラスターを実行します。Elasticsearchは、ホストネットワークモードのDockerコンテナ内で実行されます。ほぼ完全にメンテナンスフリーで1年以上稼働した後、マシンが非常に興味深い状態になるのを見てきました。 更新 この問題は、Linuxカーネルのドライバーを修正することで解決しました。以下の回答をご覧ください。 症状 基本的に、影響を受けるマシンと他の2つのノード間のネットワークは停止します。すべてが同じ仮想ネットワークと同じサブネットにあり、通常は他のeathと通信できます。影響を受けるノードは、他のサブネット(sshに接続できます)および別のピア仮想ネットワークからも到達できます。マシンにはインターネットへの(非常にむらのある)接続もありますが、ほとんどの要求はタイムアウトになります。 影響を受けるノードで報告される「使用されるソケット」の数/proc/net/sockstatが非常に多いことを確認しました(正常なノードでは〜300ではなく〜4.5k)。監視により、この数はノードが利用できなくなった瞬間から急速に増加することがわかります。 面白いのは、これらの使用済みソケットのソースを特定できないように見えることです。 # cat /proc/net/sockstat sockets: used 4566 TCP: inuse 2 orphan 0 tw 2 alloc 98 mem 4 UDP: inuse 1 mem 0 UDPLITE: inuse 0 RAW: inuse 0 FRAG: inuse 0 memory 0 # cat /proc/net/sockstat6 TCP6: inuse 98 UDP6: …