Hiện tại chúng tôi đang sử dụng nhiều máy chủ web truy cập vào một máy chủ và máy chủ tệp mysql. Nhìn vào di chuyển đến đám mây, tôi có thể sử dụng cùng một thiết lập này và đính kèm EBS vào nhiều trường hợp máy hay giải pháp khác không?Bạn có thể đính kèm Amazon EBS vào nhiều phiên bản không?
Trả lời
Tôi khá chắc chắn bạn không thể, nhưng bạn có thể sao chép một EBS và đính kèm nó vào một thể hiện khác.
này rất hữu ích cho các tập dữ liệu cố định, hoặc để thử nghiệm trên dữ liệu 'thực tế' nhưng không cho phép hơn 1 ví dụ để hoạt động trên một cửa hàng khối đơn
Không, điều này giống như sử dụng một ổ đĩa cứng trong hai máy tính.
Nếu bạn muốn chia sẻ dữ liệu, bạn có thể thiết lập máy chủ mà tất cả các phiên bản của bạn có thể truy cập. Nếu bạn muốn một vùng lưu trữ đơn giản cho tất cả các cá thể của mình, bạn có thể sử dụng dịch vụ lưu trữ S3 của Amazon để lưu trữ dữ liệu được phân phối và có thể mở rộng.
Di chuyển sang đám mây, bạn có thể có cùng một thiết lập, nhưng bạn có thể thay thế máy chủ tệp bằng S3 hoặc có tất cả các phiên bản của bạn kết nối với máy chủ tệp của bạn.
Bạn có nhiều tùy chọn, nhưng việc chia sẻ ổ cứng giữa các phiên bản có thể không phải là tùy chọn tốt nhất.
Không, theo tài liệu EBS: "Một tập chỉ có thể được đính kèm vào một trường hợp tại một thời điểm".
Hiện tại bạn đang sử dụng bộ nhớ chia sẻ như thế nào? Nếu nó chỉ dành cho việc phân phát các tệp từ máy chủ tệp, bạn có cân nhắc thiết lập một hệ thống để bạn có thể ủy quyền một số yêu cầu nhất định cho một tiến trình trên máy chủ tệp thay vì có máy chủ web phân phát các tệp đó không?
Đây là liên kết cho báo giá đó: https://aws.amazon.com/articles/1667. Xem Câu hỏi thường gặp ở cuối bài viết.Làm cho tôi tự hỏi tại sao 'aws ec2 mô tả-khối lượng' trả về một mảng * của tập tin đính kèm. –
CẬP NHẬT (tháng 4 năm 2015): Đối với trường hợp sử dụng này, bạn nên bắt đầu xem Amazon Elastic File System (EFS) mới, được thiết kế để nhân với chính xác theo cách bạn muốn. Sự khác biệt chính giữa EFS và EBS là chúng cung cấp các trừu tượng khác nhau: EFS cho thấy giao thức NFSv4, trong khi EBS cung cấp truy cập IO khối thô.
Dưới đây bạn sẽ tìm thấy lời giải thích ban đầu của tôi là tại sao không thể gắn kết một thiết bị chặn thô trên nhiều máy một cách an toàn.
POST ORIGINAL (2011):
Thậm chí nếu bạn đã có thể để có được một khối lượng EBS gắn liền với nhiều hơn một ví dụ, nó sẽ là một _REALLY_BAD_IDEA_. Để báo giá Kekoa, "điều này giống như sử dụng ổ đĩa cứng trong hai máy tính cùng một lúc"
Tại sao đây là một ý tưởng tồi? ... Lý do bạn không thể đính kèm một ổ đĩa vào nhiều hơn một cá thể là EBS cung cấp trừu tượng "chặn lưu trữ" khi khách hàng chạy hệ thống tệp như ext2/ext3/etc. Hầu hết các hệ thống tập tin này (ví dụ, ext2/3, FAT, NTFS, vv) được viết giả định rằng chúng có quyền truy cập độc quyền vào thiết bị khối. Hai trường hợp truy cập cùng một hệ thống tập tin sẽ gần như chắc chắn kết thúc trong nước mắt và dữ liệu tham nhũng.
Nói cách khác, lắp ghép đôi khối lượng EBS sẽ chỉ hoạt động nếu bạn đang chạy hệ thống tệp cụm được thiết kế để chia sẻ thiết bị chặn giữa nhiều máy. Hơn nữa, ngay cả điều này cũng không đủ. EBS sẽ cần phải được kiểm tra cho kịch bản này và để đảm bảo rằng nó cung cấp sự đảm bảo nhất quán giống như các giải pháp thiết bị khối chia sẻ khác ...tức là, các khối đó không được lưu trữ ở các mức không chia sẻ trung gian như hạt nhân Dom0, lớp Xen và hạt nhân DomU. Và sau đó có những cân nhắc về hiệu suất của việc đồng bộ hóa các khối giữa nhiều máy khách - hầu hết các hệ thống tập tin được nhóm lại được thiết kế để hoạt động trên các SAN chuyên dụng tốc độ cao, không phải là một ethernet hàng hóa có hiệu quả cao nhất. Nghe có vẻ rất đơn giản, nhưng những gì bạn đang yêu cầu là một điều rất phi thường.
Hoặc, xem liệu kịch bản chia sẻ dữ liệu của bạn có thể là NFS, SMB/CIFS, SimpleDB hoặc S3 không. Tất cả các giải pháp này đều sử dụng các giao thức lớp cao hơn nhằm chia sẻ tệp mà không có hệ thống phụ thiết bị khối chia sẻ. Nhiều lần giải pháp như vậy thực sự hiệu quả hơn.
Trong trường hợp của bạn, bạn vẫn có thể có một cá thể MySql/máy chủ tệp được truy cập bởi nhiều giao diện người dùng web. Sau đó, máy chủ tệp đó có thể lưu trữ dữ liệu của nó trên ổ đĩa EBS, cho phép bạn thực hiện sao lưu ảnh chụp nhanh hàng đêm. Nếu cá thể đang chạy fileserver bị mất, bạn có thể tách khối lượng EBS và gắn lại nó vào một cá thể máy chủ tệp mới và sao lưu và chạy trong vài phút.
"Có bất kỳ thứ gì giống như S3 làm hệ thống tệp không?" - có và không. Có, có các giải pháp của bên thứ 3 như s3fs hoạt động "ok", nhưng dưới mui xe, họ vẫn phải thực hiện các cuộc gọi dịch vụ web tương đối đắt tiền cho mỗi lần đọc/ghi. Đối với một thư mục công cụ chia sẻ, hoạt động tuyệt vời. Đối với loại sử dụng FS nhóm bạn thấy trong thế giới HPC, không phải là một cơ hội. Để làm tốt hơn, bạn cần một dịch vụ mới cung cấp giao thức định hướng kết nối nhị phân, như NFS. Cung cấp một hệ thống tập tin đa gắn kết như vậy với hiệu năng và hành vi hợp lý sẽ là một add-on tính năng tuyệt vời cho EC2. Tôi từ lâu đã là một người ủng hộ cho Amazon để xây dựng một cái gì đó như thế.
Vấn đề với NFS (và cách tiếp cận tương tự SMB) là một máy sẽ hoạt động như một máy chủ (mà hệ thống tập tin sẽ được gắn kết vật lý). Máy đó đi xuống sẽ gây ra âm lượng EBS (hoặc đĩa bị hỏng). Có bất kỳ thứ gì như S3 dưới dạng hệ thống tệp không ?. – sheki
Chỉ để làm rõ - Nếu một khối lượng EBS được gắn vào một cá thể và cá thể chết thảm khốc, khối lượng EBS sẽ ổn. Nó sẽ chỉ "đi xuống" theo nghĩa là để truy cập nó, bạn sẽ cần phải tách nó ra khỏi thể hiện xuống và gắn lại nó vào một cá thể mới. –
"... gần như chắc chắn sẽ kết thúc trong nước mắt và dữ liệu tham nhũng." Cổ điển. @DaveDopson – Beachhouse
Có gì đó trong thế giới CNTT gọi là Clustered Filesystem, Redhat GFS, Oracle OCFS2, Veritas CFS ...
kiểm tra nhận xét cho câu trả lời của ddopson – sheki
@sheki Tôi nghĩ rằng nhận xét của bạn về câu trả lời của ddopson là hoàn toàn không liên quan đến các hệ thống tệp được nhóm. Hệ thống tập tin được nhóm được thiết kế để đồng thời được gắn kết bởi nhiều máy chủ. Toàn bộ điểm của một clusteredfs là để tránh những điểm duy nhất của thất bại. – Ryan
Tại sao sẽ không tạo ra một trường hợp với khối lượng và sshfs khối lượng rằng trong những trường hợp khác?
Nhiều máy chủ web truy cập máy chủ MySQL & Máy chủ tệp là bình thường trong AWS. Một số phương pháp hay nhất để tuân theo cấu trúc được đề cập ở trên là:
Điểm 1) MySQL trên EC2 có thể được thiết lập làm Master-Slave ở chế độ đồng bộ hóa/bán đồng bộ trong AWS. EBS-OPT + PIOPS trong RAID 0 được khuyến nghị cho hiệu suất Cao DB
Điểm 2) Hoặc bạn có thể sử dụng chế độ Amazon RDS + Multi-AZ. Để mở rộng quy mô đọc Nhiều RDS Read Replica có thể được gắn vào MySQL RDS.
Điểm 3) Không thể đính kèm âm lượng EBS vào đồng thời nhiều EC2. Bạn có thể tạo Máy chủ tệp dựa trên GlusterFS trên Amazon EC2 bằng EBS. Nhiều máy chủ Web có thể nói chuyện với GlusterFS đơn đồng thời trên AWS infra.
Điểm 4) Trong trường hợp ứng dụng của bạn có thể được tích hợp với S3 dưới dạng lưu trữ tệp, thì nó được ưu tiên vì tính ổn định mà nó mang lại cho kiến trúc. Bạn cũng có thể truy cập S3 bằng cách sử dụng các công cụ như S3fuse cũng từ ứng dụng của bạn.
Bạn hoàn toàn có thể sử dụng một ổ đĩa trên nhiều máy chủ trong AWS. Tôi sử dụng sshfs để gắn kết một ổ đĩa ngoài và chia sẻ nó với nhiều máy chủ trong EC2.
Lý do tôi cần kết nối một ổ đĩa với nhiều máy chủ là có một nơi để đặt tất cả các bản sao lưu của mình trước khi kéo chúng xuống cục bộ.
Điều gì về chỉ đọc/đọc? – alexus