e. Các thuộc tính của điện toán đám mây
2.3.10. Khối lưu trữ (Cinder)
Khối lưu trữ là một yêu cầu cơ bản đối với cơ sở hạ tầng ảo. Đó là nền tảng để lưu trữ máy ảo và dữ liệu được sử dụng bởi các máy. Trước khi được hỗ trợ vùng lưu trữ, máy ảo Openstack sử dụng cái gọi là lưu trữ tạm thời, có nghĩa là dữ liệu của các máy ảo bị mất khi mà máy ảo bị tắt.
Hình 2.13 đưa ra các cấu trúc của Cinder, thành phần Openstack cung cấp truy cập và quản lý, lưu trữ khối dữ liệu. Với máy chủ của Openstack, lưu trữ được biết đến như một khối thiết bị có sử dụng iSCSI (internet Small Computer System Interface), Fibre Channel , NFS (Network File System) hoặc một loạt các giao thức sở hữu khác để kết nối đầu cuối.
Giao diện Cinder cung cấp một số chức năng riêng biệt, bao gồm các chức năng cơ bản như tạo ra vùng chứa, xóa vùng chứa và các kết nối của chúng. Ngoài ra còn có các chức năng cao cấp hơn giúp cho việc có thể mở rộng vùng chứa, lưu trạng thái dữ liệu, nhân bản và tạo ra vùng chứa từ một đĩa ảo.
Nhiều nhà cung cấp mảng lưu trữ hiện nay hỗ trợ thiết bị khối Cinder. Họ bao gồm EMC, Hitachi Data Systems, HP, IBM và NetApp. Ngoài ra còn có sự hỗ trợ đáng kể cho Cinder từ phần khởi động, bao gồm cả SolidFire, Nexenta, Pure Storage và Zadara Storage. Hầu hết các nhà cung cấp hỗ trợ cho iSCSI, bao gồm Fibre Channel và kết nối NFS.
42
Triển khai Openstack thường được xây dựng xung quanh các cấu hình máy chủ quy mô lớn, vì vậy Fibre Channel không phải là lựa chọn tốt nhất của giao thức. Nó có thể sẽ tốn kém và phức tạp khi triển khai do chi phí phần cứng và các vấn đề về nhân rộng Fibre Channel trên số lượng lớn các nút lưu trữ.
Hình 2.13 Sơ đồ khối khối lưu trữ.
Việc hỗ trợ cho NFS đã được giới thiệu từ khi phát hành bản Grizzly của Openstack. Khối lượng máy ảo trong lưu trữ NFS có thể xem như các tập tin cá nhân hoặc theo một cách tương tự để thực hiện lưu trữ NFS trên VMware hay VHD trên Hyper-V.
Bằng cách lưu trữ các đĩa ảo như các tập tin, hệ thống có thể thực hiện các quá trình lưu trạng thái dữ liệu hoặc các chức năng khác giống như với các tập tin, có thể sử dụng điều này như một cách để thực hiện các chức năng sao lưu.
Một số nhà cung cấp hỗ trợ phát triển Cinder sử dụng các giao thức riêng của họ, ví dụ Scality và Coraid. Ngoài ra còn có các giải pháp lưu trữ mã nguồn mở từ Ceph và GlusterFS cung cấp, hỗ trợ Cinder nào sử dụng các thiết bị Ceph RADOS Block (RBD) và giao thức GlusterFS tương ứng.
43
Việc thực hiện Ceph rất thú vị bởi vì nó sử dụng mã số đã được tích hợp vào Linux kernel, làm cho quá trình cấu hình và hỗ trợ dễ dàng hơn. Ceph cũng có thể được sử dụng như là một đối tượng cho Glance.