TỔNG QUAN
TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHĐN
KHOA CÔNG NGHỆ THƠNG TIN
Hệ thống ĐIỆN TỐN ĐÁM MÂY
09/2021
2
TỔNG QUAN
Xu hướng điện toán đám mây
Điện toán đám mây (ĐTĐM) là
Internet đã kết nối tạo
lên 1 mạng lưới thông
tin không lồ cho phép
chia sẻ và kế thừa
… Mơ hình dịch vụ trong đó các tài nguyên như: Cơ sở hạ
tầng – Infrastructure, Nền tảng công nghệ - Platform, Phần
cứng – Hardware, Phần mềm - Software được chuyển giao và
sử dụng theo yêu cầu thơng qua mơi trường internet.
Thay vì mua tài ngun thì khách hàng sẽ thuê và trả phí theo
mức độ sử dụng của mình
Cloud Computing
PC đã làm thay đổi
hiệu quả và năng
suất lao động của
các cá nhân và tổ
chức
Web 2.0
Grid Computing
Email
TCP - IP
Internet
Unix - based Workstations
Personal Computer
ðTðM sẽ làm thay ñổi
kiến trúc IT trong các tổ
chức, cho phép tổ chức
có thể tiếp cận với các hạ
tầng và hệ thống hiện ñại
với chi phí hợp lý
Distributed Client - Server
Super Computer
Main frame
Centralized Computing
Thuật ngữ cloud computing ra đời giữa năm 2007
Điện toán đám mây là cuộc cách mạng lần 3 trong công nghiệp IT
xxx
4
TỔNG QUAN
Đám mây (Cloud) chỉ các server, máy chủ có kết nối
internet, được sử dụng vào mục đích lưu trữ dữ liệu.
Điện toán (Computing) bao gồm các thiết bị mà mọi thao
tác, sử dụng, mục đích của nó đều phụ thuộc vào Đám mây.
TỔNG QUAN
5
Trong mơ hình ĐTĐM, các tài nguyên, thông tin, và software được chia
sẻ và cung cấp cho các máy tính, thiết bị, người dùng dưới dạng dịch vụ
trên nền tảng mạng Internet.
Các users sử dụng dịch vụ như cơ sở dữ liệu, website, lưu trữ, … khơng
cần quan tâm đến vị trí địa lý cũng như các thông tin khác của hệ thống
mạng đám mây - “ĐTĐM trong suốt đối với người dùng”.
Các users truy cập và sử dụng các ứng dụng đám mây thông qua trình
duyệt web, các ứng dụng mobile, hoặc máy tính cá nhân thông thường.
6
Một số khái niệm
Ảo hóa là kỹ thuật tạo ra phần cứng, thiết bị mạng, thiết bị lưu trữ,… ảo
– khơng có thật (cũng có thể là giả lập hoặc mơ phỏng).
Đi kèm với Ảo hóa thường có các cụm từ Hardware Virtualization,
Platform Virtualization: các cụm từ này ám chỉ việc tạo ra các thành
phần phần cứng (ảo) để tạo ra các máy ảo (Virtual Machine), chúng gần
như có đầy đủ các thành phần như máy vật lý (physical machine ) và có
thể cài đặt hệ điều hành (Linux, Windows,….) trong network thì có thể
có các Router ảo và Switch ảo.
Điện toán đám mây (Cloud Computing) theo định nghĩa của IBM là việc
cung cấp các tài nguyên máy tính cho người dùng tùy theo mục đích sử
dụng thơng qua kết nối Internet. Nguồn tài nguyên đó có thể là bất kì
thứ gì liên quan đến điện tốn và máy tính, ví dụ như phần mềm, phần
cứng, hạ tầng mạng cho đến các máy chủ và mạng lưới máy chủ cỡ lớn.
TỔNG QUAN
7
8
Hệ thống tập tin phân tán Hadoop
Data Center
9
10
Điện toán đám mây
05 tính năng của ĐTĐM
Hệ thống ĐTĐM bao gồm:
•
•
•
5 tính năng chính
4 mơ hình triển khai
3 mơ hình dịch vụ.
11
Rapid elasticity: nhà cung cấp CC dễ dàng chỉ định cũng như thu hồi tài
nguyên người dùng nhanh chóng. NSD được phép yêu cầu tài nguyên
“không giới hạn” và trả tiền.
Broad network access: truy cập vào các tài nguyên cloud dễ dàng thông qua
các giao thức mạng (TCP/IP).
Measured service: provider đảm bảo việc tính tốn lượng tiêu dùng của
khách hàng. Mơ hình hướng đến là “pay as you go”.
On-demand self-service: cho phép NSD tùy chỉnh tài nguyên sử dụng mà
không cần phải thông báo hay qua bất kỳ sự can thiệp nào của provider.
Resource pooling: các loại tài nguyên vật lý và ảo của CC được chia sẻ với
nhau và tự động cấp cho các users.
12
04 mơ hình triển khai ĐTĐM
04 mơ hình triển khai ĐTĐM
Mơ hình public cloud: Cung cấp các dịch vụ như tài nguyên, platform,
hay các ứng dụng lưu trữ trên đám mây và public ra bên ngoài. Các dịch
vụ trên public cloud có thể miễn phí hoặc có phí.
1. Mơ hình private cloud: Cung cấp các dịch vụ trong nội bộ và thường là các
dịch vụ kinh doanh, mục đích nhắm đến cung cấp dịch vụ cho một nhóm
người và trong mạng sau firewall.
2. Mơ hình hybrid cloud: là mơi trường đám mây mà kết hợp cung cấp các
dịch vụ công cộng và riêng.
3. Mơ hình community cloud: là mơ hình giữa các nhà cung cấp dịch vụ đám
mây.
13
14
Mơ hình cung cấp dịch vụ ĐTĐM
03 mơ hình cung cấp dịch vụ ĐTĐM
1. IaaS (Infrastructure as a Service): cung
cấp hạ tầng như một service
2. PaaS (Platform as a Service): cung cấp
Platform như một service: Ví dụ Google
App Engine (GAE).
3. SaaS (Software as a Service) cung cấp
software như một service.
16
15
Cloud Computing layers
Cloud computing Services
17
18
Cloud computing Services
03 mơ hình cung cấp dịch vụ ĐTĐM
Các mức dịch vụ trong “đám mây”
19
20
Popularity of Saas
Lợi ích của ĐTĐM
Tiết kiệm chi phí đầu tư: phần cứng, bản quyền phần mềm
Tiết kiệm chi phí vận hành: trả theo mức độ sử dụng, giảm
chi phí hỗ trợ, bảo trì, nhân công IT
Cập nhật thông tin nhanh và hiệu quả hơn
Giảm mức độ phụ thuộc vào đội ngũ IT
Chuẩn hóa và tự động hóa quy trình làm việc
Cập nhật với các nâng cấp mới nhất
Giảm giá thành
Bảo mật và sao lưu
21
22
Lợi ích của ĐTĐM
Tăng sự linh hoạt của hệ thống (Increased Flexibility): khi cần thêm hay
bớt một hay vài thiết bị (storaged devices, servers, computers, …) chỉ cần
mất vài giây.
Sử dụng tài nguyên theo yêu cầu (IT Resources on demand): tùy thuộc vào
nhu cầu của khách hàng mà administrator setup cấu hình hệ thống cung
cấp cho khách hàng.
Lợi ích của ĐTĐM
Tăng khả năng sẵn sàng của hệ thống (Increased availability) : các ứng
dụng và dịch vụ được cân bằng động để đảm bảo tính khả dụng. Khi một
trong các hardware bị hư hỏng không làm ảnh hưởng đến hệ thống, chỉ suy
giảm tài nguyên hệ thống.
Tiết kiệm phần cứng (Hardware saving): mơ hình truyền thống trong nhiều
trường hợp cần một hệ thống riêng biệt cho mỗi tác vụ, dịch vụ. Gây ra lãng
phí.
Cung cấp các dịch vụ với độ sẵn sàng gần như 100% (taking down services
in real time)
Trả theo nhu cầu sử dụng thực tế (Paying-as-you-go IT): mơ hình “Cloud
computing” tích hợp với hệ thống billing để thực hiện việc tính cước dựa
theo dung lượng người dùng đối với các tài nguyên như tốc độ CPU, dung
lượng RAM, dung lượng HDD, …
>> Mơ hình ĐTĐM khắc phục được 2 yếu điểm quan trọng của mơ hình truyền
thống về “khả năng mở rộng (scalability)” và “độ linh hoạt (flexibility)”.
23
24
Tồn tại của ĐTĐM
Tốc độ kết nối Internet: liên quan đến hạ tầng mạng
Quyền riêng tư thông tin NSD?
Đảm bảo an tồn dữ liệu NSD/Cơng ty/Doanh nghiệp trên cloud?
Sự cố trên hệ thống ĐTĐM? Khắc phục sự cố?
Liên kết/trao đổi dữ liệu NSD giữa các hệ thống ĐTĐM
Ứng dụng Cloud Computing
Xây dựng hệ thống tính tốn hiệu suất cao (HPC)
Xây dựng hệ thống xử lý phân tán
Xây dựng giải pháp cân bằng tải trên hệ thống
Xây dựng hệ thống Giám sát tài ngun
Giải pháp An tồn bảo mật thơng tin cho hệ thống
SDN, PCCC
IoT
25
26
Xu hướng điện toán đám mây
Nội dung trao đổi
1. Các phương pháp tiếp cận đa đám mây sẽ phá vỡ rào cản giữa các nhà cung cấp: Các hãng
cung cấp public cloud lớn như – Amazon, Microsoft, Google, vv… đang sử dụng mơ hình
khép kín cho các dịch vụ mà họ cung cấp.
1. Các dịch vụ điện toán đám mây hiện nay?
+ Lưu trữ dữ liệu: One Driver, Google driver, Dropbox, iCloud, Media fire, ….
+ Ứng dụng trên Cloud: Gmail, Google doc, …
2. AI sẽ cải thiện tốc độ và hiệu quả của cloud
2. Các vấn đề của ĐTĐM
3. Các nền tảng dịch vụ dựa trên đám mây (cloud-based-as-a-service) cho phép người dùng
tiếp cận với các chức năng như nhận diện hình ảnh, xử lý ngơn ngữ và cơng cụ đề xuất.
+ Phụ thuộc đường truyền
+ Tính riêng tư, bảo mật
4. Dịch vụ cloud cung cấp thuật toán AI giải quyết các vấn đề thực tiễn: xe tự vận hành, hạ
tầng smart city, kế hoạch ứng phó với đại dịch…
+ Di chuyển dữ liệu giữa các hệ thống CC khác nhau.
3. Tương lai của ĐTĐM (!)
5. Các trò chơi sẽ được cung cấp từ cloud nhiều hơn, giống như âm nhạc và phim ảnh
6. Các giải pháp hybrid và đám mây cục bộ (on-premise cloud)
+ Thay đổi môi trường truyền
7. Làm việc trên Virtual Cloud Desktop
+ Thiết bị đầu cuối?
+ Khả năng xử lý? Lưu trữ?
27
28
ĐTĐM sử dụng công cụ nguồn mở
ĐTĐM sử dụng công cụ nguồn mở
1. Eucalyptus
Eucalyptus là một PMNM Linux-based để triển khai ĐTĐM với cả 2 loại
hình private hay hybrid. Hỗ trợ kết nối với dịch vụ đám mây của Amazon
– AWS (Amazone Web Services TM) thơng qua một giao diện lập trình
chung.
2. OpenNebula
OpenNebula là bộ công cụ nguồn mở sử dụng cho private, public, và
hybrid cloud. OpenNebula hoạt động tương thích với các giải pháp của
Xen, KVM, VMWare, và Virtual Box
3. Nimbus
29
Nimbus là một dự án ĐTĐM của Culumbus để cung cấp dịch vụ IaaS
(Infrastructure as a Service). Nimbus hỗ trợ triển khai 2 loại ảo hóa là Xen
và KVM .
30
ĐTĐM sử dụng công cụ nguồn mở
Một số khái niệm
4. Xen Cloud Platform (XCP)
XCP là một platform nguồn mở cho việc triển khai ảo hóa máy chủ và
ĐTĐM trên nền tảng của Xen Hypervisor, hỗ trợ nhiều Guest OS bao
gồm windows và linux, hệ thống mạng và lưu trữ cũng như các công cụ
quản trị nằm trong XCP appliance.
Virtualization (ảo hóa): là một cơng nghệ được thiết kế để tạo ra tầng trung
gian giữa hệ thống phần cứng máy tính và phần mềm chạy trên nó => Ảo
hóa là phương pháp để tạo ra phiên bản ảo hóa trên máy tính vật lý.
5. AbiCloud
Virtual Machine (máy ảo), là một môi trường hoạt động độc lập - phần mềm
hoạt động cùng nhưng độc lập với hệ điều hành máy chủ.
AbiCloud là giải pháp ĐTĐM private được phát triển bởi Abiquo cho
phép người dùng có thể xây dựng mơi trường IaaS. AbiCloud hỗ trợ các
kỹ thuật ảo hóa Virtual Box, VMWare, XEN, và KVM [
31
32
Một số khái niệm
Một số khái niệm
Phân loại Virtualization
Hypervisor (phần mềm giám sát máy ảo):
RAM virtualization
CPU virtualization
-
Chương trình quản lý một hoặc nhiều máy ảo (VM).
Network virtualization
-
Dùng để tạo, startup, dừng và reset lại các máy ảo.
Device I/O virtualization
-
Cho phép mỗi VM hoặc “guest” truy cập vào lớp tài nguyên phần cứng vật lý (như CPU,
RAM và lưu trữ).
-
Giới hạn số lượng tài nguyên hệ thống mà mỗi máy ảo có thể sử dụng để đảm bảo cho
nhiều máy ảo cùng sử dụng đồng thời trên một hệ thống.
CPU virtualization: Có các loại
Full Virtualization
Paravirtualization
Container-based Virtualization
Hardware Assisted Virtualization
OS level Virtualization
Hybrid Virtualization: ( Hardware Virtualized with PV Drivers )
>> Hypervisor là các phần mềm công nghệ để tạo máy ảo và giám sát, điều
khiển máy ảo
Có 2 loại hypervisor là Native (Bare metal ) và Host Based
33
34
35
36
Một số khái niệm
Hosted: VMware Workstation, Oracle VirtualBox,…
ĐTĐM sử dụng cơng cụ nguồn mở
HỆ THỐNG ĐIỆN TỐN ĐÁM MÂY OPENSTACK
OpenStack được phát triển bởi Rackspace hosting và Nasa.
Dự án mở cộng đồng cho việc phát triển ĐTĐM phù hợp với các nhà
cung cấp (Cloud Providers) cũng như người dùng (Cloud Customers)
Hiện nay được nhiều hãng hỗ trợ: HP, Canonical, IBM, Cisco, Microsoft,
…
37
38
Kiến trúc OpenStack mức conceptual
Kiến trúc OpenStack mức conceptual
39
40
Các thành phần chính của OS
Các thành phần chính của OS
Block Storage (Cinder): Cung cấp dịch vụ Block Storage. Một cách ngắn gọn, Cinder thực hiện
ảo hóa pool các khối thiết bị lưu trữ và cung cấp cho người dùng cuối API để request và sử dụng
tài nguyên mà không cần biết khối lưu trữ của họ thực sự lưu trữ ở đâu và loại thiết bị là gì.
Cũng như các dịch vụ khác trong OpenStack, self service API được sử dụng để tương tác với
dịch vụ Cinder.
Network Service (Neutron): 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.
Orchestration Service (Heat): Cung cấp chức năng điều phối cho máy ảo
Metering Service (Ceilometer): Cung cấp cở sở hạ tầng để thu thập mọi thông tin cần thiết liên
quan tới OpenStack
Database Service (Trove):Là dịch vụ cho phép người dùng sử dụng database quan hệ hoặc phi
quan hệ (Relational database và Non-Relational database - NoSQL) mà không cần quan tâm tới
hạ tầng database. Nó tạo ra lớp abstract giữa người dùng và database, thực hiện dự phòng, mở
rộng và quản lý database trên hạ tầng OpenStack.
....
Identity Service (Keystone): Quản lý xác thực cho user và projects.
Compute Service (Nova): Quản lý máy ảo
Image Service (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). Ta
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.
Dashboard (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.
Object Storage (Swift): Là nền tảng có khả năng mở rộng và chịu lỗi cao, được thiết kế để lưu
trữ một lượng lớn dữ liệu phi cấu trúc với chi phí thấp thơng qua một http RESTful API.
41
42
Kiến trúc OpenStack mức conceptual
Các thành phần chính của OS
OpenStack Compute (Nova) cung cấp khả năng tính tốn với những
instance - tương ứng với EC2 của Amazon.
OpenStack Image Service (Glance) lưu trữ các file ảnh của các instance
trước khi được implementation bởi Nova
OpenStack Object Storage (Swift) cung cấp khả năng lưu trữ - tương ứng
với S3
OpenStack Dashboard (Horizon) cung cấp giao diện web để quản lý
Openstack.
OpenStack Identity (Keystone) cung cấp khả năng authentication và
authorization cho các dịch vụ của Openstack.
43
44
Conceptual architecture
Logical architecture
46
45
Kiến trúc OpenStack mức logic
Người dùng cuối tương tác thông qua web (Horizon)
Các services đều được chứng thực thông qua Keystone
Các dịch vụ cá nhân riêng biệt tương tác với nhau thông qua các APIs tương
ứng.
Các thành phần của Openstack hoạt động độc lập, do vậy cần phải có một phần
trung gian ở giữa nhằm trung chuyển, đồng bộ thời gian, thông tin về tài
nguyên cho cả hệ thống.
Openstack sử dụng Rabbit queue message để chuyển các thông điệp qua lại.
CÁC THÀNH PHẦN CHÍNH CỦA OPENSTACK
47
48
OpenStack - Thành phần Nova
OpenStack - Thành phần Nova
1. Thành phần OpenStack compute (Nova)
Chức năng điều khiển IaaS và phân phối lại tài nguyên hệ thống
cho các instance với khả năng tính tốn lưu trữ độc lập.
Các hypervisor mà Nova hiện hỗ trợ:
Chức năng chạy các instance (máy ảo) và giao diện để quản lý các
instance đó trên hạ tầng phần cứng.
Hyper-V 2008
KVM - Kernel-based Virtual Machine
Nova chỉ sử dụng lại các hypervisor (do người dùng tùy chọn cài đặt)
để thực hiện việc ảo hóa tính tốn. Người dùng có thể sử dụng các
hypervisor khác nhau trong các zone khác nhau.
LXC - Linux Containers (through libvirt)
QEMU - Quick EMUlator
UML - User Mode Linux
VMWare ESX/ESXi 4.1 update 1
Xen - XenServer 5.5, Xen Cloud Platform (XCP)
49
50
OpenStack - Thành phần Nova
OpenStack - Thành phần Nova
Các tính năng chính của OpenStack Compute (Nova)
Các tính năng chính của OpenStack Compute (Nova)
Quản lý tài nguyên ảo hóa bao gồm CPU, memory, disks, network
interfaces. Tất cả các tài nguyên được hợp nhất vào trong 1 “bể” – “pool
of computing”. Việc này sẽ tăng tính tự động và tận dụng tài nguyên,
đem lại lợi ích lớn về kinh tế.
Quản lý mạng nội bộ (LAN) Flat, Flat DHCP, VLAN DHCP, IPv6. Chức
năng này giúp cho việc cung cấp dịch vụ networking và nâng tính bảo
mật khi các VLANs được tách rời nhau. Đồng thời tính linh hoạt trong
mơ hình mạng cũng phù hợp với mỗi ứng dụng cho mỗi user/group.
API với nhiều tính năng và xác thực: Được thiết kế tự động và an toàn
để quản lý việc users truy cập vào các tài nguyên và ngăn chặn truy cập
trái phép qua lại giữa các users.
Distributed and asynchronous architecture
Virtual Machine (VM) image management
Live VM management (Instance) khởi tạo, khởi động, đóng băng, hay
xóa instances.
Floating IP addresses:
Security Groups
Role Based Access Control (RBAC)
Projects & Quotas
VNC Proxy through web browser
Advanced Scheduler
51
52
OpenStack - Thành phần Nova
OpenStack - Thành phần Nova
Các thành phần chính của Nova (7 thành phần)
Các thành phần chính của Nova (7 thành phần)
1)
53
Cloud Controller - quản lý và tương tác với tất cả các thành phần của Nova
2)
API Server - giống như một Web service đầu cuối của Cloud Controller
3)
Compute Controller - cung cấp, quản lý tài nguyên từ các instance. Object Store
- cung cấp khả năng lưu trữ, thành phần này đi cùng với Compute Controller
4)
Auth Manager - dịch vụ authentication và authorization
5)
Volume Controller - lưu trữ theo block-level - giống như Amazon EBS
6)
Network Controller - tạo quản lý các kết nối trong virtual network để các server có
thể tương tác với nhau và với public network
7)
Scheduler - chọn ra compute controller thích hợp nhất để lưu instance.
54
OpenStack - Thành phần Nova
OpenStack - Thành phần Nova
• Cấu hình Flat Network: tạo một giao diện bridge dựa trên
ethernet adapter để giao tiếp giữa các node. Nova sẽ không
quản lý các thao tác về networking của các instance.
• Cấu hình Flat DHCP Networking: host chạy nova- network sẽ
đóng vai trò như một gateway cho các virtual node.
55
56
OpenStack - Thành phần Swift
OpenStack - Thành phần Swift
Các tính năng của OpenStack Object Storage (Swift):
Thành phần OpenStack Object Storage (Swift):
Store and Manage files programmatically via API: quản lý file thông
qua giao diện API
Tạo ra các phiên bản giống nhau cho việc lưu trữ dữ liệu
Mở rộng lưu trữ rất linh hoạt và sử dụng cơ chế clusters
Create Public or Private containers
Swift có thể lưu trữ lên đến petabytes dữ liệu truy cập.
Leverages Commodity hardware
HDD/node failure agnostic: đảm bảo không mất dữ liệu bằng các cơ chế
backup và sao lưu tự động
Unlimited Storage: lưu trữ không hạn chế
Multi-dimensional scalability (scale out architecture) Cloud computing
và OpenStack
Account/Container/Object structure: cho phép mở rộng đến nhiều Petabytes, và hàng tỷ objects
57
58
OpenStack - Thành phần Swift
OpenStack - Thành phần Swift
Kiến trúc logic của Swift:
Các tính năng của OpenStack Object Storage (Swift):
Built-in Replication: N copies các accounts, container, và objects
Easily add capacity unlike RAID resize
No central database: hiệu suất cao, tránh được thắt cổ chai
RAID not required
Built-in Mgmt. utilities:
Acct. Management: Create, add, verify, delete users
Container Management: upload, download, verify
Monitoring: Capacity, Host, Network, Log trawling, cluster health
Drive auditing: cho phép kiểm tra các ổ đĩa để phát hiện hư hỏng.
VNC Proxy through web browser
59
60
OpenStack - Thành phần Swift
OpenStack - Thành phần Swift
Các thành phần chính trong kiến trúc Swift
Các thành phần chính trong kiến trúc Swift
Account Server: quản lý danh sách các Container chứ không phải là
object.
The Ring - Tạo một ánh xạ giữa tên của các thực thể được lưu trên đĩa
cứng và địa chỉ vật lý của nó. Có nhiều ring khác nhau cho account,
container và object.
Proxy Server - nhận các request và chứng thực user. Sau khi quá
trình chứng thực hoàn tất, dữ liệu sẽ được chuyển trực tiếp từ
(hoặc tới) user. Proxy server sẽ không kiểm tra chúng.
Object Server - lưu trữ, quản lý các đối tượng được lưu. Các object
sẽ được lưu theo dạng binary cùng với metadata miêu tả về dữ liệu đó.
Container Server - lưu trữ thông tin và trả về danh sách các object đang
được lưu bên Object Store. Dữ liệu được lưu mặc định trong một CSDL
Sqlite
Khi các thành phần khác cần sử dụng bất cứ thao tác nào trên
object, container hay account thì cần phải tương tác với ring tương ứng để
tìm ra đúng địa chỉ lưu trữ trên cluster.
61
62
OpenStack - Thành phần Glance
OpenStack - Thành phần Glance
Các tính năng của OpenStack Image Service (Glance):
OpenStack Image Service (Glance) cung cấp các tính năng về discovery,
đăng ký (registration), và phân phối (delivery) các dịch vụ cho các đĩa
images ảo.
API của OpenStack Image Service cung cấp một giao diện tiêu chuẩn cho
các thông tin truy vấn về các đĩa image ảo lưu trữ trong các back-end,
bao gồm ln cả OpenStack Object Storage.
Clients có thể đăng ký một đĩa image ảo với các dịch vụ có sẵn, thực hiện
việc truy vấn thông tin.
Glance là một trong những thành phần chính của Openstack, thực hiện lưu
và cung cấp các file ảnh (image) của các máy ảo (instance)
Image-as-a-service
Multi-format/container support
Image status
Scalable API
Metadata
Image Checksum
Extensive Logging
Integrated testing
Back-end store options
Version control
CLI access
Built-in Mgmt. utilities
Drive auditing
VNC Proxy through web browser
63
64
OpenStack - Thành phần Glance
OpenStack - Thành phần Glance
Các thành phần của OpenStack Image Service
(Glance):
1)
2)
3)
Các thành phần của OpenStack Image Service (Glance):
Glance API server - nhận các hàm gọi API, tương tự
như nova-api, nó chờ các API request sau đó giao tiếp
với các thành phần khác (glance-registry và image
store) sau đó thực hiện các công việc được yêu cầu: truy
vấn, upload, delete image...
Glance Registry server - lưu và cung cấp các thông
tin (metadata) về image (định dạng, ID, dung
lượng...) Mặc định sử dụng Sqlite để lưu các
metadata. Ngoài ra glance-registry lắng nghe cổng
9191.
Các file image của instance sẽ được upload lên Glance server
Sau đó Nova sẽ gọi tới Glance và yêu cầu lấy một trong những file
image đó để khởi tạo instance bên trong nova-compute.
Nếu có dữ liệu cần lưu riêng (backup, dữ liệu dùng chung giữa các
instance) thì sẽ được lưu trên Swift.
Ba thành phần này độc lập với nhau, nhưng có thê kết hợp với nhau
để hoạt động như một thể thống nhất.
Image Storage - lưu trữ các file image
65
66
OpenStack - Thành phần Keystone
OpenStack - Thành phần Dashboard
Thành phần OpenStack Dashboard (Horizon)
Thành phần OpenStack Identity (Keystone)
Thành phần để chứng thực, token, catalog và policy service cho tất cả các dịch
vụ khác của Openstack.
Được triển khai thông qua Identity API của Openstack.
Cung cấp giao diện web nhằm tương tác quản lý các thành phần còn lại của Openstack
Kết hợp với Keystone để chứng thực user.
67
68
OpenStack - Provider Networks Architecture
CÁC MÔ HÌNH MẠNG TRONG OPENSTACK
Provider Networks: No-virtual networks. VMs are directly connected to
the underlying physical network. They are getting IPs from the existing
external network infrastructure.
69
OpenStack - Provider Networks Architecture
70
OpenStack - Provider Networks Architecture
71
72
OpenStack - Provider Networks Architecture
OpenStack - Provider Networks Architecture
73
74
OpenStack - Seft-service Architecture
OpenStack - Provider Networks Architecture
Self-service Networks: Provide the ability to create overlay virtual networks using e.g. VXLAN tunnels.
We need to attach floating IPs to our VMs and services in order to access them from the public world.
76
75
CÀI ĐẶT VÀ TRIỂN KHAI
HỆ THỐNG ĐTĐM OPENSTACK
77
Module Version
OpenStack Version Codename Community Supported
2.y.z
Grizzly
no - EOL (2014-03-29)
3.y.z
Havana
no - EOL (2014-09-30)
4.y.z
Icehouse
no - EOL (2015-07-02)
5.z.y
Juno
no - EOL (2015-12-07)
6.z.y
Kilo
no - EOL (2016-05-02)
7.z.y
Liberty
no - EOL (2016-11-17)
8.z.y
Mitaka
no - EOL (2017-04-10)
9.z.y
Newton
no - EOL (2017-10-11)
10.z.y
Ocata
yes - EOL (2017-02-26)
11.z.y
Pike
12.z.y
Queens
yes - EOL (2018-02-28)
13.z.y
Rocky
yes - EOL (2018-08-30)
yes - EOL (2017-08-30)
14.z.y
Stein
yes - EOL (2019-04-10)
15.z.y
Train
yes
16.z.y
Ussuri
yes
17.z.y
Victoria
yes
18.z.y
Wallaby
yes (current master)
78
OpenStack
Openstack
Hệ thống OpenStack gồm node chínhController và nhiều node Compute
Sơ đồ OpenStack có 01 node ALL IN ONE
79
80
Openstack
Openstack
Sơ đồ OpenStack gồm 01 node Controller và 02 node Compute
Sơ đồ OpenStack gồm 01 node Controller và 02 node Compute
81
82
Openstack
Openstack
Sơ đồ OpenStack gồm 01 node Controller, 01 Network và 01 node Compute
83
Sơ đồ OpenStack gồm 01 node Controller, 01 Network và 01 node Compute
84
Openstack
Openstack
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage và 01 node Compute
(LVM backend)
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage và 01 node Compute
(LVM backend)
85
86
Openstack
Openstack
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage, 01 node Compute, NFS
Server (NFS backend)
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage, 01 node Compute, NFS
Server (NFS backend)
88
87
Openstack
Openstack
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage, nhiều node Compute,
NFS Server (Multi backend)
89
Sơ đồ OpenStack gồm 01 node Controller, 01 Storage, nhiều node Compute,
NFS Server (Multi backend)
90
Mơ hình cài đặt các gói chính trên mỗi node
Khởi động các nút Computer và Controller
91
Images, Storage, và Instance
92
Images, Storage, và Instance
Images là các file ảnh (disk image templates) của file system máy ảo. Đây
là các template máy ảo.
OpenStack sử dụng Image service (Glance) cho việc lưu trữ và quản lý
các template ảnh này.
Instances là các máy ảo chạy trên các node vật lý (trên nền tảng của 1
hypervisor).
Các instances được xem như là các Virtual Machines với đầy đủ các
thành phần như một máy tính vật lý, bao gồm 3 thông tin cơ bản sau:
CPU, RAM, HDD.
OpenStack sử dụng compute service (Nova) để tương tác với các Hypervisor,
từ đó quản lý các Instances.
Openstack Nova các loại Hypervisor hiện nay như VMware, Hyper-V, Xen.
Hypervisor mặc định là KVM.
Các instances có thể được khởi tạo từ 1 file ảnh chung (ví dụ ảnh của HĐH
Ubuntu, Windows 7, …).
Mỗi instance chạy một bản copy của file ảnh gốc, file ảnh gốc được giữ nguyên
vẹn cho việc sử dụng của các instances được khởi tạo sau.
Quá trình Snapshots một instance đang chạy trong OpenStack sẽ tạo ra một
image mới dựa trên disk hiện tại của instance được snapshot.
93
Images, Storage, và Instance
94
Các thành phần chính của Openstack - Keystone
• Instances là các máy ảo chạy trên các node vật lý (trên nền
tảng của 1 hypervisor). Các instances có thể được khởi tạo
từ 1 ảnh chung (ví dụ ảnh của HĐH Ubuntu, Windows 7, …)
Flavor: là thông tin về tài nguyên được cung cấp cho một Instance
• OpenStack sử dụng compute service – Nova để quản lý các
Instances.
Flavor cho biết có bao nhiêu vCPUs, lượng RAM, và size của ephemeral disks.
OpenStack cung cấp một số Flavor được định nghĩa sẵn, NSD có thể tạo thêm,
hoặc edit các Flavor.
• Mỗi instance chạy một bản copy của file ảnh gốc, file ảnh
gốc được giữ nguyên vẹn cho việc sử dụng của các instances
được khởi tạo sau.
Các tài nguyên khác như persistent volume storage và địa chỉ IP có thể được
thêm vào hoặc bỏ đi đối với các instance đang hoạt động.
• Q trình Snapshots một instance đang chạy trong
OpenStack sẽ tạo ra một image mới dựa trên disk hiện tại
của instance được snapshot.
95
96
Khởi tạo instance
Khởi tạo instance
Để khởi tạo 1 instance cần có:
Để tạo mới (launch) một instance thì chọn 1 image, 1 flavor,
compute node để chạy máy ảo và các tham số khác.
+ 1 hệ thống lưu trữ và quản lý ảnh (Glance) và có sẵn ít nhất 1 image
template (ví dụ Cirros, Ubuntu 12.04, Fedora, …)
+ Trong cloud phải có ít nhất 1 available compute node để cung cấp các tài
nguyên vCPU, RAM, và local disk.
97
98
Thao tác trên hệ thống Openstack bằng lệnh
Thao tác trên hệ thống Openstack
source admin-openrc
Kiểm tra dịch vụ Glance - Xem các image:
Kiểm tra các dịch vụ của nova:
Kiểm tra lại các thành phần của neutron:
Từ trình duyệt truy cập: http://192.168.1.10/horizon/
root@controller:~# openstack image list
root@controller:~# openstack compute service list
root@controller:~# neutron agent-list
99
100
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Create a flavor and image: Admin Tab –> Flavors –> Click
on create Flavor
101
Specify the Flavor Name (fedora.small) , VCPU , Root
Disk, Ephemeral Disk & Swap disk.
102
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Create Image: Go to Admin Tab –> Images—> Click on
Create Image. Specify the Image Name , Description, Image
Soure, Format QCOW2
Create Network and Router for Project: Go to the Network
Tab —> Click on Networks —> then Click on Create
Network. Specify the Network Name as Internal
103
104
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
click on Next. Specify the Subnet name (sub-internal) and
Network Address (10.10.0.0/24)
Click on Next. Untick “Enable DHCP” option and Specify
the ip address pool for external network.
105
106
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Create a Router: Go To Network Tab –> Routers –> Click
on ‘+ Create Router’
107
Mark External network as “External” , this task can be completed only
from admin user , so logout from linuxtechi user and login as admin. Go to
Admin Tab —> Networks–> Click on Edit Network for “External”
108
Thao tác trên hệ thống Openstack
Logout from admin user and login as user.
Go to Network Tab —> Routers –> for Router1 click on
“Set Gateway”
Thao tác trên hệ thống Openstack
Click on “Set Gateway” , this will add a interface on router and
will assign the first ip of external subnet (192.168.1.0/24).
Add internal interface to router as well , Click on the “router1″
and select on “interfaces” and then click on “Add interface”
109
110
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Click on Add interface.
Network Part is completed Now & we can view Network
Topology from “Network Topology” Tab
Create a key pair that will be used for accessing the VM and define
the Security firewall rules.
Go to ‘Access & Security’ Tab —> Click on Key Pairs –> then
click on ‘Create Key Pair‘
111
112
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Add a new Security Group with name ‘fedora-rules’ from
Access & Security Tab. Allow 22 and ICMP from Internet (
0.0.0.0 ).
113
Once the Security Group ‘fedora-rules’ created , click on
Manage Rules and allow 22 & ICMP ping
114
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Launch an instance. Go to Compute Tab –> Click on
Instances –> then click on ‘Launch Instance’
Click on ‘Access & Security’ and Select the Security Group
‘fedora-rules’ & Key Pair ”myssh-keys‘
115
116
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Now Select Networking and add ‘Internal’ Network and the
Click on Launch ….
Once the VM is launched , Associate a floating ip so that we
can access the VM.
117
118
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack
Click on ‘Associate Floating IP‘
119
Click on Allocate IP.
120
Thao tác trên hệ thống Openstack
Thao tác trên hệ thống Openstack trên Horizon
Click on Associate
Xem thông tin Instances
121
122
Thao tác trên hệ thống Openstack trên Horizon
Thao tác trên hệ thống Openstack trên Horizon
Xem thông tin hệ thống
Truy xuất vào máy ảo trên Cloud:
Chọn Instance Name/Console
123
124
Thao tác trên hệ thống Openstack trên Horizon
Thao tác trên hệ thống Openstack trên Horizon
Truy xuất từ xa - Dùng công cụ SecureCRT
125
Truy xuất từ xa - Dùng công cụ SecureCRT
126
NGHIÊN CỨU ỨNG DỤNG CLOUD COMPUTING
127