私は、VMware内に大きなテンプレートファイル(約40〜50Gb)を作成するスクリプトを用意しています。テンプレートファイルは、DFSRを使用して2つのデータセンター間で複製されるデータストア上に作成されます。特定のファイルのDFSRの監視
DFSRの状態を監視して、特定のファイルがレプリケートされると、スクリプトが他のビットや部分を実行するようにする必要があります。
$file = myfile.template
$timeout = new-timespan -minutes 5
start-sleep -seconds 5
$sw = [diagnostics.stopwatch]::StartNew()
while ($sw.elapsed -lt $timeout) {
$DFSRStatus = get-dfsrstatus | where{$_.name -eq $file}
if ($DFSRStatus.something -eq 'ok') {
return
}
start-sleep -seconds 5
}
Exit
残念ながら、私はDFSRモジュールを使用していません。私はファイルを追加しようとしましたが、複製の状態を確認して、ファイルが複製されたときに何が起こるかを確認しようとしました。しかし、1Gbのテストファイルを作成しても、レプリケーションが進行中で成功したときに何が起こるかを確認することはできませんでした。
DFSRでより多くの経験を積んだ人は、正しい構文がDFSRで特定のファイルと正しい「成功」イベントが何であるかを確認することをお勧めします。
Get-DfsrBacklogを使用すると、DFSRターゲットで多くのアクティビティがある場合はもちろん、トリッキーな操作を行うことはできますが、多くのアクティビティがない場合は、バックログがないため、ファイルはレプリケートされません。もちろん、ターゲットサーバ上で直接test-pathにあるファイルをチェックすることもできます。 – bluuf
@bluufファイルが存在するかどうかテストしていますが、DFSRのローカルパスと比較すると大きな違いはありません。複製*が開始され、終了しません。 'Get-DFSRBacklog'はここに行く方法だと思われますが、それはエントリのメガトンを返すことができ、100であっても実行するのが非常に遅いです。私は '' Get-DFSRBacklog -Verbose'を解析する際に、冗長なチャネルのバックログの数を最初に返すようにしました。 – Vesper
ファイルのサイズがソースのサイズといつ一致するかを確認できますか? –