Chi phí egress trên đám mây
(getdeploying.com)- Data egress là lưu lượng đi ra khỏi đám mây, và hóa đơn có thể tăng rất nhanh khi có nhiều truyền tải dung lượng lớn như tải xuống hoặc di chuyển giữa các đám mây
- Việc tính phí thường dựa trên lượng truyền GB/TB theo tháng, còn ingress đi vào đám mây nhìn chung là miễn phí, nên cấu trúc chi phí mang tính bất đối xứng
- Với mức egress vượt quá 1TB, Runpod, GPUhub, Civo và Lambda Labs miễn phí/không giới hạn, trong khi AWS lên tới $90, Google Cloud $120, Vercel $150, và Netlify $550
- Mức giá so sánh có thể thay đổi theo khu vực và điều kiện; đây là ước tính dựa trên một số giả định với các khu vực gần North Virginia hoặc Frankfurt, nên cần kiểm tra giá mới nhất
- Để giảm chi phí, nên xem xét cache CDN, nén, gộp hạn mức truyền tải, cảnh báo mức sử dụng, và private networking trong cùng datacenter hoặc region; đồng thời cần kiểm tra thêm các phụ phí như NAT gateway
Cách data egress được tính phí
- Data egress là dữ liệu rời khỏi mạng, cụ thể hơn là dữ liệu đi từ mạng của nhà cung cấp đám mây ra Internet công cộng
- Trường hợp người dùng tải dữ liệu xuống từ đám mây, hoặc gửi dữ liệu từ một nhà cung cấp đám mây sang nhà cung cấp khác, đều thuộc nhóm này
- Phí thường được tính dựa trên lượng dữ liệu được gửi ra ngoài mạng
- Đơn vị đo thường là GB hoặc TB truyền tải theo tháng
Khác biệt giữa ingress và egress
- Việc truyền dữ liệu, từ góc nhìn của nhà cung cấp đám mây, được chia thành hai loại
- Ingress: dữ liệu đi vào mạng và thường là miễn phí
- Egress: dữ liệu rời khỏi mạng và thường bị tính phí
- Khi người dùng tải tệp lên cloud storage, từ phía nhà cung cấp đám mây đó là ingress
- Khi tải chính tệp đó xuống, dữ liệu đi từ mạng của nhà cung cấp tới người dùng hoặc một lớp trung gian như CDN, nên có thể phát sinh phí egress
Vì sao nhà cung cấp thu phí egress
- Nhà cung cấp đám mây phải gánh chi phí hạ tầng và băng thông để gửi dữ liệu ra ngoài mạng
- Chất lượng mạng và cấu trúc chi phí có thể khác nhau giữa các nhà cung cấp
- Một số nhà cung cấp có thể có thỏa thuận peering tốt hơn với ISP hoặc sở hữu hạ tầng mạng ổn định hơn
- Phí egress cũng có thể được dùng như một cơ chế hạn chế các kiểu sử dụng có thể làm bão hòa mạng, hoặc việc liên tục di chuyển lượng lớn dữ liệu giữa các nhà cung cấp đám mây
So sánh chi phí egress vượt quá 1TB
- Chi phí cho 1TB egress vượt quá hạn mức miễn phí khác nhau rất lớn giữa các nhà cung cấp
- Có những nhà cung cấp miễn phí hoặc gần như miễn phí
- Runpod, GPUhub: miễn phí/không giới hạn
- Civo, Lambda Labs: miễn phí/không giới hạn
- Cloudflare: miễn phí với phần lớn dịch vụ
- Gcore: egress máy chủ miễn phí, CDN bao gồm 1TB rồi tính €0.030/GB
- Scaleway: miễn phí với phần lớn dịch vụ, có giới hạn băng thông theo kích thước instance
- Cũng có những nhà cung cấp thuộc nhóm đơn giá thấp
- Hetzner: miễn phí 1~60TB/tháng cho mỗi instance, vượt thêm 1TB khoảng $1.14 hoặc €1/TB
- Akamai Cloud: miễn phí 1~20TB/tháng cho mỗi instance, vượt thêm 1TB là $5.00
- Oracle Cloud: miễn phí 10TB/tháng, vượt thêm 1TB là $8.50
- Backblaze, DigitalOcean, Vultr: vượt thêm 1TB là $10.00
- Chi phí vượt 1TB của các đám mây và nền tảng lớn cao hơn đáng kể
- Azure: miễn phí 100GB/tháng, theo gói Premium network Bắc Mỹ là $87.00
- AWS: miễn phí 100GB/tháng, khu vực Bắc Mỹ là $90.00
- Google Cloud: khác nhau theo dịch vụ, theo gói Premium network là $120.00
- Vercel: miễn phí 100GB~1TB tùy gói, theo mức Edge là $150.00
- Firebase: miễn phí 10GB/tháng, $200.00
- Render: miễn phí 100GB~1TB tùy gói, tính $30 cho mỗi 100GB nên 1TB là $300.00
- Netlify: miễn phí 100GB~1TB tùy gói, tính $55 cho mỗi 100GB nên 1TB là $550.00
- Giá có thể thay đổi theo khu vực và các điều kiện khác
- Bản so sánh dựa trên các khu vực gần North Virginia hoặc Frankfurt
- Đây là mức ước tính áp dụng nhiều giả định, nên thông tin mới nhất cần được kiểm tra trên trang giá của từng nhà cung cấp
Cách giảm chi phí egress
- Hầu hết nhà cung cấp đám mây đều cung cấp một lượng egress miễn phí mỗi tháng
- Có thể được cấp dưới dạng hạn mức cho toàn bộ tài khoản
- Hoặc dung lượng truyền tải theo tháng trên mỗi server có thể được gộp lại theo số lượng server
- Tùy theo mô hình sử dụng và lựa chọn nhà cung cấp, có thể tránh hoàn toàn hoặc giảm thiểu đáng kể phí egress
- Dùng CDN giúp cache và phân phối tài sản tĩnh gần người dùng hơn, từ đó giảm lượng dữ liệu được truyền trực tiếp từ nhà cung cấp đám mây tới người dùng
- Nén là cách giảm kích thước dữ liệu trước khi truyền để hạ lượng truyền tải
- Gzip và Brotli là các thuật toán nén tiêu biểu
- Nếu chọn đám mây có cung cấp pool truyền dữ liệu, có thể gộp hạn mức của nhiều dịch vụ trong cùng một tài khoản để dùng chung
- Thiết lập cảnh báo sử dụng và cảnh báo hóa đơn sẽ giúp nhận thông báo khi sắp chạm hạn mức miễn phí hoặc một ngưỡng nhất định
- Khi dùng private network trong cùng datacenter hoặc region, egress giữa các dịch vụ có thể được miễn phí
- Tuy nhiên, vẫn cần kiểm tra vì có thể phát sinh phí NAT gateway hoặc các chi phí bổ sung khác
1 bình luận
Các ý kiến trên Hacker News
Chi phí lưu lượng truyền ra là một lý do chính đáng khiến nhiều tổ chức sẽ chưa chuyển hoàn toàn sang các nhà cung cấp đám mây trong một thời gian nữa
Khác với chi phí lưu trữ, dường như không có lý do rõ ràng về chi phí thực tế, mà chỉ có tác dụng khiến chi phí chuyển sang đối thủ trong một số trường hợp trở nên khó gánh nổi, nên khá kỳ lạ
Ví dụ, một công ty nơi tôi làm việc kinh doanh việc chuyển giao tài sản sáng tạo cho các nhà phân phối, truyền ra khoảng 180TB mỗi tháng và trung bình ở mức khoảng 500Mb/s
Công ty này vận hành 2 rack tại trung tâm dữ liệu thương mại, kết nối bằng Ethernet-over-DWDM 10Gb/s, và mỗi trung tâm dữ liệu có các uplink Internet 2x512Mb/s và 1x1Gb/s
Mỗi rack có 2 máy chủ OEM đa dụng với khoảng 64 nhân AMD Zen, 1/2TB RAM, khoảng 8TB NVMe và khoảng 100TB lưu trữ SAS RAID6
Chỉ riêng việc tiết kiệm chi phí truyền ra của AWS cũng đủ biện minh cho cấu hình này, kể cả khi tính cả chi phí kỹ sư bảo trì. Nỗ lực vận hành thực tế cũng hóa ra ở mức tối thiểu
Vì vậy tôi tự hỏi liệu các nhà cung cấp đám mây đang bỏ lỡ một thị trường lớn, hay biên lợi nhuận họ áp lên khách hàng hiện tại đã đủ sinh lời rồi
Giả sử bạn dùng AWS và muốn dùng một SaaS có dữ liệu cỡ trung đến lớn đi qua, chẳng hạn bạn sẽ có các lựa chọn như https://www.snowflake.com/en/data-cloud/pricing-options/
Thật đáng ngạc nhiên là bạn có thể chọn giữa AWS, Azure và GCP. Snowflake trả khoản tiền lớn để được host trên các đám mây này, rồi chuyển chi phí đó sang khách hàng
Snowflake lớn, có nhiều kỹ sư và đã hỗ trợ cả ba đám mây, nên rõ ràng là trung lập với đám mây. Nếu tự vận hành cơ sở vật lý thì sẽ rẻ hơn nhiều, nhờ NVMe hiệu năng cũng có thể tốt hơn, và họ còn có thể chia sẻ phần tiết kiệm với khách hàng
Nhưng tôi nghĩ lý do họ vẫn không làm vậy là vì chi phí truyền ra từ khách hàng sang Snowflake sẽ bù hết phần tiết kiệm, và sự biến động của chi phí khiến khách hàng e ngại
Rốt cuộc, chính cách khách hàng cố tránh chi phí truyền ra lại mang về rất nhiều tiền cho các đám mây lớn. Cơ quan quản lý nên xem xét rất thận trọng, nhưng từ góc nhìn của đám mây thì đây là một quyết định kinh doanh tuyệt vời
Thế nhưng ngay tháng đầu tiên họ nhận hóa đơn AWS 25.000 đô la chỉ riêng chi phí lưu lượng truyền ra, và phát hiện dữ liệu đã đi ra ngoài AWS tới ba lần
Cứ làm như gắn đường truyền Internet là được, và AWS vận hành Direct Connect tại nhiều trung tâm dữ liệu trung lập về nhà mạng của bên thứ ba
Lưu lượng AWS truyền ra qua Direct Connect là $0.02/GB thay vì $0.09/GB trên Internet công cộng
Bạn có thể phục vụ khách hàng bằng đường truyền Internet không tính phí, còn ở backend thì truy cập các dịch vụ như S3 qua Direct Connect
ISP tiêu dùng đôi khi cố hết sức để không peering với các điểm trao đổi Internet mở, và khi đến những khu vực băng thông đắt hơn, chẳng hạn châu Đại Dương, mọi thứ phức tạp hơn nhiều
Có lý do khiến biểu đồ mà đội sales Cloudflare thích dùng để giải thích giá trị là Argo Smart Routing, và đó cũng là lý do vì sao chi phí vào khoảng 100 đô la mỗi TB như AWS hay GCP
Vấn đề là đã có nhiều thế hệ kỹ sư phần mềm không biết giá băng thông được định như thế nào
Họ chỉ từng dùng các nhà cung cấp managed tính phí theo đơn vị nhận/truyền vài xu mỗi GB
Bài viết nói rằng “nhà cung cấp đám mây tính phí truyền ra vì việc gửi dữ liệu ra khỏi mạng của họ có chi phí. Họ phải trả chi phí hạ tầng và băng thông cần thiết để gửi dữ liệu cho người dùng”, nhưng với các nhà cung cấp lớn, mức giá không dựa trên giá vốn
Lý do họ thu cao một cách vô lý là vì họ muốn giữ khách hàng và dữ liệu trên nền tảng của mình. Di chuyển dữ liệu là hành vi rời khỏi nền tảng, nên họ dùng chi phí cao để kìm hãm hành vi đó
Có Bandwidth Alliance, và nhiều công ty đám mây nằm trong danh sách này: https://www.cloudflare.com/en-gb/bandwidth-alliance/
Câu trả lời thực tế phức tạp hơn nhiều. Ví dụ Google Cloud cung cấp hai hạng băng thông là premium và standard
Phép tính trong bài gốc có vẻ giả định tùy chọn mặc định là premium, và tất nhiên nó đắt hơn nhiều
Băng thông “premium” của Google Cloud rất giống AWS Global Accelerator ở chỗ nó dùng backbone riêng của Google lâu nhất có thể, rồi thoát ra tại điểm peering gần nhất giữa ISP của người dùng cuối và Google
AWS Global Accelerator còn có các tùy chọn khác nên về bản chất là một sản phẩm khác, nhưng đặc tính định tuyến thì giống băng thông premium của GCP hơn bất kỳ sản phẩm nào khác của AWS
Vì khách hàng không muốn trả chi phí truyền ra
Nếu sau khi đã trả rất nhiều tiền cho một nhà cung cấp đám mây, bạn nhận ra ứng dụng chạy tốt nhất và rẻ nhất ở một nhà cung cấp web hosting phổ thông kiểu cũ, thì tốt hơn nên để tiền và dữ liệu ở lại với web host độc lập
Ít nhất ở châu Âu, đang có xu hướng các web host nhỏ bị sáp nhập vào những tập đoàn lớn, có lẽ dưới sự dẫn dắt của quỹ đầu tư tư nhân. Họ lập tức tăng giá lên vài trăm phần trăm
Trong 3–4 năm qua, tôi đã gặp chuyện này vài lần với nhiều web host ở Hà Lan, và rất gần đây có một nơi tăng hóa đơn hằng tháng từ khoảng 3 euro lên khoảng 18 euro
Mỗi lần đọc về “chi phí outbound” tôi thường phải bật cười. Dữ liệu của tôi là dữ liệu của tôi, tôi không hiểu vì sao lại phải trả tiền để lấy nó ra khỏi ổ cứng của mình
Nhưng tôi cũng bắt đầu thấy mây đen trên use case của mình. Khi các web host lần lượt bị hợp nhất, bắt chước AWS và tăng giá mạnh, rồi cuối cùng tạo ra cả phí outbound, chuyện đó không còn khó tin nữa
Sau khi bị mua lại, họ gửi email với kiểu câu chữ nhờn nhợt như “chúng tôi sẽ nâng cấp gói của bạn để phù hợp với hệ thống giá mới”, rồi trong khoảng 2 năm tôi đã phải trả 450 euro/năm
Tăng 9 lần chỉ trong vài năm là động thái kiểu quỹ đầu tư tư nhân vô lương tâm nhất mà tôi từng thấy ở Hà Lan, và tôi đồng ý với dự đoán rằng việc gắn thêm phí outbound phi lý chỉ còn là vấn đề thời gian
Bạn sẽ nhận ra băng thông mạng là tài nguyên hữu hạn, phải trả tiền mua, và phải phân bổ cho khách hàng
Cách dễ nhất để biến thứ mà khách hàng lầm tưởng là vô hạn thành hữu hạn và phân bổ nó là tính phí, và tính đúng mức giá có thể hạn chế nhu cầu
Có một mánh cần lưu ý. Ngay cả khi nhà cung cấp đám mây đưa ra giá outbound rẻ, họ vẫn có thể giới hạn tốc độ mạng của instance để khiến các tác vụ có nhiều outbound trở nên đắt đỏ
Nhiều nhà cung cấp buộc bạn phải nâng cấp toàn bộ instance khi một trong các thành phần bị bão hòa. Ví dụ, dù không cần thêm CPU, để tăng thông lượng mạng bạn vẫn phải nâng từ instance 2 CPU lên 4 CPU
Nhìn bề ngoài thì outbound rẻ và instance cũng có giá tốt so với phần cứng, nhưng nếu workload không cần một instance cân bằng, chẳng hạn tỷ lệ 1 CPU / 1 GB RAM / các thành phần khác, giá có thể trở nên kỳ lạ
Oracle Cloud chỉ tính một phần nhỏ so với số tiền Google, Microsoft, Amazon thu
Tôi tò mò Oracle làm thế nào để giữ chi phí thấp như vậy. Hay là các hãng khác thổi phồng giá để khách hàng không thể chuyển sang đối thủ?
Nếu vậy, Oracle đáng được khen vì không áp dụng kiểu khóa chặt nhà cung cấp này
Rất có khả năng Oracle cũng có biên lợi nhuận khá tốt từ phí outbound
Lý do chi phí AWS/GCP/Azure phi lý là vì với nhiều khách hàng, trong lúc vận hành đó không phải khoản quá lớn, nhưng khi muốn chuyển dữ liệu ra ngoài thì chi phí trở nên khó gánh
Với họ, đó đơn giản là một cơ chế khóa chặt nhà cung cấp
OVHCloud miễn phí: https://us.ovhcloud.com/public-cloud/faq/
Là một công ty dữ liệu, chúng tôi hưởng lợi rất nhiều từ Scaleway, Hetzner và OVH
Tuy nhiên Scaleway không có kế hoạch bổ sung hạ tầng ở Mỹ, còn Hetzner có hiện diện ở Mỹ hay không thì tôi không rõ
Không có gì đáng ngạc nhiên khi họ cung cấp nhiều băng thông hơn với cùng chi phí
Gói ARM của Hetzner cung cấp 2xvCPU, RAM 4GB, lưu trữ 40GB, outbound 20TB với giá 3,79 euro/tháng, nên đây là giá trị khó đánh bại cho các website nhỏ và vừa
Cần phải được bảo vệ khỏi cái gọi là tấn công từ chối ví tiền
Tôi không biết nó lại đắt điên rồ đến vậy. Tôi có thể đưa một thư mục phim 1TB lên website chạy trên Synology NAS nối với Internet Google Fiber và để bạn tôi tải miễn phí
Vậy nếu host cùng website đó trên Google Cloud thì họ sẽ tính $111.60 sao? Tôi không hiểu kiểu định giá này có thể tồn tại như thế nào
Và ở trung tâm dữ liệu đám mây thì độ tin cậy có thêm một số 9 nữa
Nhìn chung, vận hành ứng dụng thương mại cũng bị cấm
Dù Google Fiber là một mạng rất tốt, các điểm trao đổi của nó cũng chỉ có vài chục nơi trong nước Mỹ
Nếu là khách hàng Google Cloud, lưu lượng outbound sẽ đi trên mạng Google tới tận rìa toàn cầu, sử dụng hàng trăm điểm liên kết và điểm trao đổi
Có lẽ lưu lượng sẽ nằm trên mạng riêng cho đến khi chỉ còn cách người dùng cuối vài dặm
Đây gần như là so sánh táo với kim cương
Tôi thắc mắc phần tính toán phía Google Cloud là với tùy chọn Premium Networking hay Standard Networking.
Hai lựa chọn này rất khác nhau. Mạng standard gần giống hơn với lưu lượng gửi ra của AWS, còn tùy chọn premium của GCP là mặc định, dùng PoP cục bộ và dark fiber trên backbone của Google để kết nối tới origin.
Với Google Cloud, cũng cần nhớ rằng nếu muốn rời đi thì thực tế có thể di chuyển mà không mất phí egress: https://cloud.google.com/blog/products/networking/eliminatin...
Điều này không thay đổi phí egress thông thường, nhưng nhiều khả năng là một giải pháp tình thế để tránh bị chỉ trích là hành vi phản cạnh tranh.