Tại thời điểm nào thì EBS sử dụng nút cổ chai?


10

Tôi đã có một trang web được lưu trữ trên Amazon bằng cách sử dụng phiên bản EC2 được hỗ trợ bởi âm lượng EBS. Vào cuối tuần, lưu lượng truy cập tăng đột biến và tôi làm cho cá thể lớn hơn, điều này giúp ích khá nhiều - tôi không còn thấy việc sử dụng CPU tăng vọt lên 100% và máy chủ trở nên không phản hồi.

Tuy nhiên, tôi nhận thấy rằng số lần đọc đĩa cũng rất cao (không thể giúp được, tôi không nghĩ vậy) và tôi tự hỏi, tại thời điểm nào tôi sẽ thấy một số lỗi vì đĩa không thể giữ lên?

Như bạn có thể thấy từ ảnh chụp màn hình đính kèm, nó đạt tối đa 80MB / phút vào cuối tuần. Có ai có kinh nghiệm với AWS không và biết tại thời điểm nào tôi sẽ phải chuyển sang các trường hợp cân bằng nhiều tải vì EBS trở thành nút cổ chai?

Biểu đồ sử dụng EBS


2
Tôi nghĩ rằng chúng ta cần một số chi tiết lớp ứng dụng ở đây. Hoạt động đọc đĩa là gì? Truy cập ngẫu nhiên cho hình ảnh / tài sản? Đọc tuần tự lớn (ví dụ: sao lưu cơ sở dữ liệu hoặc phân tích)? Lưu ý rằng bạn có thể chạy nhiều khối EBS được gắn vào một phiên bản duy nhất làm phần mềm RAID-0 để cải thiện mọi thứ.
rmalayter

hầu hết các lần đọc là các tệp nhỏ hơn (ít hơn 1MB, nhiều hơn 500 nghìn) nhưng không phải là các tệp "nhỏ". Tôi không biết liệu đây có phải là tải cho khối lượng EBS hay không nếu lượng lưu lượng này là không đáng kể - và không biết làm thế nào để tìm ra nó.
ESW

Tôi vừa mới viết một bài trả lời có RAID và EBS khi tôi đọc bình luận của bạn, Malayter. Tôi muốn thêm rằng RAID10 có thể là một giải pháp linh hoạt hơn, vì nó sẽ cải thiện việc đọc VÀ ghi.
tsykoduk

@tsykoduk Nói chung, tất cả các loại lưu trữ AWS đều có hiệu năng không rõ ràng và mặc dù có vẻ như RAID10 có thể cải thiện hiệu năng, nhưng thực sự tốt hơn để thử điểm chuẩn với loại mẫu truy cập và tải mà ứng dụng thực của bạn có thể gặp phải . Thậm chí sau đó hiệu suất của bạn có thể thay đổi rất nhiều lần trong môi trường AWS so với giải pháp tự lưu trữ nơi bạn có nhiều quyền kiểm soát hơn - và do đó có thể dự đoán được nhiều hơn - về hiệu suất lưu trữ. Nói chung, có nhiều hơn một âm lượng trong cấu hình RAID có thể có tác động tích cực.
aculich

Câu trả lời:


5

Điều đầu tiên cần ghi nhớ sẽ có ảnh hưởng lớn nhất đến hiệu suất I / O của bạn là loại thể hiện mà bạn đang sử dụng.

Instance Type   I/O Performance
-------------   ---------------
t1.micro        Low
m1.small        Moderate
m2.xlarge       Moderate
c1.medium       Moderate
m1.large        High
m1.xlarge       High
m2.2xlarge      High
m2.4xlarge      High
c1.xlarge       High
cc1.4xlarge     Very High (10 Gigabit Ethernet)
cc2.8xlarge     Very High (10 Gigabit Ethernet)
cg1.4xlarge     Very High (10 Gigabit Ethernet)

Đối với khối lượng EBS và hiệu suất mà bạn sẽ nhận được, như Câu hỏi thường gặp về AWS , bạn sẽ cần phải đánh giá ứng dụng của mình để xem những gì mong đợi:

H: Tôi có thể thấy loại độ trễ và thông lượng nào từ khối lượng EBS của Amazon? Độ trễ từ phiên bản Amazon EC2 đến khối lượng Amazon EBS tương tự như độ trễ bạn sẽ thấy từ ổ lưu trữ đối tượng Amazon EC2 cục bộ. Tỷ lệ I / O có thể thay đổi đáng kể dựa trên kích thước của các yêu cầu, tính ngẫu nhiên của các mẫu truy cập và chiến lược lưu trữ được sử dụng bởi ứng dụng. Như vậy, biện pháp chính xác nhất là đánh giá ứng dụng cụ thể của bạn trên khối lượng Amazon EBS.

Điều này có nghĩa là tỷ lệ EBS mà bạn nhận được nhiều không nhất thiết phải tệ hơn hoặc tốt hơn so với lưu trữ cá thể cục bộ; nó thực sự phụ thuộc vào hành vi truy cập dữ liệu của bạn.

Thông tin thêm có trên trang AWS EBS :

Hiệu suất âm lượng của Amazon EBS

Khối lượng Amazon EBS được thiết kế để cung cấp thông lượng cao hơn so với các cửa hàng cá thể Amazon EC2 cho các ứng dụng thực hiện nhiều truy cập ngẫu nhiên trên tập dữ liệu của bạn. Bạn cũng có thể đính kèm nhiều tập vào một thể hiện và sọc trên các tập để đạt được mức tăng hơn nữa về thông lượng.

Hiệu suất chính xác sẽ phụ thuộc vào ứng dụng (ví dụ: I / O ngẫu nhiên hoặc tuần tự lớn hoặc kích thước yêu cầu nhỏ), vì vậy biện pháp tốt nhất là đánh giá các ứng dụng thực của bạn so với âm lượng. Vì khối lượng Amazon EBS yêu cầu truy cập mạng, bạn sẽ thấy hiệu suất thông lượng nhanh hơn và phù hợp hơn với các trường hợp lớn hơn.

Ngoài ra, hãy nhớ rằng hiệu suất I / O không chỉ bao gồm IO của đĩa, mà còn cả lưu lượng mạng ... vì vậy, lưu lượng mạng của bạn càng nhận được ít IO hơn mà bạn sẽ nhận được.

Tùy thuộc vào những gì bạn đang phục vụ, bộ nhớ đệm trong bộ nhớ của các đối tượng có thể giúp ích đáng kể nếu điều đó có thể cho loại ứng dụng của bạn.

Ngoài ra, đây là một số bài đăng trên blog đánh giá hiệu suất của EBS và âm lượng cục bộ (phù du) trong các cấu hình và chỉnh sửa RAID khác nhau để có được hiệu suất IO tốt:

Đĩa phù du EC2 so với khối EBS trong RAID

Hiệu suất I / O của Amazon EC2: Đĩa Ephemeral cục bộ so với RAID 0 Dải EBS

Nhận IO tốt từ EBS của Amazon


2
Trang web này dường như cũng có thông tin tốt: ec2instances.info
Gianfranco P.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.