2013-03-05 31 views
10

Là một phần của dự án của chúng tôi, chúng tôi đã tạo ra một cây thư mục/tệp khá rậm rạp trên S3 với tất cả các tệp chiếm khoảng 6TB dữ liệu. Hiện tại chúng tôi không có bản sao lưu dữ liệu này. Chúng tôi muốn thực hiện các hoạt động định kỳ. Có vẻ như Glacier là con đường để đi.AWS: Các cách giảm chi phí trong khi sao lưu các tệp S3 vào sông băng?

Câu hỏi đặt ra là: các cách để giữ tổng chi phí sao lưu là gì?

Hầu hết các tệp của chúng tôi là văn bản để chúng tôi có thể nén chúng và tải lên toàn bộ lưu trữ ZIP. Điều này sẽ yêu cầu xử lý (trên EC2) vì vậy tôi tò mò liệu có bất kỳ quy tắc nào để so sánh chi phí bổ sung khi chạy một cá thể EC2 để nén so với chỉ tải lên các tệp không nén.

Ngoài ra, chúng tôi sẽ phải trả tiền để chuyển dữ liệu vì vậy tôi tự hỏi nếu có bất kỳ cách sao lưu nào khác ngoài (i) tải xuống tệp từ S3 xuống một thể hiện; (ii) tải lên tệp ở dạng thô hoặc được nén lên sông băng.

+0

