Share via


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

警告

這篇文章參考 CentOS,這是接近生命週期結束 (EOL) 狀態的 Linux 發行版本。 請據以考慮您的使用方式和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指引

本教學課程說明透過 HTTP 或 HTTPs 透過 REST API 連線到 Azure 資料箱 Blob 記憶體的程式。 聯機之後,會說明將數據複製到數據箱 Blob 記憶體所需的步驟。

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

  • 必要條件
  • 透過 HTTP 或 HTTPs 連線 至資料箱 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 連線

您可以透過 HTTP 或 HTTPs 連線到資料箱 Blob 記憶體。

  • Https 是連線到數據箱 Blob 記憶體的安全建議方式。
  • 透過信任的網路連線時,會使用 Http

當您透過 HTTP 或 HTTPs 連線到資料箱 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. 將下列專案新增至主機檔案:<device IP address> <Blob service endpoint>

  7. 如需參考,請使用下圖。 儲存 主機 檔案。

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

設定合作夥伴軟體並確認連線

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

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

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

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

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

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

  2. 重新啟動 儲存體總管,變更才會生效。

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

請遵循下列步驟來連線到記憶體帳戶,並確認連線。

  1. 在 [儲存體總管] 中,開啟 [要 Azure 儲存體] 對話框的 [連線]。 在 [要 Azure 儲存體 連線] 對話框中,選取 [使用記憶體帳戶名稱和密鑰]。

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

  2. 貼上您的帳戶名稱和帳戶金鑰(來自 連線 的密鑰 1 值,並在本機 Web UI 中複製頁面)。 選取 [儲存體 端點網域為 [其他] (如下所示),然後提供 Blob 服務端點,如下所示。 只有在透過 HTTP 傳輸時,才勾選 [使用 HTTP] 選項。 如果使用 HTTPs,請將選項保留為未核取。 選取 [下一步]。

    此螢幕快照顯示 [名稱] 和 [索引鍵] 對話框 連線,並輸入值。

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

    顯示已選取 連線 連線 摘要對話框的螢幕快照。

  4. 您成功新增的帳戶會顯示在 儲存體總管 左窗格中,並附加至其名稱的 [外部]、[其他]。 按兩下 [Blob 容器 ] 以檢視容器。

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

透過 HTTPs 連線

透過 HTTPs 連線 至 Azure Blob 記憶體 REST API 需要下列步驟:

  • 從 Azure 入口網站 下載憑證
  • 在客戶端或遠端主機上匯入憑證
  • 將裝置 IP 和 Blob 服務端點新增至用戶端或遠端主機
  • 設定第三方軟體並確認連線

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

重要

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

下載憑證

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

  1. 登入 Azure 入口網站。

  2. 移至您的數據箱訂單,並流覽至 [一般 > 裝置詳細數據]。

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

    在 Azure 入口網站 下載憑證

匯入憑證

透過 HTTPS 存取資料箱 Blob 記憶體需要裝置的 TLS/SSL 憑證。 用戶端應用程式可以使用此憑證的方式,會因應用程式與應用程式以及操作系統和散發套件而有所不同。 某些應用程式可以在將憑證匯入系統證書存儲之後存取該憑證,而其他應用程式則不會使用該機制。

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

請遵循下列步驟,將 .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 儲存體 Explorer(如果您偏好 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 會建立它,並將檔案上傳至其中。 更新資料目錄的來源路徑,並以與資料箱相關聯的記憶體帳戶名稱取代 data-box-storage-account-name 目的地 URL 中的 。

若要以遞歸方式將指定目錄的內容上傳至 Blob 記憶體,請指定 --recursive [Linux] 或 /S [Windows] 選項。 當您使用其中一個選項執行 AzCopy 時,也會上傳所有子資料夾及其檔案。

將修改過的檔案上傳至數據箱 Blob 記憶體

使用 AzCopy 根據其上次修改時間上傳檔案。 若要這麼做,請基於測試目的,在您的來源目錄中修改或建立新的檔案。 若要只上傳更新或新的檔案,請將 (Linux) 或 /XO (Windows) 參數新增--exclude-older至 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 數據箱主題,例如:

  • 必要條件
  • 透過 HTTP 或 HTTPs 連線 至資料箱 Blob 記憶體
  • 將數據複製到 Data Box Heavy

前進到下一個教學課程,瞭解如何將您的數據箱寄回 Microsoft。