2017-08-02 4 views
1

AWS環境で動作する3つのノードクラスタがあります。ノードは可用性のために異なるAZに配置されています。すべてのノードは同じVPC内にあり、同じセキュリティグループ内でノード間のすべてのトラフィックを許可します。スニッチはEc2Snitchと定義されています。カサンドラのバージョンは3.2.1です。カサンドラは、すべてのノードが起動していても、AWS環境でのハンドオフを暗示しています

すべてのノードが稼働していても、いくつかのノードで10秒ごとにヒントが作成される理由は何でしょうか? system.logには、以下のようなメッセージが実際に流される。ただし、system.logには関連する警告やエラーはありません。クラスタに書き込まれるデータの量は現在非常に控えめであり、負荷は非常に低いです。

バージョン3.2.1では、ヒントに関連するcrc32ファイルが正しく削除されず、ファイルシステム内のinodeが不足しているため、問題が発生しました。

INFO [HintsDispatcher:2] 2017-08-02 13:13:42,765 HintsDispatchExecutor.java:252 - Finished hinted handoff of file 4c3e3e47-fcc2-4bff-a3a7-e2560f024173-1501679605217-1.hints to endpoint 4c3e3e47-fcc2-4bff-a3a7-e2560f024173 

根本的な原因をさらに調査するためのアイデアはありますか?

+1

質問とは無関係なものですが、3.2.1はバグで、安定していません(これは3.xバージョンでは非常に早いものでした)。本当に3.11.xブランチにアップグレードしてください。 –

答えて

0

定期的な定期的な突然変異やヒントの原因となる可能性が最も高い場所であるため、Gcログが最適な場所です。書き込みタイムアウトより大きい(またはそれに近い)GCが原因になっている可能性があります。 GCの原因を特定するのは難しいですが、一般的な原因には、多くの墓石、非常に広い(> 100MB)パーティション、またはコンパクションからの余りにも多くのステルスタブルがあります(nodetool cfstatsとcompactionstatsでチェックできます)。より多くのヒープスペースを与え、それが改善するかどうかを見るだけで開始できます。他の解決方法は原因に依存します。

欠落した突然変異についてもtpstatsをチェックすることができます。これによりコーディネータはヒントを書き込んで、ノードがUPの場合にすぐに配信されます。それは原因を教えてくれることはありませんが、より多くの原因となっているノードを特定できる可能性があります(CPU負荷?ディスクのログの例外?)。

関連する問題