簡體   English   中英

從 Google Cloud 內部 IP 調用 Google Cloud Buckets

[英]Calling Google Cloud Buckets from Google Cloud internal IP

我在 Google Cloud 上有一個帶有文件 ( my-large-file.zip ) 的存儲桶 ( my-bucket-name )。 我創建了一個帶有GET權限的簽名 URL 來下載文件。

我的下載地址是這樣的:

https://storage.googleapis.com/my-bucket-name/my-large-file.zip?GoogleAccessId= ...

當我從我的開發者 PC(在 Google Cloud 之外)下載這個 URL 時,它是通過 Internet下載文件來工作的

我的 Google Cloud 使用相同的 URL 部署了應用程序並下載它們。 我想知道文件是否也通過互聯網傳輸? 或者我可以通過內部網絡下載文件。 我期望下載性能會快得多。

當代碼在 Google Cloud 上運行時,是否可以在不使用互聯網的情況下下載文件?

當代碼在 Google Cloud 上運行時,是否可以在不使用互聯網的情況下下載文件?

如果您在僅具有內部(私有)IP 地址的 VM 實例上運行代碼,則可以啟用:私有 Google 訪問

只有內部 IP 地址(沒有外部 IP 地址)的虛擬機實例可以使用私有 Google 訪問。 他們可以訪問 Google API 和服務的外部 IP 地址

注意:即使 Google API 和服務的 IP 地址是公開的,從使用私有 Google 訪問權限的實例到 Google API 的流量路徑仍保留在 Google 的網絡中

在此處輸入圖片說明

注意:即使所需路由的下一跳稱為“默認 Internet 網關”並且 Google API 和服務的 IP 地址是公開的,但來自僅在子網 a 中具有內部 IP 地址的 VM 對 Google API 和服務的請求(其中私人 Google Access 已啟用)不會通過公共互聯網發送。 這些請求保留在 Google 的網絡中。 此外,只有內部 IP 地址的 VM 不滿足訪問除 Google API 和服務之外的其他公共 IP 地址的 Internet 訪問要求。

編輯

我在默認子網上創建了一個只有內部 IP 地址的 Google VM 實例,並且啟用了私有訪問。 我無法從我的 VM 訪問互聯網,但我可以使用gsutil訪問雲 Google Cloud Storage,並且還能夠使用wget下載 blob。 根據我的理解,從文檔和我的測試來看,從我的實例到 Google APIs 的流量路徑仍然在 Google 的網絡中。

假設您的本地和 Google Cloud 之間有某種形式的互連,您/您的網絡管理員可能希望啟用此版本的 Google Cloud 私有訪問: https : //cloud.google.com/vpc/docs/private-access -options#pga-onprem如果您希望避免您的開發者 PC 通過 Internet 訪問 Google Cloud Storage。

這是否會導致更高吞吐量的下載將取決於許多細節,包括但可能不限於

  • 往返時間,通過互聯網或互連
  • 您的本地 PC 通告的最大 TCP 窗口大小的配置。

對於批量傳輸,TCP 吞吐量的一個常見限制是:

吞吐量 <= WindowSize / RoundTripTime

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM