PowerCLI で Copy-VMGuestFile コマンドレットを使用してファイル転送ができない
search cancel

PowerCLI で Copy-VMGuestFile コマンドレットを使用してファイル転送ができない

book

Article ID: 431329

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免責事項:これは英文の記事 Cannot transfer files using the Copy-VMGuestFile cmdlet in PowerCLI(431327) の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。 

vCenter Server 経由で PowerCLI の Copy-VMGuestFile コマンドレットを使用して仮想マシンへファイルを転送しようとすると、404 Not Found などのエラーが発生して失敗します。 仮想マシン側のログには GuestOps.InitiateFileTransferToGuest のリクエストを受信した記録が残ります。

vmware.log
YYYY-MM-DDTHH:MM:SS In vmx - VigorTransportProcessClientPayload: opID=xxxx seq=xxxx: Receiving GuestOps.InitiateFileTransferToGuest request. YYYY-MM-DDTHH:MM:SS In vcpu-1 - VigorTransport_ServerSendResponse opID=xxxx seq=xxxx: Completed GuestOps.InitiateFileTransferToGuest request.

通常、ファイル転送が正常に開始されると、ESXi ホストの envoy-access.log に以下の PUT リクエストが記録されます。

envoy-access.log
YYYY-MM-DDTHH:MM:SS In envoy-access: PUT /guestFile?id=xxxx HTTP/1.1 200 via_upstream - xxxx xxxx xxxx xxxx xxxx x.x.x.x:XXXXX TLSv1.2 y.y.y.y:443 127.0.0.1:ZZZZZ - 127.0.0.1:8309 -

しかし、本事象が発生した場合、ESXi ホストの envoy-access.log には対応する PUT リクエストが記録されていません。

Environment

VMware vSphere ESXi 8.0
VMware PowerCLI

Cause

Copy-VMGuestFile コマンドレットは vCenter Server 経由でファイル転送要求を開始します。ゲスト OS 側で転送の準備が完了した後、実際のファイルデータは PowerCLI を実行している端末から仮想マシンが稼働している ESXi ホストへ HTTPS 経由で直接送信されます。
名前解決の失敗やファイアウォールおよびプロキシの設定など、ネットワーク構成が原因で PowerCLI 実行端末から ESXi ホストへ直接通信できない場合、ファイル転送は失敗します。

Resolution

PowerCLI を実行している端末と宛先の ESXi ホスト間のネットワーク通信を確認してください。
PowerCLI 実行端末が ESXi ホストの FQDN を正しい IP アドレスに名前解決できることを確認します。
PowerCLI 実行端末から ESXi ホストへの HTTPS ポート 443 の通信をブロックしているファイアウォールやプロキシサーバーがないか確認します。