Cuối cùng, chúng tôi đã mệt mỏi vì phải đối phó với độ trễ dài để khôi phục từ sông băng thường là 3-5 giờ và các yếu tố chi phí ẩn. Chúng tôi đã kết thúc việc tạo một chương trình để đồng bộ hóa và tạo các bức ảnh chụp nhanh các thùng của tôi, trong số những thứ khác, sử dụng S3 Reducedancy Storage để tiết kiệm chi phí tốt hơn cho Glacier. Nó đã làm việc tốt cho chúng tôi trong vài năm qua vì vậy chúng tôi đã biến nó thành một sản phẩm thương mại. Bạn có thể dùng thử phiên bản đầy đủ 2 tuần dùng thử miễn phí hoàn toàn miễn phí tại [BucketBacker] (https://www.bucketbacker.com/) – Krafty

Trả lời

18

Tôi thường nghĩ Glacier là thay thế bộ nhớ đến S3, không phải là bổ sung bộ nhớ. Tức là, dữ liệu thường được lưu trữ trong S3 hoặc Glacier, nhưng hiếm khi cả hai.

Nếu bạn tin tưởng quảng cáo mười một nines độ bền của S3, thì bạn không sao lưu vì bản thân S3 có khả năng mất dữ liệu.

Bạn có thể muốn sao lưu dữ liệu vì (như tôi làm), bạn thấy tài khoản Amazon của mình là một điểm thất bại (ví dụ: thông tin đăng nhập bị xâm nhập hoặc Amazon chặn tài khoản của bạn vì họ tin rằng bạn đang làm điều gì đó lạm dụng). Tuy nhiên, trong trường hợp đó, Glacier không phải là một bản sao lưu đầy đủ vì nó vẫn nằm dưới ô của Amazon.

Tôi khuyên bạn nên sao lưu dữ liệu S3 bên ngoài Amazon nếu bạn lo ngại về việc mất dữ liệu trong S3 do lỗi người dùng, thông tin đăng nhập bị xâm phạm và tương tự.

Tôi khuyên bạn nên sử dụng Glacier làm nơi lưu trữ dữ liệu để lưu trữ lâu dài, giá rẻ khi bạn biết mình sẽ không cần truy cập nhiều, nếu có. Khi mọi thứ được chuyển sang Glacier, bạn sẽ xóa chúng khỏi S3.

Amazon cung cấp lưu trữ tự động từ S3 đến Glacier hoạt động tốt, nhưng hãy cẩn thận với các chi phí bổ sung nếu kích thước tệp trung bình của bạn nhỏ. Dưới đây là một bài báo tôi đã viết về mối nguy hiểm rằng:

Chi phí đang chuyển đổi S3 Objects để Glacier
http://alestic.com/2012/12/s3-glacier-costs

Nếu bạn vẫn muốn sao chép từ S3 đến Glacier, đây là một số điểm liên quan đến câu hỏi của bạn :

  • Có thể bạn sẽ để dữ liệu trong sông băng trong một thời gian dài, vì vậy việc nén dữ liệu này có thể đáng để sử dụng CPU ngắn hạn. Việc giao dịch chính xác phụ thuộc vào các yếu tố như độ nén dữ liệu của bạn, thời gian nén để nén và tần suất bạn cần thực hiện việc nén.

  • Không mất phí tải dữ liệu từ S3 xuống phiên bản EC2. Không có phí chuyển dữ liệu để tải dữ liệu lên Glacier.

  • Nếu bạn tải nhiều tệp nhỏ lên Glacier, chi phí tải lên mỗi mục có thể tăng lên.Bạn có thể tiết kiệm chi phí bằng cách kết hợp nhiều tệp nhỏ vào lưu trữ và tải lên.

Một tính năng S3 khác có thể giúp bảo vệ chống mất mát do lỗi người dùng hoặc tấn công là bật phiên bản S3 và bật MFA (xác thực đa yếu tố). Điều này ngăn cản bất kỳ ai có thể xóa vĩnh viễn các đối tượng trừ khi họ có thông tin đăng nhập cộng với thiết bị vật lý do bạn sở hữu.

+3

Eric, cảm ơn câu trả lời chi tiết. Lý do chính tại sao tôi muốn sao lưu là ngay bây giờ bất kỳ thành viên nào trong nhóm của chúng tôi - bao gồm sinh viên tốt nghiệp, giáo sư, nhà phát triển phần mềm chuyên nghiệp và những người khác - có thể vô tình xóa toàn bộ subtree dữ liệu trên S3. ("xóa thư mục"). Nhưng có lẽ câu trả lời cho điều đó là làm một cái gì đó giống như những gì bạn mô tả ở cuối câu trả lời của bạn. –

+7

Cũng giống như IZ, tôi cảm thấy rằng đến nay nguyên nhân có khả năng gây mất dữ liệu thảm họa nhất là một sai lầm về phía tôi. Vô tình xóa một nhóm hoặc chạy một tập lệnh giống nhau. Có một bản sao trong sông băng cung cấp một mạng lưới an toàn trong trường hợp này. – Micah

+0

Tôi quan tâm đến điều tương tự và hiện đang nói chuyện với Amazon về các tùy chọn. Có một cách dễ dàng để di chuyển dữ liệu (lưu trữ) từ S3 đến Glacier nhưng không sao chép dữ liệu (sao lưu). Nếu bạn đang xử lý hàng trăm TB dữ liệu, hãy tải tất cả xuống một ví dụ ec2 sau đó tải nó lên Glacier có lẽ sẽ mất nhiều thời gian và tốn kém đến mức nó sẽ không đáng làm. S3 thực sự cần một con đường để sao lưu một lượng lớn dữ liệu. Nó quá nguy hiểm không có nó trong một hệ thống sản xuất mà khách hàng đang trả tiền cho. – d512

1

tôi bước đầu giải quyết vấn đề tương tự trong xô S3 của tôi, tôi muốn sao lưu bằng cách làm như sau:

  1. tạo ra một "gương" xô thứ hai cho mỗi xô S3 Tôi muốn sao lưu vào Glacier
  2. khởi động một trường hợp máy chủ Ubuntu vi để chạy cron
  3. cài đặt s3cmd trên máy chủ
  4. viết một kịch bản shell để đồng bộ hóa tất cả các đối tượng từ mỗi xô tới xô gương
  5. cho phép cuộc sống quy tắc chu kỳ trên xô gương để thay đổi trạng thái của từng đối tượng thành "Glacier"

Điều này hoạt động tốt, nhưng tôi đã quyết định cho mục đích dễ dàng hơn khi bật Phiên bản trên thùng của tôi. Điều này đảm bảo rằng nếu một đối tượng vô tình bị xóa hoặc cập nhật, nó có thể được phục hồi. Hạn chế của phương pháp này là quá trình khôi phục toàn bộ nhánh hoặc cây con có thể tốn thời gian. Nhưng nó dễ dàng hơn, hiệu quả chi phí hơn và đủ để bảo vệ nội dung của thùng khỏi bị phá hủy vĩnh viễn.

Hy vọng rằng sẽ giúp ai đó ở dưới đường.

+1

Phiên bản có bảo vệ việc vô tình xóa toàn bộ "thư mục" bằng giao diện người dùng của Bảng điều khiển quản lý AWS không? Tôi đã thử xóa một thư mục trong một nhóm đã được phiên bản và tôi không thấy bất kỳ cách nào để khôi phục thư mục đó. – Turar