viet stack 2nd meetup - virtualization & nova in openstack
TRANSCRIPT
ẢO HÓA TRONG OPENSTACK
NỘI DUNG
1. KHÁI NIỆM VỀ ẢO HÓA
2. GIỚI THIỆU VỀ KVM
3. OPENSTACK COMPUTE
4. DEMO & TRAO ĐỔI
2
ẢO HÓA TRONG OPENSTACK
1.KHÁI NIỆM VỀ ẢO HÓA
• Type 1: VMWare ESXi, Microsoft Hyper-V, Xen Server
• Type 2: VMWare WorkStation, Oracle Virtual Box, Microsoft Virtual PC,…
Hardware
Bare-metal Hypervisor
VM OS/APP
VM OS/APP
TYPE I
Hardware
Hypervisor
Operating System
TYPE II
VM OS/APP
VM OS/APP
3
ẢO HÓA TRONG OPENSTACK
1.KHÁI NIỆM VỀ ẢO HÓA
Các dạng ảo hóa:
• Full virtualization
• Paravirtualization
• Hardware-assisted virtualization
Nguồn: http://www.slideshare.net/Rishikese/seminar-on-virtualization-and-cloud-computing
4
FULL PARA- HARDWARE-ASSISTED
ẢO HÓA TRONG OPENSTACK
2.GIỚI THIỆU KVM
KVM là gì?
• Ra đời năm 2008 bởi công ty Qumranet tại Israel
• Red Hat đã mua lại Qumranet năm 2008
• Kernel-based Virtual Machine là giải pháp ảo hóa dạng full
virtualization
• Hỗ trợ native virtualization (Intel-VT hay AMD-V)
• Đã được tích hợp sẵn trong Linux kernel từ 2.6.20
5
Nguồn: http://www.linux-kvm.org/page/Main_Page
ẢO HÓA TRONG OPENSTACK
2.GIỚI THIỆU KVM
Tại sao lại chọn KVM?
• KVM là OpenSource
• Cung cấp máy ảo mà không cần phải tinh chỉnh lại các images
của OS
• Hỗ trợ nhiều loại OS
• Tận dụng cơ chế quản lý vùng nhớ của Linux (KSM)
• Tận dụng các cơ chế bảo mật sẵn có của Linux (SELinux)
• Hỗ trợ nhiều loại phần cứng
6
ẢO HÓA TRONG OPENSTACK
2.GIỚI THIỆU KVM
Kiến trúc của KVM• Linux Kernel
• QEMU
• KVM
LINUX KERNEL
User Process
KVM Driver
User Process
Guest Mode
QEMU I/O
Guest Mode
QEMU I/O
7
Tham khảo: http://www.innervoice.in/blogs/2014/03/10/kvm-and-qemu/
HARDWARE
ẢO HÓA TRONG OPENSTACK
2.GIỚI THIỆU KVM
8
Virtio-net Virtio-blk Virtio-pci Virtio-balloon Virtio-console
Virtio frontend
Transport
Virtio backend
VirtIO
ẢO HÓA TRONG OPENSTACK
2.GIỚI THIỆU KVM
9
VirtIO
LINUX KERNEL
Guest Mode
QEMU
pNIC
TAP
Virtio front-end
Virtio back-end
Bridge
LINUX KERNEL
Guest Mode
QEMU
pNIC
TAP
Virtio front-end
Bridge
Vhost_net
Vhost-NETVirtIO-NET
ẢO HÓA TRONG OPENSTACK
3.OPENSTACK COMPUTE
Chức năng chính:• Làm việc với các Hypervisor (KVM, QEMU, Vmware, Hyper-V …).
• Quản lý các máy ảo (Instance <=>Virtual Machine).
• Tạo, sửa, xóa các máy ảo thông qua API.
Các thành phần bên trong:• Nova-compute
• Nova-api (port 8773, 8744)
• Nova-scheduler
• Nova database
• Nova-console, nova-consoleauth
• Queue
• Nova-cert
• Nova-conductor
10
Nova
ẢO HÓA TRONG OPENSTACK
Nova
Nova-api
NovaDatabase
Client
Nova-conductorNova-compute
GLANCE
NEUTRON
CINDER Hypervisor
3.OPENSTACK COMPUTE
Nova-scheduler
Queue
11
Tài liệu: http://docs.openstack.org/training-guides/content/
ẢO HÓA TRONG OPENSTACK
Định nghĩa
• Libvirt là một nhóm các công cụ cung cấp một cách thức quản lý các máy ảo và các tính năng ảo
hóa khác như network interface hay storage
• Mục đích của libvirt là đưa ra một phương thức đơn giản, quản lý tập trung các hypervisor
• Các Hypervisor hỗ trợ: KVM, Xen, VMWare ESX, Hyper-V,…
Libvirt
3.OPENSTACK COMPUTE
Các thành phần
• API: Phương thức để kết nối tới các hypervisor
• Libvritd: daemon chạy trên các host để quản lý các máy ảo của hypervisor
• Virsh: cung cấp một giao diện dòng lệnh cho người dùng
12
ẢO HÓA TRONG OPENSTACK
libvirt(libvirt daemon)
(libvirt api)
virt-manager virsh virt-install OpenStack
User-space ManagementLibvirt
3.OPENSTACK COMPUTE
KVM VMWare Hyper-VXEN
13
Tham khảo: http://en.wikipedia.org/wiki/Libvirt
ẢO HÓA TRONG OPENSTACK
4.DEMO & TRAO ĐỔI
14