LoginSignup
0
3

More than 5 years have passed since last update.

プロキシ経由でのAzCopy

Posted at

概要

プロキシの背後でAzCopyを使う場合、AzCopyはシステムのプロキシ設定を使用するようです。認証プロキシ経由でも、この設定で実行できました。ただしドキュメント等での確認ができておらず、バージョン依存する可能性はあります。

詳細

プロキシの背後でAzCopyを使う場合、AzCopyはシステムのプロキシ設定を使用するようです。

  • Windows … OS(=Internet ExplorerまたはEdgeブラウザ)のプロキシ設定
  • Linux … 環境変数HTTPS_PROXY

認証プロキシ(プロキシが認証を求めてくる)場合、Linuxでは環境変数HTTPS_PROXYに認証情報も含めることで対応できました。Windowsでは不明なのですが、上記プロキシ設定だけで対応できています(ブラウザでの認証結果が記憶されていて使われているのではと思われます)。

上記についてはドキュメント等では情報を確認できておらず、以下の動作確認結果による推測です。

Linuxでの確認結果

Ubuntu 16.04.5(ただしBash on Ubuntu on Windows)とAzCopy 7.2.0の環境で確認しています。

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.5 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.5 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

$ azcopy --version
azcopy 7.2.0-netcore

環境変数HTTPS_PROXYを設定してazcopyを実行した結果、ファイル取得に成功しました。なお$PROXYID$PROXYPWはそれぞれプロキシの認証情報、$AZSA$AZCON$AZKEYはそれぞれAzureのストレージアカウント、コンテナ名、アクセスキーを格納してあります。

$ export HTTPS_PROXY="http://${PROXYID}:${PROXYPW}@proxy.example.com:8080"
$ azcopy --source "https://${AZSA}.blob.core.windows.net/${AZCON}/test.txt" --destination "./test.txt" --source-key $AZKEY
Finished 1 of total 1 file(s).
[2018/08/15 10:56:00] Transfer summary:
-----------------
Total files transferred: 1
Transfer successfully:   1
Transfer skipped:        0
Transfer failed:         0
Elapsed time:            00.00:00:05

続けて環境変数HTTPS_PROXYを削除してazcopyを実行した結果、ファイル取得に失敗しました。

$ export -n HTTPS_PROXY
$ azcopy --source "https://${AZSA}.blob.core.windows.net/${AZCON}/test.txt" --destination "./test.txt" --source-key $AZKEY
[2018/08/15 11:11:27][ERROR] Error parsing source location "https://tsukamoto180723.blob.core.windows.net/vcli/test.txt": Source with location type Blob doesn't exist.

Windowsでの確認結果

Windows 10(1703)とAzCopy 7.1.0の環境で確認しています。

c:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy>.\azcopy
------------------------------------------------------------------------------
AzCopy 7.1.0 Copyright (c) 2017 Microsoft Corp. All Rights Reserved.
------------------------------------------------------------------------------
# AzCopy is designed for high-performance uploading, downloading, and copying
data to and from Microsoft Azure Blob, File, and Table storage.

IEでプロキシ設定がされている状態で、azcopyを実行した結果、ファイル取得に成功しました。なお%AZSA%%AZCON%%AZKEY%はそれぞれAzureのストレージアカウント、コンテナ名、アクセスキーを格納してあります。

c:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy>azcopy /Source:https://%AZSA%.blob.core.windows.net/%AZCON%/date.txt /Dest:%USERPROFILE%\Downloads\date.txt /SourceKey:%AZKEY%
[2018/08/15 16:47:37] Transfer summary:
-----------------
Total files transferred: 1
Transfer successfully:   1
Transfer skipped:        0
Transfer failed:         0
Elapsed time:            00.00:00:30

IEのプロキシ設定を無効化してazcopyを実行した結果、ファイル取得に失敗しました。

c:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy>azcopy /Source:https://%AZSA%.blob.core.windows.net/%AZCON%/date.txt /Dest:%USERPROFILE%\Downloads\date.txt /SourceKey:%AZKEY%
[2018/08/15 16:54:58][ERROR] Error parsing source location "https://tsukamoto180723.blob.core.windows.net/vcli/date.txt": Source with location type Blob doesn't exist.

使用しているのは「Linuxでの確認結果」と同じ認証プロキシです(なぜか認証情報は聞かれていません)。

参照

AzCopyの公式なドキュメントは以下になります。プロキシについての情報は見つけられませんでした。

以下ではAzCopy.exe.configを作成する方法などが紹介されており、旧版では有用なのかもしれません。


本ページ内容は筆者が参照の便のためにある時点でまとめた個人的なメモです。内容を保証するものではなく、また筆者の所属組織等とは一切かかわりがありません。

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3