共用方式為


教學課程:透過 REST API 將資料複製到 Azure 資料箱 Blob 儲存體

警告

本文參考 CentOS,這是處於終止服務 (EOL) 狀態的 Linux 發行版。 請據此考慮您的使用方式和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指導

本教學課程說明透過 REST API (透過 httphttps) 連線到 Azure 資料箱 Blob 儲存體的程序。 連線之後,會說明將資料複製到資料箱 Blob 儲存體所需的步驟。

在本教學課程中,您會了解如何:

  • 必要條件
  • 透過 httphttps 連線到資料箱 Blob 儲存體
  • 將資料複製到 Data Box Heavy

必要條件

在您開始前,請確定:

  1. 您已完成教學課程:設定 Azure Data Box Heavy
  2. 您已收到 Data Box Heavy,且入口網站中的訂購狀態為 [已交付]
  3. 您已檢閱過資料箱 Blob 儲存體的系統需求,並熟悉 API、SDK 和工具的支援版本。
  4. 您有權存取包含要複製到 Data Box Heavy 之資料的主機電腦。 您的主機電腦必須符合下列條件:
    • 執行支援的作業系統
    • 連線至高速網路。 如需最快的複製速度,可平行使用兩個 40 GbE 的連線 (每個節點一個連線)。 如果您沒有 40 GbE 連線可用,我們建議您至少有兩個 10 GbE 的連線 (每個節點一個連線)。
  5. 在您的主機電腦上下載 AzCopy 7.1.0。 您將會使用 AzCopy,將資料從主機電腦複製到 Azure 資料箱 Blob 儲存體。

透過 http 或 https 來連線

您可以透過 httphttps 連線到資料箱 Blob 儲存體。

  • https 是連線到資料箱 Blob 儲存體的安全建議方式。
  • 透過受信任的網路連線時,會使用 Http

透過 httphttps 連線至資料箱 Blob 時,兩者的連線步驟是不同的。

透過 HTTP 連線

透過 http 連線到資料箱 Blob 儲存體 REST API 需要下列步驟:

  • 將裝置 IP 和 Blob 服務端點新增到遠端主機
  • 設定協力廠商軟體並驗證連線

下列各節將說明這其中每個步驟。

重要

對於 Data Box Heavy,您必須重複所有連線指示,才能連線到第二個節點。

新增裝置 IP 位址和 Blob 服務端點

  1. 登入「資料箱」裝置。 確定裝置已解除鎖定。

    顯示儀錶板的螢幕快照,其裝置顯示為 [已解除鎖定]。

  2. 移至 [設定網路介面]。 記下用來連線至用戶端之網路介面的裝置 IP 位址。

    此螢幕快照顯示您可以在其中看到 I P 位址的網路設定。

  3. 移至 [連線並複製] 並按一下 [Rest]

    此螢幕快照顯示 [連線和複製] 窗格,您可以在其中選取 REST 作為存取設定。

  4. 從 [存取儲存體帳戶並上傳資料] 對話方塊中,複製 [Blob 服務端點]

    此螢幕快照顯示 [存取記憶體帳戶並上傳數據] 對話框,您可以在其中複製 Blob 服務端點。

  5. 以系統管理員身分啟動 [記事本],然後開啟位於 C:\Windows\System32\Drivers\etchosts 檔案。

  6. 將下列項目新增至 hosts 檔案:<device IP address> <Blob service endpoint>

  7. 使用下圖以供參考。 儲存 hosts 檔案。

    此螢幕快照顯示已新增 I P 位址和 Blob 服務端點的記事本檔。

設定合作夥伴軟體並驗證連線

設定合作夥伴軟體以連線至用戶端。 若要連線至合作夥伴軟體,您通常需要下列資訊 (可能會有所不同),這些資訊是您從上一個步驟中本機 Web UI 的 [連線並複製] 頁面所收集的:

  • 儲存體帳戶名稱
  • 存取金鑰
  • Blob 服務端點

若要確認是否已成功建立連線,請使用「儲存體總管」來連結至外部儲存體帳戶。 如果您沒有儲存體總管,則需要下載並安裝。

第一次使用「儲存體總管」,必須執行下列步驟:

  1. 從頂端命令列,移至 [編輯] > [目標 Azure Stack]

    顯示從 [編輯] 功能選取 [目標 Azure Stack] 的螢幕快照。

  2. 重新啟動「儲存體總管」以讓變更生效。

    顯示 [立即重新啟動] 按鈕的螢幕快照。

