- Glance là Image services của Openstack . Dịch vụ này cung cấp các virtual image cho các máy ảo để bootable và để quản lý volume snapshot.
- Các volume snapshot có thể sử dụng để backup hoặc làm template cho máy ảo mới.
- Glance được thiết kế để có thể là dịch vụ hoạt động độc lập cho sự cần thiết các tổ chức lớn lưu trữ và quản lý các disk image ảo.
- Glance cung cấp RESTful API cho phép truy cập VM image metadata.
Glance bao gồm các thành phần sau :
- openstack-glance-api : Xử lý yêu cầu và iamge . Sử dụng registry để lấy thông tin image
- openstack-glance-registry : quản lý , lưu trữ, xử lý các metadata mỗi image
- database : lưu trũ các metadata của các images
- mabbitmq-server : cung cấp hàng chờ AMQP. RabbitMQ (cũng được sử dụng bởi các dịch vụ khác), làm việc với các openstack service khác bao gồm xếp hàng, phân phối, bảo mật, quản lý, phân cụm và liên kết.
-
Glance có kiến trúc client-server và cung cấp REST API thông qua đó yêu cầu tới server được thực hiện.
-
Yêu cầu từ client được tiếp nhận thông qua REST API và đợi sự xác thực của Keystone. Keystone Domain controller quản lý tất cả các tác vụ vận hành bên trong. Các tác vụ này chia thành các lớp, mỗi lớp triển khai nhiệm vụ vụ riêng của chúng.
-
Glance store driver là lớp giao tiếp giữa glane và các hệ thống backend bên ngoài hoặc hệ thống tệp tin cục bộ, cung cấp giao diện chung để truy cập. Glance sử dụng SQL Database làm điểm truy cập cho các thành phần khác trong hệ thống.
-
Glance tiếp nhận các API request yêu cầu images từ người dùng cuối hoặc các nova component và costheer lưu trữ các file images trong hệ thống object storage Swift hoặc các storage repos khác.
-
Glance hỗ trợ các hệ thống backend lưu trữ sau:
-
File system: Glance lưu trữ images của các máy ảo trong hệ thống tệp tin thông thường theo mặc định, hỗ trợ đọc ghi các image files dễ dàng vào hệ thống tệp tin
-
Object Storage:
-
Là hệ thống lưu trữ do OpenStack Swift cung cấp - dịch vụ lưu trữ có tính sẵn sàng cao , lưu trữ các image dưới dạng các object.
-
BlockStorage Hệ thống lưu trữ có tính sẵn sàng cao do OpenStack Cinder cung cấp, lưu trữ các image dưới dạng khối
-
-
VMWare
-
Amazon S3
-
HTTP: Glance có thể đọc các images của các máy ảo sẵn sàng trên Internet thông qua HTTP. Hệ thống lưu trữ này chỉ cho phép đọc.
-
RADOS Block Device(RBD) : Lưu trữ các images trong cụm lưu trữ Ceph sử dụng giao diện RBD của Ceph
-
Sheepdog: Hệ thống lưu trữ phân tán dành cho QEMU/KVM
-
GridFS: Lưu trữ các image sử dụng MongoDB
-
Khi upload một image lên Glance, ta cần xác định định dạng của image máy ảo VM. Glance hỗ trợ nhiều loại định dạng đĩa (iamge format) và định dạng container (Container format).
Disk Format bao gồm :
-
aki :An Amazon kernel image.
-
ami :An Amazon machine image.
-
ari : An Amazon ramdisk image.
-
iso : An archive format for the data contents of an optical disc, such as CD-ROM.
-
qcow2 : Supported by the QEMU emulator that can expand dynamically and supports Copy on Write.
-
raw : An unstructured disk image format; if you have a file without an extension it is possibly a raw format.
-
vdi : Supported by VirtualBox virtual machine monitor and the QEMU emulator.
-
vhd : The VHD disk format, a common disk format used by virtual machine monitors from VMware, Xen, Microsoft, VirtualBox, and others.
-
vhdx : The VHDX disk format, an enhanced version of the VHD format, which supports larger disk sizes among other features.
-
vmdk : Vmware
Container format bao gồm :
-
aki : An Amazon kernel image.
-
ami :An Amazon machine image.
-
ari : An Amazon ramdisk image.
-
bare: The image does not have a container or metadata envelope.
-
docker: A docker container format.
-
ova :An OVF package in a tarfile.
-
ovf : The OVF container format.
Luồng trạng thái của Glance cho biết trạng thái của image trong quá trình tải lên. Khi tạo một image, bước đầu tiên là queing, image được đưa vào hàng đợi trong một khoảng thời gian ngắn, được bảo vệ và sẵn sàng để tải lên. Sau khi queuing, image chuyển sang trạng thái saving nghĩa là quá trình tải lên chưa hoàn thành. Một khi image được tải lên hoàn toàn, trạng thái image chuyển sang Active. Khi quá trình tải lên thất bại nó sẽ chuyển sang trạng thái bị hủy hoặc bị xóa. Ta có thể deactive và reactive các image đã upload thành công bằng cách sử dụng command. Luồng trạng thái của flow được mô tả theo hình sau:
Các trạng thái của image:
- queued
Định danh của image được bảo vệ trong Glance registry. Không có dữ liệu nào của image được tải lên Glance và kích thước của image không được thiết lập rõ ràng sẽ được thiết lập về zero khi khởi tạo.
-
saving Trạng thái này biểu thị rằng dữ liệu thô của image đang upload lên Glance. Khi image được đăng ký với lời gọi POST /images và có một header đại diện x-image-meta-location, image đó sẽ không bao giờ được đưa và trạng thái "saving" (bởi vì dữ liệu của image đã có sẵn ở một nơi nào đó)
-
active
Biểu thị rằng một image đã sẵn sàng trong Glance. Trạng thái này được thiết lập khi dữ liệu của image được tải lên hoàn toàn.
- deactivated
Trạng thái biểu thị việc không được phép truy cập vào dữ liệu của image với tài khoản không phải admin. Khi image ở trạng thái này, ta không thể tải xuống cũng như export hay clone image.
- killed
Trạng thái biểu thị rằng có vấn đề xảy ra trong quá trình tải dữ liệu của image lên và image đó không thể đọc được
- deleted
Trạng thái này biểu thị việc Glance vẫn giữ thông tin về image nhưng nó không còn sẵn sàng để sử dụng nữa. Image ở trạng thái này sẽ tự động bị gỡ bỏ vào ngày hôm sau.
- pending_delete: Tương tự như trạng thái deleted, tuy nhiên Glance chưa gỡ bỏ dữ liệu của image ngay. Một image khi đã rơi vào trạng thái này sẽ không có khả năng khôi phục.
- https://github.com/hocchudong/thuctap012017/blob/master/TamNT/Openstack/Glance/docs/1.Tim_hieu_Glance_trong_Openstack.md#
- https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/6/html-single/Component_Overview/index.html#section-image
- https://docs.openstack.org/image-guide/image-formats.html