2つのVPSがあります。1つは2008Server R2を実行しており、もう1つはUbuntu12.04のインストールです。 Quickbooksや他のいくつかのアプリのRDセッションにWindowsVPSを使用しており、UbuntuVPSをNFSファイルストアおよびOpenVPNエンドポイントとして使用しています。問題は、VPNを介したNFSのパフォーマンスがまったくひどいことです。これは、接続すらできず、頻繁にタイムアウトすることを意味します。
トンネルの外部でNFSを設定した場合、パフォーマンスは問題ありません...あまり良くありませんが、管理しやすいので、VPNトンネルであることがわかります。
パフォーマンスを向上させるために試してみることができるopenvpnまたはNFSの微調整はありますか?
私はipsecリンクを介して最適なNFSパフォーマンスを得るためにすべての調整を行いましたが、「ls/mnt/remote1/etc」はまだ12.5秒かかりました。 (私は280ms離れており、13Mbps/2Mbpsが私の最も遅いリンクです)
いくつか検索した後、私は代わりにWebDAVに出くわしました。クライアントでwebdavとdavfs2を使用してApacheを使用し、共有をマウントしています。この設定では、lsが12.5秒から1.5秒になり、10Mbpsのダウンロード速度が得られます。今とても使える。
ルートアクセスが必要な場合は、「CFLAGS = -DBIG_SECURITY_HOLE」を使用してApacheをビルドする必要があります。すべてのユーザーがrootアクセス権を持っているので、これは私にとっては問題ありません。また、ipsecトンネルを介してのみwebdavを提供しています。
試すべきいくつかのこと:
OpenVPNの次のオプションを見てください:fragment、mssfix、link-mtu。基本的に、パケットサイズと断片化に関係するすべてのもの。 VPNパケットが小さすぎると、NFSパケットがフラグメント化されてパフォーマンスが低下する可能性があります。 OTOH、VPNパケットが大きすぎると、一部のルーターがそれらを適切に処理しないため、パフォーマンスが低下する可能性があります。ここで単純で一般的なルールを描くのは難しいです。
OpenVPNで圧縮を有効/無効にして、それがパフォーマンスにどのように影響するかを確認してください。
VPNサーバーがTCPではなくUDPをトランスポートに使用していることを確認してください。
NFSクライアント側で、オプション(retrans、rsize、wsize)、またはパケットサイズとエラー処理に関連するその他のものを確認します。状況によっては、パケットサイズを小さくすると、実際にパフォーマンスが向上する場合があります(LANでは、通常、その逆になります)。
この種の問題に対する確実な答えはありませんが、問題は上記の領域にある可能性があります。
私はADSL接続でopenvpnを使用してNFS構成で遊んだことがあり、さまざまなNFSマウントオプションを試しました。ここで完全な投稿を見つけることができます: NFS over OpenVPN over ADSL(または低速接続)
ここで興味深い部分を引用します。私は多くの投稿を読み、提案された解決策の合理的なサブセットを試しました。これは最良のヒントの要約です。
Linuxユーザー向けに、ソフトマウントのfstab構成例を次に示します。
servername:/shared/ /mnt/foldername/ nfs rw,suid,dev,soft,exec,nouser,async,noauto,timeo=100,user,rsize=1024,wsize=1024,tcp 0 0
そしてここで、ハードマウントの場合:
rw,suid,dev,intr,exec,nouser,async,noauto,timeo=100,user,rsize=1024,wsize=1024,tcp 0 0
NFS over vpn + adslはまだ劇的に遅いです(現時点では約150 KB /秒でファイルを転送していますが、これは提案された変更がない場合よりもはるかに優れています)。私の7MbitADSLのダウンロード帯域幅は800KB /秒であると考えてください。
PS:共有してくれてありがとう、openvpnの断片化も後でチェックします。私の調査結果も役立つことを願っています。
PS2:これらのヒントは私の環境ではうまく機能し、異なる人から2つの肯定的なフィードバックを得ました。
Fabiano Tarlaoからのこれらのヒントは非常に役立ちます: https://thegoodcodeinn.blogspot.be/2015/06/nfs-over-openvpn-over-adslor-slow.html?showComment=1488621905080#c2984550821264645538
このカーネルパラメータを、OpenVPNサイト間トンネルを介したCasperNetbootで使用します。
NFSOPTS=tcp,intr,timeo=100,rsize=1024,wsize=1024