web-dev-qa-db-ja.com

Solarisネットワークの問題のデバッグ

Solaris 11x86ファイルサーバーを実行しています。ファイルサーバーの部分はZFS + Sambaです。大きな問題もなく、3、4年稼働しています。

Samba共有は、ネットワーク上の他のPCから見えるようになります。ファイルサーバーから確実に読み取ることができます。サーバーにpingを実行できます。サーバーから他のPCにpingを実行できます。サーバーからデフォルトゲートウェイにpingを実行できます。

数週間前からファイルサーバーに書き込もうとすると、数秒後(または数百メガバイト後)に共有が消えます。問題は明らかにネットワークにあります。ただし、サーバーはまだ生きています。マウスとキーボードを接続してモニターしても、サーバーと対話できます。

問題はハードドライブまたはSambaにあるようには見えません。試した:

  • zpoolステータス
  • fmadmに障害があります
  • svcadm restartsamba

エラーはありません。障害のあるデバイスはありません。 Sambaは問題ではないようです。

問題が発生した後、ファイルサーバーからデフォルトゲートウェイにpingを実行できなくなりました。ファイルサーバーから他のマシンにpingを実行できなくなりました。他のマシンからサーバーにpingを実行できません。

ネットワークデバッグ手順

私はもう試した:

  • ifconfig skge0 down/ifconfig skge0up。
  • Solarisボックスが接続されているスイッチの電源を入れ直します
  • Solarisボックスが接続されているルーターの電源を入れ直します

Solarisボックスは、まだネットワークに接続されていると考えているようです。 Solarisボックスをリセットすると(init 6)、共有が元に戻りますが、それは私がそれらを再度書き込もうとするまでです。

netstat -rnを試しました問題の前後。すべてがかなり正常に見えます。以下は「後」です。

Routing Table: IPv4
Destination           Gateway           Flags  Ref     Use     Interface 
-------------------- -------------------- ----- ----- ---------- --------- 
default              10.1.10.1            UG       27        456 skge0     
10.1.10.0            10.1.10.254          U         6    2536350 skge0     
127.0.0.1            127.0.0.1            UH        2        252 lo0       

Routing Table: IPv6
  Destination/Mask            Gateway                   Flags Ref   Use    If   
--------------------------- --------------------------- ----- --- ------- ----- 
::1                         ::1                         UH      2       4 lo0   

「Before」では、最初のエントリの「Ref」列に17ではなく27があります。 「After」の「Use」の数値はわずかに高く、おそらく正常です。

私はnetstat -anを試しました問題の前後にも。これはもっと手がかりがあるかもしれません。すべてが消える問題の前に存在するUDP接続がいくつかあります。

前:

UDP: IPv4
   Local Address        Remote Address      State
-------------------- -------------------- ----------
    --truncated entries that are present in both before/after--
10.1.10.254.40504    10.1.10.1.53         Connected
10.1.10.254.39900    10.1.10.1.53         Connected
10.1.10.254.40129    10.1.10.1.53         Connected
10.1.10.254.37892    10.1.10.1.53         Connected
10.1.10.254.61658    10.1.10.1.53         Connected

その後、これらの5つのエントリはなくなりましたが、新しいエントリが1つ存在します。

UDP: IPv4
   Local Address        Remote Address      State
-------------------- -------------------- ----------
    --Again, truncated--
10.1.10.254.53920    10.1.10.1.53         Connected

ポート53920が何に使用されているかについての情報が見つかりません。ゲートウェイ側では、ポート53がDNSに使用されているように見えます。これが手がかりかどうかはわかりません。 ひどく役に立たないようです

TCPの部分では、「ESTABLISHED」beforeの全体がたくさんあります。 inafterまたは、TIME_WAITまたはFIN_WAIT_1のいずれかに移行しました。これは、私がすでに知っていることと一致しているようです。

ネットワークをクラッシュさせるために使用したコンピューターのIPへの参照は1つだけです。

前:

TCP: IPv4
   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q    State
-------------------- -------------------- ----- ------ ----- ------ -----------
10.1.10.254.445      10.1.10.132.53487    64512      0 128480      0 ESTABLISHED

後:

TCP: IPv4
   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q    State
-------------------- -------------------- ----- ------ ----- ------ -----------
10.1.10.254.445      10.1.10.132.53487    64256      0 128480      0 ESTABLISHED

唯一の違いは、Swind(ウィンドウの送信?)列にあります。状態がまだ確立されたものとしてリストされているのは奇妙です。

netstatをやり直しました-もう一度実験しました

前後の唯一の違いは、共有をクラッシュさせるために使用したPCのIPアドレスに関連していました。

前:

TCP: IPv4
   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q    State
-------------------- -------------------- ----- ------ ----- ------ -----------
10.1.10.254.445      10.1.10.132.53613    380416      0 128480      0 ESTABLISHED

後:

10.1.10.254.445      10.1.10.132.53613    65280       0 128480      0 ESTABLISHED

繰り返しますが、唯一の違いはSwind列にあります-数が少なくなりました。

私が知っていることの終わりに達しましたこの種のことについて。 netstatは、私がすでに知っていることを教えてくれているようです。別のネットワークカードを購入して試してみるか、Solarisを再インストールする以外に、私にはわかりません。誰かがここで次のステップについて私を手がかりにできますか?

編集

別のネットワークカードを購入して試しています。ここに着くまでに1週間ほどかかるので、それまではこれを突っ込み続けます。

3
Pete Baughman

Netstat -annetstat -rn、およびlsof(問題の前および問題中)が手がかりを与える可能性があります。 (開いている接続が多すぎますか?) tcpdumpも役立つ場合があります。接続を確立する直前に開始し、接続が停止し始める頃(およびタイムアウトの数分前)に何が起こるかを確認します。

また、NFSオプションがデフォルトではなく、影響を与える可能性があるかどうかを確認してください。

  • たとえば、ハード設定ではなくソフト設定を使用してみてください。

  • すべての「非コア」オプション(コアはNFSを確立するために必要なオプション)を削除し、少しずつ元に戻して、問題の原因となっているオプションを確認します。

申し訳ありませんが、現時点では、正確な設定を提供するためのSolarisにアクセスできません。 「Solaris」および「NFS」キーワードを含むWeb検索は、それらを見つけるのに役立ちます。

2
Olivier Dulac

エクスポートされたZFSデータセット上でSambaを実行すると、サーバーまたはクライアント上の対話型セッションが強制終了されるなど、パフォーマンスが非常に低下する可能性があることを確認しました。ただし、Solaris 11(およびそれ以降)の組み込みCIFSサーバーを使用することははるかにより良い解決策です-次に、ユーザースペースではなくカーネル内でプロトコルビットを実行します。

使用する正確な構文を忘れています。zfs(1m)のtfmを読んで、「smb」を検索する必要があります。 zfs_share(1m)もご覧ください。

2
James McPherson

Solaris 11システムを保守していますか? pkg info entireおよびpkg publisher 公演?

また、skgeインターフェースを使用していることに気づきました。知らなかったので調べてみました。 Solaris(SPARC)リポジトリでそのパッケージが見つかりませんでした。しかし、グーグルがそのネットワークドライバをSolarisで動作させようとしている人々のブログや議論を見つけたことがわかりました。または、デバイスがサポートされていない場合の代わりにそれを使用します。したがって、まだ検索していない場合は、それらを検索してみてください。

参照: Solarisハードウェア互換性リスト(HCL)

0
sleepyweasel