
我正在習慣雲端運算,尤其是 Amazon Web Services (AWS)。
AWS有區域和可用區的概念。區域的所有可用區都透過特殊的內部網路連接。
當我在一個區域內傳輸資料時,是否會自動使用該內部網路?
例如: 1) 我從 EC2 向 S3 發出 HTTP-GET 請求以接收檔案。 2)我從 EC2 向充當 S3 代理程式的 API 閘道發出 HTTP-GET 請求
答案1
您所描述的內容在AWS術語中被定義為「VPC端點」。
這是一個詳細描述它的鏈接, https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html
基本上,要存取 API Gtw 或 S3,您可以選擇在 S3 服務情況下建立介面端點或網關端點。否則,流量將透過防火牆離開 VPC,並路由回 S3/API 公共介面。
答案2
可用區間流量
在可用區內,如果您使用私人 IP 位址,則您正在使用內部 AWS 網路。如果您使用私有 IP,ELB、RDS、Elasticache、S3 和 EC2 執行個體可用區之間的流量是免費的。如果您使用公共 IP,則需要付費。
大多數可用區間流量是免費的,但可用區間流量可以收費。小心不要被抓住,AWS 頻寬非常昂貴。一般來說,如果您需要反向代理,請考慮使用 AWS Lightsail 執行個體。
區域間流量
區域之間的流量是收費的,目前為 0.02 美元/GB。我很確定這會透過私人 AWS 網路進行,但您應該確保對傳輸中的流量進行加密。
VPC 終端節點
AWS還有一個概念VPC 終端節點。這會在您的 VPC 中放置一個私人端點,以便 S3 和其他公用服務的流量通過 AWS 網路而不是網際網路。這提高了安全性並提高了效能。我認為 AWS 不會對這些收費。
還有其他概念,例如 PrivateLink,但我不想在這裡解釋有關 EC2 的所有內容。
EC2 定價頁面
這是來自 EC2定價頁面。
同一 AWS 區域內的資料傳輸
跨可用區或相同 AWS 區域中的 VPC 對等連接向 Amazon EC2、Amazon RDS、Amazon Redshift、Amazon DynamoDB Accelerator (DAX) 和 Amazon ElastiCache 執行個體或彈性網路介面「傳入」和「傳出」的資料收費為每個方向0.01 USD/GB。
IPv4:從公有或彈性 IPv4 位址「傳入」和「傳出」的資料每個方向按 0.01 USD/GB 收費。 IPv6:從不同 VPC 中的 IPv6 位址「傳入」和「傳出」的資料每個方向按 0.01 USD/GB 收費。
在同一可用區中的 Amazon EC2、Amazon RDS、Amazon Redshift、Amazon ElastiCache 執行個體和彈性網路介面之間傳輸的資料是免費的。使用 VPC 對等互連傳輸資料時請參閱上文。
在同一 AWS 區域中的 Amazon S3、Amazon Glacier、Amazon DynamoDB、Amazon SES、Amazon SQS、Amazon Kinesis、Amazon ECR、Amazon SNS 或 Amazon SimpleDB 和 Amazon EC2 執行個體之間傳輸的資料是免費的。透過 PrivateLink 終端節點存取的 AWS 服務將產生標準 PrivateLink 費用,如這裡所述。
使用私有 IP 位址在同一 AWS 區域的 EC2 執行個體和負載平衡器之間「傳入」和「傳出」Amazon Classic 和應用程式彈性負載平衡器的資料是免費的。