請依照下列步驟來連線到儲存體帳戶及驗證連線。

  1. 在「儲存體總管」中,開啟 [連線至 Azure 儲存體] 對話方塊。 在 [連線至 Azure 儲存體] 對話方塊中,選取 [使用儲存體帳戶名稱和金鑰]

    顯示 [連線到 Azure 儲存體] 對話框的螢幕快照,其中已選取 [使用記憶體帳戶名稱和密鑰]。

  2. 貼上您的 [帳戶名稱] 和 [帳戶金鑰] (來自本機 Web UI 中 [連線並複製] 頁面的金鑰 1 值)。 選取 [其他 (在下方輸入)] 作為儲存體端點網域,然後提供 Blob 服務端點,如下所示。 請只在透過 http 傳輸的情況下,才勾選 [使用 HTTP]選項。 如果使用 https,請將此選項維持不勾選。 選取 [下一步]。

    此螢幕快照顯示 [使用名稱和金鑰連接] 對話方塊,其中包含輸入的值。

  3. 在 [連線摘要] 對話方塊中,檢閱所提供的資訊。 選取 Connect

    此螢幕快照顯示已選取 [連線] 的 [連線摘要] 對話方塊。

  4. 您成功新增的帳戶會顯示在「儲存體總管」的左側窗格中,其名稱會附加「(外部,其他)」。 請按一下 [Blob 容器] 來檢視該容器。

    此螢幕快照顯示已選取 [Blob 容器] 的 [總管] 功能表。

透過 HTTPS 連線

透過 https 連線到 Azure Blob 儲存體 REST API 需要下列步驟:

  • 從 Azure 入口網站下載憑證
  • 匯入用戶端或遠端主機上的憑證
  • 將裝置 IP 和 Blob 服務端點新增到用戶端或遠端主機
  • 設定協力廠商軟體並驗證連線

下列各節將說明這其中每個步驟。

重要

對於 Data Box Heavy,您必須重複所有連線指示,才能連線到第二個節點。

下載憑證

使用 Azure 入口網站下載憑證。

  1. 登入 Azure 入口網站。

  2. 移至您的資料箱訂單,並巡覽至 [一般] > [裝置詳細資料]

  3. 在 [裝置認證] 下方,移至 [裝置的 API 存取]。 按一下 [下載] 。 此動作會下載 <您的訂單號碼>.cer 憑證檔案。 儲存這個檔案。 您會將此憑證安裝在將用來連線到裝置的用戶端或主機電腦上。

    在 Azure 入口網站 下載憑證

匯入憑證

必須有裝置的 SSL 憑證,才能透過 HTTPS 存取資料箱 Blob 儲存體。 讓用戶端應用程式可以使用此憑證的方式,會隨著應用程式和作業系統與散發套件而有所不同。 某些應用程式可以存取已匯入到系統憑證存放區中的憑證,某些應用程式則無法利用該機制。

本節會說明某些應用程式的特定資訊。 如需其他應用程式的詳細資訊,請參閱所使用應用程式和作業系統的文件。

請遵循下列步驟來將 .cer 檔案匯入到 Windows 或 Linux 用戶端的根存放區。 在 Windows 系統上,您可以使用 Windows PowerShell 或 Windows Server UI 在系統上匯入並安裝憑證。

使用 Windows PowerShell

  1. 以系統管理員的身分開啟 Windows PowerShell工作階段。

  2. 在命令提示字元中,輸入:

    Import-Certificate -FilePath C:\temp\localuihttps.cer -CertStoreLocation Cert:\LocalMachine\Root
    

使用 Windows Server UI

  1. 以滑鼠右鍵按一下 .cer 檔案,然後選取 [安裝憑證]。 這個動作會啟動 [憑證匯入精靈]。

  2. [存放區位置] 請選取 [本機電腦],然後按一下 [下一步]

    使用 PowerShell 匯入憑證

  3. 選取 [將所有憑證放入以下的存放區],然後按一下 [瀏覽]。 導覽至遠端主機的根存放區,然後按一下 [ 下一步]。

    使用 PowerShell 2 匯入憑證

  4. 按一下完成。 會出現訊息告訴您匯入成功。

    使用 PowerShell 3 匯入憑證

使用 Linux 系統

用來匯入憑證的方法隨散發套件而異。

重要

對於 Data Box Heavy,您必須重複所有連線指示,才能連線到第二個節點。

Ubuntu 和 Debian 等數個散發套件使用 update-ca-certificates 命令。

  • 重新命名 Base64 編碼的憑證檔案,使其具有 .crt 副檔名,然後將其複製到 /usr/local/share/ca-certificates directory
  • 執行 update-ca-certificates 命令。

RHEL、Fedora 及 CentOS 的新近版本則使用 update-ca-trust 命令。

  • 將憑證檔案複製到 /etc/pki/ca-trust/source/anchors 目錄。
  • 執行 update-ca-trust

如需詳細資訊,請參閱散發套件的專屬文件。

新增裝置 IP 位址和 Blob 服務端點

請遵循相同的步驟,以在透過 http 連線時新增裝置的 IP 位址和 Blob 服務端點

設定合作夥伴軟體並驗證連線

請遵循相關步驟,以在透過 http 連線時設定所使用的合作夥伴軟體。 唯一的差別是您應該使 [使用 http 選項] 保持未核取狀態。

將資料複製到 Data Box Heavy

連線到資料箱 Blob 儲存體之後,下一個步驟是複製資料。 複製資料之前,請檢閱下列注意事項:

  • 複製資料時,請確定資料大小符合 Azure 儲存體和 Data Box Heavy 限制 中所述的大小限制。
  • 如果資料 (由 Data Box Heavy 上傳) 同時由 Data Box Heavy 以外的其他應用程式上傳,這可能導致上傳作業失敗和資料損毀。

在本教學課程中,會使用 AzCopy 來將資料複製到資料箱 Blob 儲存體。 您也可以使用 Azure 儲存體總管 (如果您偏好 GUI 型工具) 或合作夥伴軟體來複製資料。

複製程序的步驟如下:

  • 建立容器
  • 將資料夾的內容上傳到資料箱 Blob 儲存體
  • 將修改過的檔案上傳到資料箱 Blob 儲存體

下列各節將詳細說明這些每一個步驟。

重要

對於 Data Box Heavy,您必須重複所有複製指示,才能將資料複製到第二個節點。

建立容器

第一個步驟是建立容器,因為一律會將 Blob 上傳到容器。 容器會組織 Blob 群組,就像您在電腦上的資料夾中組織檔案一樣。 請遵循下列步驟來建立 Blob 容器。

  1. 開啟儲存體總管。

  2. 在左窗格中,展開您要在其中建立 blob 容器的儲存體帳戶。

  3. 以滑鼠右鍵按一下 [Blob 容器],從捷徑功能表中,選取 [建立 Blob 容器]

    建立 Blob 容器操作功能表

  4. [Blob 容器] 資料夾下方會出現一個文字方塊。 輸入 blob 容器的名稱。 請參閱建立容器與設定權限,以取得為 Blob 容器命名之規則和限制的相關資訊。

  5. 完成建立 blob 容器時按下 Enter鍵,或按下 Esc 鍵取消。 成功建立 Blob 容器之後,它就會顯示在所選儲存體帳戶的 [Blob 容器] 資料夾下方。

    建立的 Blob 容器

將資料夾的內容上傳到資料箱 Blob 儲存體

使用 AzCopy,將資料夾中的所有檔案都上傳到 Windows 或 Linux 上的 Blob 儲存體。 若要上傳資料夾中的所有 blob,請輸入下列 AzCopy 命令:

Linux

azcopy \
    --source /mnt/myfolder \
    --destination https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/files/ \
    --dest-key <key> \
    --recursive

Windows

AzCopy /Source:C:\myfolder /Dest:https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/files/ /DestKey:<key> /S

使用您的帳戶金鑰來取代 <key>。 若要取得帳戶金鑰,在 Azure 入口網站中,移至您的儲存體帳戶。 移至 [設定] > [存取金鑰]、選取金鑰,並將它貼到 AzCopy 命令中。

如果指定的目的地容器不存在,則 AzCopy 會建立此容器並將檔案上傳至該容器中。 將來源路徑更新為您的資料目錄,並使用與您資料箱相關聯的儲存體帳戶名稱來取代目的地 URL 中的 data-box-storage-account-name

若要以遞迴方式將指定目錄的內容上傳到 Blob 儲存體,請指定 --recursive (Linux) 或 /S (Windows) 選項。 當您使用其中一個選項執行 AzCopy 時,所有的子資料夾和其檔案也都會上傳。

將修改過的檔案上傳到資料箱 Blob 儲存體

使用 AzCopy,根據檔案的上次修改時間來上傳檔案。 若要這麼做,請基於測試目的,在您的來源目錄中修改或建立新的檔案。 若只要上傳已更新或新的檔案,請將 --exclude-older (Linux) 或 /XO (Windows) 參數新增至 AzCopy 命令。

如果您只想複製目的地中不存在的來源資源,請在 AzCopy 命令中同時指定 --exclude-older--exclude-newer (Linux) 或 /XO/XN (Windows) 參數。 AzCopy 只會上傳已更新的資料 (根據其時間戳記)。

Linux

azcopy \
--source /mnt/myfolder \
--destination https://data-box-heavy-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/files/ \
--dest-key <key> \
--recursive \
--exclude-older

Windows

AzCopy /Source:C:\myfolder /Dest:https://data-box-heavy-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/files/ /DestKey:<key> /S /XO

如果在連線或複製作業期間發生任何錯誤,請參閱針對資料箱 Blob 儲存體問題進行疑難排解

下一個步驟是準備寄送裝置。

下一步

在本教學課程中,您已了解 Azure 資料箱的相關主題,像是:

  • 必要條件
  • 透過 httphttps 連線到資料箱 Blob 儲存體
  • 將資料複製到 Data Box Heavy

請繼續進行下一個教學課程,了解如何將資料箱送回給 Microsoft。