Tổng quan về OpenStack

Tổng quan về OpenStack

OpenStack là một phần mềm mã nguồn mở, dùng để triển khai Cloud Computing, bao gồm private cloud và public cloud (nhiều tài liệu giới thiệu là Cloud Operating System). Open source software for building private and public clouds

Tên các phiên bản được bắt đầu theo thứ tự A, B, C, D …trong bảng chữ cái.

Thành Phần Cơ Bản OpenStack

  • OpenStack compute (code-name Nova): là module quản lý và cung cấp máy ảo. Tên phát triển của nó Nova. Nó hỗ trợ nhiều hypervisors gồm KVM, QEMU, LXC, XenServer… Compute là một công cụ mạnh mẽ mà có thể điều khiển toàn bộ các công việc: networking, CPU, storage, memory, tạo, điều khiển và xóa bỏ máy ảo, security, access control. Bạn có thể điều khiển tất cả bằng lệnh hoặc từ giao diện dashboard trên web.
  • OpenStack Glance (code-name Glance): là OpenStack Image Service, quản lý các disk image ảo. Glance hỗ trợ các ảnh Raw, Hyper-V (VHD), VirtualBox (VDI), Qemu (qcow2) và VMWare (VMDK, OVF). Bạn có thể thực hiện: cập nhật thêm các virtual disk images, cấu hình các public và private image và điều khiển việc truy cập vào chúng, và tất nhiên là có thể tạo và xóa chúng
  • OpenStack Object Storage (code-name Swift): dùng để quản lý lưu trữ. Nó là một hệ thống lưu trữ phân tán cho quản lý tất cả các dạng của lưu trữ như: archives, user data, virtual machine image … Có nhiều lớp redundancy và sự nhân bản được thực hiện tự động, do đó khi có node bị lỗi thì cũng không làm mất dữ liệu, và việc phục hồi được thực hiện tự động.
  • Identity Server(code-name Keystone): quản lý xác thực cho user và projects.
  • OpenStack Netwok (code-name Neutron): là thành phần quản lý network cho các máy ảo. Cung cấp chức năng network as a service. Đây là hệ thống có các tính chất pluggable, scalable và API-driven.
  • OpenStack dashboard (code-name Horizon): cung cấp cho người quản trị cũng như người dùng giao diện đồ họa để truy cập, cung cấp và tự động tài nguyên cloud. Việc thiết kế có thể mở rộng giúp dễ dàng thêm vào các sản phẩm cũng như dịch vụ ngoài như billing, monitoring và các công cụ giám sát khác.

Ý Nghĩa Project:

Dashboard (Horizon):

  • Ứng dụng web chạy nên apache
  • Cung cấp giao diên cho Administrator quản trị dịch vụ OpenStack
  • Tương thích với EC2 API của amazon

Compute (Nova)

  • Thành phần quản lý máy ảo (Virtual Compute Instance)
  • Tương thích EC2 Amazone
  • Gọi bằng OpenStack API hoặc EC2 API
  • Hỗ trợ nhiều công nghệ ảo hóa: Xen, KVM, QEMU, vSphere, Hyper-V

Image Service (Glance)

  • Dịch vụ lưu trữ trên ổ đĩa ảo (Virtual Disk Image – VDI)
  • Hỗ trợ nhiều định dạng
  • 3 tính năng chính:
    • Quản trị template có sẵn, cho phép tạo image nhanh chóng
    • Tạo VM từ VDI có sẵn
    • Lưu VM nhanh = tính năng snapshots

Networking (Neutron)

  • Cung cấp dịch vụ mạng (Network as a service) cho các thành phần OpenStack
  • Sử dụng kiến trúc “plug-in”: Các plug-in được thực thi trên nhiều kiến trúc khác nhau (NVP, Open vSwitch, Linux bridge, Cisco)
  • Cho phép tùy biến, mở rộng
  • Cho phép tạo private network
  • Có các tính năng tạo vSwitch, Firewall, DHCP, VPN, Load balancing

Storage (Swift)

  • Cung cấp dịch vụ lưu trữ giống S3 Amazon
  • Có khả năng mở rộng, lưu trữ phân tán, có backup
  • Tương thích S3 API

Storage (Cinder)

  • Cung cấp Thiết bị lưu trữ ảo cho VM OpenStack
  • Tương tự dịch vụ EBS Amazon
  • Có khả năng mở rộng phân tán

Phân Biệt Swift, Image, Cinder

  • Cinder cung cấp block storage, từ đó có thể mount các volume tới các thực thi (VM)
  • Glance cung cấp dịch vụ cho lưu trữ, tìm lại các OS image
  • Swift cung cấp object storage (lưu trữ dạng đối tượng).

Nguồn tìm hiểu thêm

https://docs.openstack.org/project-deploy-guide/openstack-ansible/newton/overview-storage-arch.html

Identity Service (Keystone)

  • Dịch vụ xác thực người dùng
  • Hỗ trợ nhiều kiểu xác thực
  • Phần quyền dựa trên tính năng role-base access control (RBAC)

Telemetry Service (Ceilometer)

  • Dịch vụ giám sát thông kê
  • Thu thập thông tin về quá trình sử dụng để tính toán hóa đơn, xác định mức độ sử dụng hệ thống

Orchestration Service (Heat)

  • Cung cấp các template cho ứng dụng phổ biến
  • Template cung cấp các thành phần compute, storage, networking đáp ứng các ứng dụng
  • Kết hợp với Ceilometer để tính toán tài nguyên sử dụng hợp lý
  • Tương thích AWS CloudFormation APIs.