複数のサーバーへのファイルのデプロイ

複数のサーバーへのファイルのデプロイ

大容量ファイルを自分のサーバーに展開する方法を探していますが、すべてのターゲットサーバーに同じファイルが必要です。

ファイルサイズは30-600GBです。

問題:NFS共有ソースをターゲットにマウントし、同時に複製を開始します。

私のソースサーバーではIO集約的であるため、ディスク使用率が高く(同じファイルを読み続ける必要があるため)、ネットワーク使用率もほぼ最上位に近いことがわかります。

UDPブロードキャストを試みましたが、ホスティング環境が許可されていないため機能しません。

殺人事件について聞いたことがありますが、実際にその事件に関与した人を見つけることができませんでした(Twitterを除く:))。

私の質問は次のとおりです

  1. このアプリ(殺人や他の同様の「同期」トレント)を試したことがある人はいますか?
  2. できるだけ短い時間で同じファイルを自分のサーバーにコピーする他のオプションはありますか? (ファイルを各ターゲットサーバーに個別にコピーできます。これにより、ソースサーバーがひざまずくのに時間がかかります。)

どんなアイデアでも大いに感謝します。

ありがとう、

悲しい

答え1

いくつかのアイデアが思い浮かびました。

これが頻繁にリズムに合わせて実行する場合は、rsyncサーバーを設定し、クライアントでcronジョブを設定してrsyncからファイルをインポートすることをお勧めします。

この操作を頻繁に行わずに必要に応じて実行する場合でも、rsyncを手動で使用できます。私はこの種の仕事のために多くのansibleを使用していますが、ansibleには対話が許可されているホスト(インベントリ)のリストが必要です。SSHキーが設定されている場合はうまく機能します。あなたの可能な一時的なコマンドは次のとおりです

ansible <target hosts> -m copy -a "src=<your file> dest=<location of file on destination host>"

正直に言うと、これらのオプションのどれもファイルをマルチキャストするかどうかはわかりませんが(あなたが探しているように見えます)、他の場所ではまだ少しパフォーマンスが向上しています。

関連情報