1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu xây dựng nền tảng đám mây mã nguồn mở cho phép triển khai và cấu hình phần mềm như một dịch vụ trên các đám mây iaas khác nhau

95 17 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 95
Dung lượng 2,68 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong đó, h tầng IaaS cung cấp tài nguyên phần cứng đã được ảo hóa Virtualization, nền tảng PaaS cho phép người dùng t n dụng tài nguyên tính toán dường như vô h n của m t cơ sở h tầng đ

Trang 2

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

NGUYỄN THANH BẢN

NGHIÊN CỨU XÂY DỰNG NỀN TẢNG ĐÁM MÂY MÃ NGUỒN MỞ

CHO PHÉP TRIỂN KHAI VÀ CẤU HÌNH PHẦN MỀM NHƯ MỘT

DỊCH VỤ TRÊN CÁC ĐÁM MÂY IAAS KHÁC NHAU

CHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN

LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC

TS NGUYỄN BÌNH MINH

Hà Nội – 2016

Trang 4

MỤC LỤC

MỤC LỤC 1

LỜI C M O N 3

LỜI C M N 4

MỞ ẦU 9

CHƯ NG 1: GIỚI THIỆU IỆN TOÁN ÁM MÂY 11

1.1 Tổng quan về điện toán đám mây 11

1.2 Phân lo i điện toán đám mây 15

1.3 Lý do chọn đề tài 24

1.4 Ph m vi của đề tài 27

1.5 Yêu cầu cần thực hiện 27

1.6 Công nghệ sử dụng 28

1.6.1 Giới thiệu công nghệ JSF 28

1.6.2 Giới thiệu OpenStack 30

1.6.3 OpenStack Python APIs 34

CHƯ NG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 37

2.1 Phân tích yêu cầu 37

2.2 Thiết kế hệ thống 39

2.1.1 Thiết kế tổng thể 39

2.1.2 Thiết kế cơ sở dữ liệu 49

2.1.3 Thiết kế chi tiết chức n ng 53

CHƯ NG 3: KẾT QU ẠT ƯỢC 58

3.1 Xây dựng dịch vụ nền tảng (PaaS) 59

Trang 5

3.3 Tích hợp dịch vụ phần mềm (SaaS) 74

3.4 Thử nghiệm và đánh giá 75

3.4.1 Thử nghiệm sử dụng snapshot 76

3.4.2 Thử nghiệm thực thi shell scripts 80

T NG KẾT V B N LU N 85

A Tổng kết 85

B Các vấn đề còn tồn t i trong lu n v n 86

C Hướng phát triển của lu n v n 86

T I LIỆU TH M KH O 89

PHỤ LỤC 90

Trang 6

LỜI C M ĐO N

Tác giả lu n v n xin cam đoan đây là công trình nghiên cứu của riêng tác giả, lu n v n đúc kết quá trình nghiên cứu từ việc t p hợp các nguồn tài liệu, những kiến thức đã học, đến việc tự thu th p các thông tin liên quan và liên hệ thực tế t i đơn vị công tác Tất cả số liệu, kết quả được nêu trong lu n v n là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác

Tác giả lu n v n xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện lu n

v n này đã được cảm ơn, và tất cả thông tin trích dẫn trong lu n v n đã được chỉ rõ nguồn gốc

Tác giả lu n v n xin chịu trách nhiệm về nghiên cứu của mình

H vi t i u v

Nguyễ T a Bả

Trang 7

Trước tiên, tác giả lu n v n xin được gửi lời cảm ơn đến tất cả quý Thầy Cô

đã giảng d y trong chương trình đào t o th c s , Viện Công Nghệ Thông Tin và Truyền Thông, i học Bách Khoa Hà N i, những người đã truyền đ t cho tác giả những kiến thức hữu ích làm cơ sở cho tác giả thực hiện tốt lu n v n này

Với lòng kính trọng và biết ơn, tác giả lu n v n xin được bày tỏ lời cảm ơn tới TS Nguyễn Bình Minh đã khuyến khích, t n tình hướng dẫn trong suốt thời gian thực hiện lu n v n Mặc dù, trong quá trình thực hiện lu n v n có giai đo n không được thu n lợi nhưng nhờ sự hướng dẫn, chỉ bảo của Thầy đã cho tác giả lu n v n nhiều kinh nghiệm trong thời gian thực hiện đề tài

Tác giả lu n v n cũng xin gửi lời cảm ơn đến c ng đồng VietStack, diễn đàn trao đổi về điện toán đám mây và OpenStack t i Việt Nam, nơi tác giả được trao đổi

và học hỏi nhiều kiến thức bổ ích phục vụ cho việc nghiên cứu và phát triển đề tài Sau cùng tác giả lu n v n xin gửi lời biết ơn sâu sắc đến gia đình đã luôn t o điều kiện tốt nhất cho tác giả lu n v n trong suốt quá trình học cũng như thực hiện

lu n v n Do thời gian có h n và kinh nghiệm nghiên cứu khoa học chưa nhiều nên

lu n v n còn nhiều thiếu sót, rất mong nh n được ý kiến đóng góp của quý Thầy/Cô

và các b n học viên

H vi t i u v

Nguyễ T a Bả

Trang 8

D NH MỤC C C K HI U C C CH VI T T T

IaaS Infrastructure as a Service

PaaS Platform as a Service

SaaS Software as a Service

VM Virtual Machine

GUI Graphical User Interface: Giao diện đồ ho

JSF JavaServer Faces

DHCP Dynamic Host Configuration Protocol

QEMU Quick EMUlator

API Application Programming Interface

HTML HyperText Markup Language

JSP Java Server Page

FTP File Transfer Protocol

SSH Secure Shell

LAMP Linux OS, Apache HTTP Server, MySQL, PHP

IP Internet Protocol

Trang 9

Hì vẽ Nội du g Trang

1.3 Mô tả kiến trúc điện toán đám mây 14 1.4 Dashboard của Windows zure 16 1.5 Giao diện Dashboard của Heroku 17

1.7 Mô hình dịch vụ điện toán đám mây 19 1.8 ám mây riêng (Privte cloud) 20 1.9 ám mây công c ng (Public cloud) 20 1.10 ám mây lai (Hybrid cloud) 21 1.11 ám mây c ng đồng (Community cloud) 22 1.12 Vòng đời của ứng dụng JavaServer Face 29

1.15 Các phiên bản của OpenStack 32 1.16 Các thành phần của OpenStack 32

Trang 10

2.2 Mô hình quan hệ cơ sở dữ liệu 48

3.1 Sơ đồ mô tả quy trình khởi t o máy ảo theo cấu hình

3.14 Biểu đồ đánh giá hiệu n ng khởi t o máy ảo sử dụng

Trang 11

3.17 Biểu đồ so sánh hiệu n ng khởi t o máy ảo sử dụng

snapshot và shell script

82

3.18 Giao diện PHP My dmin trên máy ảo sau khi khởi t o 83

Trang 12

MỞ ĐẦU

Thu t ngữ “Cloud Computing” hay còn gọi là điện toán máy chủ ảo ra đời giữa n m 2007, đã mở ra m t hướng đi mới của cơ sở h tầng thông tin iện toán đám mây là m t giải pháp toàn diện cung cấp công nghệ thông tin như m t dịch vụ

Có ba d ng dịch vụ đám mây là: h tầng (IaaS), nền tảng (PaaS), dịch vụ (SaaS) Trong đó, h tầng (IaaS) cung cấp tài nguyên phần cứng đã được ảo hóa (Virtualization), nền tảng (PaaS) cho phép người dùng t n dụng tài nguyên tính toán dường như vô h n của m t cơ sở h tầng đám mây, dịch vụ (SaaS) cung cấp phần mềm thông qua môi trường m ng tới người dùng cuối

Khi các phần mềm có sẵn trên nền điện toán đám mây, doanh nghiệp không cần phải mua và duy trì hàng tr m hoặc th m chí là hàng nghìn máy tính để cài đặt

Họ chỉ cần t p trung vào l nh vực kinh doanh riêng của mình Thực tế, hàng n m mỗi doanh nghiệp sẽ phải bỏ ra rất nhiều nguồn lực và kinh phí để duy trì máy chủ, nhân lực triển khai và bảo trì, phục vụ cho hệ thống phần mềm ôi khi gây ra sự lãng phí không hề nhỏ nếu không sử dụng hợp lý nguồn tài nguyên máy tính, bên

c nh đó doanh nghiệp sẽ không tránh khỏi tỷ lệ rủi ro cao từ các nguyên nhân chủ quan cũng như khách quan Về phía nguồn lực, để có thể cài đặt, v n hành các máy chủ doanh nghiệp cần phải có những người am hiểu kiến thức hệ thống, từ đó bài toán tìm kiếm nguồn nhân lực cũng là m t khó kh n đối với các doanh nghiệp ngày nay

Như v y, điện toán đám mây đã mở ra m t hướng tư duy mới cho các doanh nghiệp về cách thức sử dụng phần mềm iều họ mong muốn là được sử dụng các sản phẩm phần mềm m t cách đơn giản, tiết kiệm chi phí, nhanh chóng, hiệu quả và

an toàn

Khi sử dụng IaaS, người dùng bu c phải trở thành nhà quản trị hệ thống PaaS giúp nhà phát triển phần mềm mang ứng dụng tiếp c n người dùng cuối nhanh hơn ặc biệt đối với các doanh nghiệp ho t đ ng trong l nh vực công nghệ thông tin, họ cần m t giải pháp để dễ dàng triển khai phần mềm tới người dùng cuối

Trang 13

m t dịch vụ sẵn có của nhà cung cấp Khi đó họ chỉ cần t p trung vào việc xây dựng sản phẩm Tuy nhiên PaaS l i gây ra vấn đề bó bu c về giải pháp công nghệ cho các nhà l p trình

Do đó, tác giả t p trung nghiên cứu và xây dựng thử nghiệm m t giải pháp dịch vụ nền tảng đám mây (PaaS) mã nguồn mở Giải pháp này cho phép người dùng có thể triển khai trên các h tầng IaaS, sau đó cung cấp dịch vụ cho bên thứ ba (các nhà l p trình) t o ra ứng dụng SaaS Lợi ích của giải pháp này là:

- Triển khai trên các h tầng IaaS khác nhau

- Mã nguồn mở: cho phép người dùng sử dụng, đóng góp và chỉnh sửa tự do

- Khả n ng tùy biến cao: cho phép người dùng tự t o các nền tảng (platform) khác nhau theo nhu cầu của ứng dụng

Những n i dung, kết quả nghiên cứu chính của lu n v n được trình bày trong ba chương như sau:

 Chương 1 Giới thiệu điện toán đám mây

Tổng quan về điện toán đám mây, phân lo i và những lợi ích điện toán đám mây mang l i Những yêu cầu cần thực hiện trong lu n v n, ph m vi và công nghệ sử dụng

 Chương 2 Phân tích, thiết kế hệ thống

Phân tích yêu cầu chức n ng m t nền tảng PaaS cung cấp cho người sử dụng, từ đó

đề xuất ra giải pháp nền tảng mã nguồn mở, sau đó tác giả đi vào thiết kế tổng thể, thiết kế chức n ng, cơ sở dữ liệu hệ thống

 Chương 3 Kết quả đ t được

Xây dựng nền tảng PaaS, cài đặt và thử nghiệm trên h tầng IaaS Tích hợp phần mềm dịch vụ SaaS ánh giá hiệu n ng khởi t o máy ảo theo yêu cầu người sử dụng

Trang 14

CHƯ NG 1: GIỚI THI U ĐI N TO N Đ M MÂY

Trong chương 1 tác giả sẽ giới thiệu tổng quan về điện toán đám mây, phân loại, các lợi ích và xu hướng của điện toán đám mây để từ đó nêu ra mục đích của luận văn, đưa ra các hướng giải pháp, ứng dụng Giới thiệu các công nghệ sử dụng trong luận văn

1.1 Tổ g qua về đi toá đám mây

Theo NIST (National Institute of Standards and Technology) định ngh a: điện toán đám mây là m t mô hình cho phép truy c p dễ dàng qua m ng theo nhu cầu sử dụng tài nguyên tính toán (ví dụ: m ng, máy chủ, lưu trữ, ứng dụng và dịch vụ) m t cách thu n tiện và nhanh chóng, đồng thời cho phép người dùng thu hồi hoặc cấp phát tài nguyên m t cách đơn giản mà không cần sự can thiệp của nhà cung cấp dịch vụ.[1]

Theo IBM (International Business Machines) nói m t cách đơn giản hơn rằng điện toán đám mây là m t cu c cách m ng Nó đang t o ra m t sự thay đổi cơ bản trong kiến trúc máy tính, phát triển phần mềm, cách thức lưu trữ, phân phối và

sử dụng thông tin iện toán đám mây là m t giải pháp toàn diện cung cấp công nghệ thông tin như m t dịch vụ Nó là m t giải pháp điện toán dựa trên internet, ở

đó cung cấp tài nguyên chia sẻ giống như dòng điện được phân phối trên lưới điện Các máy tính trong các đám mây được cấu hình để làm việc cùng nhau và các ứng dụng khác nhau sử dụng sức m nh điện toán t p hợp cứ như thể là chúng đang ch y trên m t hệ thống duy nhất

Tóm l i, có thể hiểu điện toán đám mây là m t giải pháp cho phép cung cấp các tài nguyên công nghệ thông tin như m t dịch vụ, và có khả n ng thay đổi linh

ho t theo nhu cầu của người sử dụng Thu t ngữ “đám mây” để chỉ các tài nguyên tồn t i trên môi trường m ng, người dùng có thể truy c p vào các tài nguyên này mà không cần hiểu rõ về công nghệ, k thu t và h tầng trong đám mây

Trang 15

Hình 1.1 Mô hình điện toán đám mây

Từ những n m 1960, thu t ngữ ảo hóa (Virtualization) hay công nghệ ảo hóa

ra đời Công nghệ ảo hóa cho phép nhiều hệ điều hành ch y đồng thời trên m t máy tính duy nhất Có ba phương pháp ảo hóa được ứng dụng nhiều nhất là: ảo hóa máy chủ, ảo hóa lưu trữ và ảo hóa ứng dụng o hóa làm cho máy chủ, máy tr m, lưu trữ

và các hệ thống khác đ c l p với lớp phần cứng v t lý, điều này được thực hiện bằng cách cài đặt m t Hypervisor trên tầng phần cứng

Ông Mike dams, giám đốc marketing của Vmware cho biết: “ o hóa là

m t yếu tố nền tảng của điện toán đám mây”, nó là bước khởi đầu cho điện toán đám mây

Trang 16

Hình 1.2 Mô hình công nghệ ảo hóa

Sử dụng công nghệ ảo hóa máy chủ, m t doanh nghiệp có thể t n dụng tối đa các nguồn tài nguyên máy chủ, cải thiện hiệu suất và giảm chi phí v n hành, bảo trì Trong thực tế, để có thể quản lý phần cứng, v n hành và bảo trì, người dùng thường mất rất nhiều thời gian, chưa kể đến kiến thức chuyên môn h n chế thường làm họ gặp nhiều khó kh n

Nếu chúng ta cần lưu trữ dữ liệu, có: OneDrive, Dropbox, Google Drive…người dùng không cần quan tâm phần cứng được cài đặt thế nào, phần mềm cần c p nh t và sao lưu ra sao vì mọi thứ đã được các nhà cung cấp dịch vụ quản lý, cái chúng ta quan tâm là nó được sử dụng như thế nào để mang l i lợi ích lớn nhất cho mình

iện toán đám mây là m t mức cao hơn của ảo hóa, nó có nhiều ưu điểm hơn so với ảo hóa ám mây cung cấp khả n ng tự phục vụ, co giãn, quản lý tự

đ ng, khả n ng mở r ng mà ảo hóa không có được.Vì v y, điện toán đám mây ra đời cũng là m t tất yếu khi những ưu điểm của nó đã mang l i lợi ích vô cùng to lớn cho doanh nghiệp và người sử dụng

Trang 17

- Ki trú : có thể phân chia kiến trúc điện toán đám mây thành 2 phần:

o Frontend

o Backend

Frontend: giao diện hiển thị dành cho người sử dụng, đó là các máy tính của khách hàng, các ứng dụng cần thiết để họ truy c p vào các dịch vụ trên nền điện toán đám mây thông qua môi trường m ng, như: Firefox, Chrome, Internet Explorer để truy

c p Email

Backend: được sử dụng bởi nhà cung cấp dịch vụ Nó bao gồm các máy chủ v t lý, máy chủ lưu trữ dữ liệu Trong đó có m t máy chủ trung tâm được sử dụng để giám sát lưu lượng và nhu cầu của khách hàng Máy chủ này chứa các giao thức (protocol) cho phép các máy tính khác kết nối vào m ng và giao tiếp với nhau

Hình 1.3 Mô tả kiến trúc điện toán đám mây

- 5 đặ tí ủa đi toá đám mây:

o Tổng hợp tài nguyên (Resourse pooling): các tài nguyên được tính toán và cấp

phát theo đúng yêu cầu của cá nhân/ doanh nghiệp cần ám mây tự đ ng tìm

Trang 18

kiếm tài nguyên nhàn rỗi để xử lý nghiệp vụ, lưu trữ dữ liệu, cung cấp b ng thông…cho nhiều người dùng khác nhau

o Tự phục vụ theo nhu cầu (On-demand self-service): đám mây cho phép người

sử dụng tự khởi t o máy ảo, các tài nguyên, tự lựa chọn các dịch vụ theo nhu cầu của mình Tất cả sẽ được đáp ứng m t cách tự đ ng

o Truy c p m ng lưới r ng khắp (Broad network access): Các dịch vụ của đám

mây nằm trên internet, được sử dụng m t cách đơn giản, tương thích trên mọi nền tảng như: điện tho i di đ ng, máy tính bảng, laptop, máy tr m

o Khả n ng tự mở r ng, co giãn (Rapid elasticity): đám mây có thể tự mở r ng

hoặc co giãn theo nhu cầu sử dụng tài nguyên của hệ thống, đảm bảo hệ thống

v n hành ổn định

o Cung cấp các dịch vụ đo lường (Measured service): đám mây có thể tự đ ng

kiểm soát và tối ưu hóa tài nguyên hệ thống Kiểm soát lưu trữ, xử lý, b ng thông…cung cấp các thông số, báo cáo tới nhà cung cấp và người sử dụng [1]

1.2 P â oại đi toá đám mây

iện toán đám mây được phân lo i gồm 3 mô hình dịch vụ, và 4 mô hình triển khai

o P â oại t eo mô ì dị vụ

- Cơ sở ạ tầ g ư một dị vụ (IaaS - Infrastructure as a Service): trong mô

hình IaaS, các nhà cung cấp h tầng gồm các tài nguyên v t lý – các máy chủ, các thiết bị m ng, các ổ đ a lưu trữ v.v…cho người sử dụng, khi sử dụng nền tảng IaaS người dùng thực tế không kiểm soát cơ sở h tầng v t lý, nhưng có quyền kiểm soát các hệ điều hành, lưu trữ, triển khai các ứng dụng, các thành phần m ng V y khi cần thuê m t máy chủ, người dùng chỉ cần đưa ra yêu cầu về phần cứng như: CPU, RAM, storage…tất cả sẽ được nhà cung cấp đáp ứng mà không cần quan tâm máy chủ đó đặt t i đâu [2]

Hiện có các nhà cung cấp IaaS như: Rackspace Open Cloud, Google Compute Engine, Amazon AWS, Windows Azure Virtual Machines…

Trang 19

các file ảnh sẵn có hoặc sử dụng file ảnh do người dùng cung cấp Người sử dụng

có toàn quyền điều khiển máy ảo đã t o Thông qua giao diện Dashboard, người sử dụng theo dõi máy ảo thông qua biểu đồ thời gian thực

Hình 1.4 Dashboard của Windows Azure

- Nề tả g ư một dị vụ (PaaS – Platform as a Service): trong mô hình PaaS,

những nhà cung cấp dịch vụ đám mây cung cấp nền tảng điện toán bao gồm: hệ điều hành, ngôn ngữ l p trình, cơ sở dữ liệu, máy chủ web Những nhà phát triển ứng dụng có thể triển khai phần mềm lên nền tảng đám mây m t cách nhanh chóng

và dễ dàng thông qua giao diện của nhà cung cấp Ngoài ra, họ có thể kiểm soát các ứng dụng đã triển khai, thay đổi cấu hình phần cứng mong muốn, hay cài đặt thêm các ứng dụng theo yêu cầu [4]

PaaS có các nhà cung cấp như: Elastic Compute Cloud (EC2) của mazon, Google App Engine, Windows Azure (Microsoft), Heroku…

Ví dụ về PaaS Heroku:

Heroku cung cấp nền tảng hỗ trợ các ngôn ngữ l p trình Ruby, Java, Node.js Scala, Clojure, Python và PHP cùng với các cơ sở dữ liệu như PostgreSQL,

Trang 20

MongoDB, Redis…trên nền tảng hệ điều hành Debian và Ubuntu Các nhà phát triển phần mềm đưa mã nguồn vào hệ thống của Heroku, cấu hình các chương trình

sẽ ch y Việc ch y phần mềm do hệ thống của Heroku tự đ ng thực hiện Họ sẽ phải trả chi phí cho lượng tài nguyên sử dụng được hệ thống đo lường l i

Hình 1.5 Giao diện Dashboard của Heroku

- P ầ mềm ư một dị vụ (SaaS – Software as a Service): trong mô hình

SaaS, người sử dụng truy c p phần mềm của nhà cung cấp thông qua môi trường

m ng Các ứng dụng ch y trên tầng SaaS được cung cấp theo yêu cầu của người dùng, nhưng nhà cung cấp dịch vụ sẽ chịu trách nhiệm quản lý và v n hành Người dùng không phải đi mua ổ cứng, mua phần mềm về cài đặt, không phải quản lý cơ

sở h tầng và nền tảng đám mây iều này giúp lo i bỏ việc cài đặt và ch y các ứng dụng trên máy tính của họ, đơn giản hóa việc bảo trì phần mềm [2]

OneDriver, Dropbox, Gmail, OneNote…là những ứng dụng chúng ta vẫn sử dụng hằng ngày, mang l i những lợi ích to lớn trong công việc và cu c sống, đó là phần mềm được cung cấp như những dịch vụ trên nền tảng đám mây

Trang 21

Google Drive là dịch vụ lưu trữ trực tuyến của Google, cho phép người dùng

dễ dàng upload, chia sẻ, và đồng b hóa dữ liệu Người dùng đ ng ký sử dụng thông qua tài khoản Gmail Google cung cấp 15GB để lưu trữ dữ liệu Thông qua giao diện trực tuyến, người dùng có thể so n thảo, lưu trữ, chia sẻ các file v n bản T o các tệp với công cụ Word, Excel như họ vẫn thường sử dụng trên máy tính cá nhân Người dùng chỉ cần m t thiết bị (laptop, máy tính bảng…) có kết nối internet là có thể sử dụng ở bất cứ nơi đâu

Hình 1.6 Giao diện của Google Drive

Ba mô hình trên thực hiện cung cấp các dịch vụ của điện toán đám mây, dịch

vụ tầng phía trên được xây dựng trên dịch vụ tầng thấp hơn để nâng cao khả n ng

mở r ng của toàn b hệ thống

Trang 22

Hình 1.7 Mô hình dịch vụ điện toán đám mây

Hình minh họa 1.7 thể hiện rõ ba mô hình dịch vụ điện toán đám mây Ở tầng IaaS, người dùng sẽ không cần lo lắng về h tầng m ng, khả n ng lưu trữ, máy chủ v t lý và công nghệ ảo hóa mà chỉ cần quản lý hệ điều hành và các ứng dụng

ch y trên đó Tầng PaaS, ph m vi quản lý của người dùng thu hẹp l i chỉ còn dữ liệu và ứng dụng của họ, phần còn l i do nhà cung cấp quản lý và v n hành ến tầng SaaS, người dùng không quản lý bất kỳ tài nguyên nào, họ chỉ có quyền truy

c p và sử dụng các dịch vụ, kể cả dữ liệu cá nhân họ lưu trữ cũng được quản lý bởi nhà cung cấp

Ngoài ba mô hình nói trên, nền tảng điện toán đám mây còn có các mô hình khác như: Database as a Service (DbaaS), Network as a Service (NaaS)…

o P â oại t eo mô ì triể k ai

- Đám mây ri g (Private oud): là đám mây tồn t i trong n i b m t tổ chức,

doanh nghiệp hoặc công ty Tổ chức tự thiết l p, chịu trách nhiệm và duy trì đám mây đó để sử dụng với những mục đích riêng

Trang 23

Hình 1.8 Đám mây riêng (Private cloud)

- Đám mây ô g ộ g (Public cloud): là đám mây cung cấp các tài nguyên (nền

tảng, ứng dụng…) bởi m t nhà cung cấp Những dịch vụ này miễn phí hoặc được

cung cấp trên m t mô hình trả phí theo mức sử dụng (pay-per-use) Các nhà

cung cấp dịch vụ điện toán đám mây công c ng như: Amazon AWS, Microsoft, Google sở hữu và v n hành cơ sở h tầng, cung cấp truy c p qua internet

Hình 1.9 Đám mây công cộng (Public cloud)

Trang 24

- Đám mây lai (Hybrid cloud): là sự kết hợp của đám mây công c ng và riêng tư

Việc m t tổ chức hay doanh nghiệp lựa chọn mô hình đám mây lai hay không sẽ tùy thu c vào nhu cầu sử dụng Mục đích của việc kết hợp giữa đám mây công c ng và riêng tư sẽ cho hiệu suất cao hơn, họ vừa muốn t o ra các dịch vụ sử dụng n i b , vừa muốn mở r ng quy mô, chia sẻ hoặc trao đổi thông tin từ m t đám mây khác

Ví dụ: sau m t thời gian ho t đ ng theo mô hình Private cloud, doanh nghiệp phát sinh yêu cầu cần mở r ng b nhớ để lưu trữ, cần t ng tốc đ truyền dữ liệu…họ sẽ tìm đến giải pháp kết hợp với m t bên thứ ba cung cấp m t đám mây bên ngoài để giải quyết những vấn đề trên

Hình 1.10 Đám mây lai (Hybrid cloud)

- Đám mây ộ g đồ g (Commu ity oud): Là đám mây được chia sẻ bởi m t số

tổ chức, hỗ trợ m t c ng đồng cụ thể có cùng m t mối quan tâm chung như: cùng tổ chức ho t đ ng, cùng ràng bu c pháp lý…Trong thực tế, đám mây c ng đồng được

sử dụng khi các công ty, tổ chức cùng làm việc trong m t l nh vực như: Khoa học,

Y tế…họ được t n dụng những tính n ng bảo m t trong môi trường đám mây c ng đồng

Trang 25

Hình 1.11 Đám mây cộng đồng (Community cloud)

 Ưu điểm của điện toán đám mây

o Ti t ki m i p í: quyết định sử dụng những dịch vụ trên đám mây, người dùng

hay doanh nghiệp sẽ tiết kiệm được khoản chi phí đầu tư và v n hành cơ sở h tầng Ngoài ra, họ còn tiết kiệm được chi phí mua phần mềm, chi phí bảo trì, chi phí thuê nguồn nhân lực v n hành…các dịch vụ điện toán đám mây cực kỳ phù hợp với các doanh nghiệp vừa và nhỏ

o S ti ợi: mọi người có thể sử dụng nhanh chóng các dịch vụ phần mềm thông

qua môi trường internet mà không cần cài đặt, cấu hình, điều tiện lợi nữa là những phần mềm này không đòi hỏi và quan tâm b n đang sử dụng phần cứng

t i máy tr m là gì, như: Gmail, Google Docs…mà chúng ta vẫn đang sử dụng hằng ngày

o S ti y: hầu hết các nhà cung cấp dịch vụ điện toán đám mây đảm bảo

24/7/365 và 99,99% hệ thống luôn sẵn sàng Họ luôn có cơ chế dự phòng cần thiết mỗi khi xảy ra sự cố, nếu m t máy chủ không ho t đ ng thì ngay l p tức sẽ

có các máy chủ khác thay thế, đảm bảo các dịch vụ luôn ho t đ ng, dữ liệu sẽ được sao lưu và phục hồi nhanh chóng

Trang 26

o K ả g mở rộ g i oạt: điện toán đám mây cung cấp các dịch vụ theo

yêu cầu của doanh nghiệp Doanh nghiệp chỉ cần trả thêm chi phí cho nhà cung cấp để có được các yêu cầu dịch vụ cụ thể (như nâng cấp CPU, RAM, ổ cứng…) khi cần nâng cấp, hoặc khi quy mô kinh doanh giảm họ cũng có thể đưa ra yêu cầu giảm thiểu các tài nguyên hiện có, điều này được thực hiện m t cách linh

c p để làm việc mà không cần kết nối internet Khi có kết nối trở l i, dữ liệu sẽ tự

đ ng đồng b lên đám mây, điều này vẫn đảm bảo được tốc đ và sự an toàn

o Liên quan đến quyền riêng tư Câu hỏi đặt ra là chúng ta có hoàn toàn tin tưởng vào Gmail khi đưa lên đó tất cả những thông tin quan trọng với khách hàng,

kể cả hợp đồng hay những thông tin tài khoản cá nhân? Chúng ta có hoàn toàn yên tâm khi lưu trữ trên mây tất cả những dữ liệu quan trọng của nhân viên, khách hàng với phần mềm quản lý nhân sự online? hay tất cả sổ sách, công nợ với phần mềm

kế toán online? Với cá nhân có thể việc này không mấy quan trọng nhưng với doanh nghiệp thì có Và đó cũng chính là điều mà doanh nghiệp luôn đắn đo có nên vào, hay không vào đám mây!

Như v y, điện toán đám mây cũng như bất kỳ m t l nh vực nào khác, đều có hai mặt lợi và h i Tuy nhiên, những lợi ích to lớn mà đám mây mang l i cho người dùng cá nhân cũng như doanh nghiệp là nó đã t o nên sự phát triển nhanh chóng và

Trang 27

quan tâm chính được những người đang di chuyển vào đám mây bày tỏ Các công

ty đang cung cấp các dịch vụ điện toán đám mây biết điều này và hiểu rằng nếu không có sự an toàn tin c y, thì việc kinh doanh của họ sẽ thất b i Vì v y, sự an toàn và sự riêng tư là những ưu tiên cao cho tất cả các thực thể điện toán đám mây.” Google, Microsoft, mazon…hiểu những điều này nên họ luôn có cách để làm an tâm, hài lòng, và giành được sự tin tưởng từ chính những khách hàng của họ

iện toán đám mây đang được phát triển và cung cấp bởi nhiều nhà cung cấp, trong đó có: mazon, Google, EX , và Salesforce cũng như những nhà cung cấp truyền thống như: Sun Microsystems, HP, IBM, Intel, Cisco và Microsoft Nó đang được nhiều người dùng cá nhân cho đến những công ty lớn như: General Electric, L'Oréal, Procter & Gamble, Valeo chấp nh n và sử dụng

1.3 Lý do đề tài

Hằng ngày, chúng ta vẫn đang được hưởng những lợi ích vô cùng to lớn thông qua việc sử dụng: Gmail, Dropbox, Google Docs, Microsoft Online…mà không cần cài đặt phần mềm t i máy tính cá nhân

Tuy nhiên, đó là đối với người dùng cuối, tác giả tiếp c n vấn đề đứng trên vai trò của những nhà phát triển ứng dụng, họ thường tốn rất nhiều thời gian để triển khai sản phẩm trong quá trình phát triển và đưa đến người dùng cuối

Cụ thể, để triển khai phần mềm trong quá trình xây dựng phục vụ kiểm thử, hoặc đưa sản phẩm tới người dùng cuối khi đã hoàn thiện nhà phát triển cần phải thực hiện các công việc sau:

 ầu tư chi phí mua sắm phần cứng: máy chủ, h tầng m ng

Trang 28

 ầu tư chi phí nguồn lực cài đặt và v n hành phần cứng cũng như phần mềm Những công việc này thường gây nhiều khó kh n cho các l p trình viên thiếu kinh nghiệm Doanh nghiệp cần phải tính toán mua máy chủ của hãng nào? cấu hình bao nhiêu thì đủ? cơ chế sao lưu và phục hồi như thế nào cho hợp lý? v.v…l p trình viên cũng gặp những khó kh n khi phải cài đặt như lựa hệ điều hành gì, và phần mềm nào là phù hợp, cấu hình ra sao, v.v…

Xuất phát từ những ưu điểm nền tảng PaaS mang l i đối với doanh nghiệp như:

 Sử dụng nền tảng đám mây PaaS giúp nhà phát triển phần mềm triển khai ứng dụng m t cách nhanh chóng

 Tiết kiệm chi phí nguồn lực để duy trì, cấu hình, v n hành máy chủ Mà trước đây đôi khi doanh nghiệp có thể xảy ra những rủi ro nếu không am hiểu về k thu t và phần cứng

 Khả n ng mở r ng tài nguyên: CPU, R M, storage…m t các dễ dàng, linh ho t theo nhu cầu iều mà họ rất khó thực hiện khi đã đầu tư mua phần cứng m t lần

 Dễ dàng theo dõi tài nguyên sử dụng, quản lý ứng dụng thông qua giao diện Bảng dưới đây sẽ mô tả sơ lược về quy trình xây dựng và triển khai ứng dụng truyền thống dựa trên nền tảng đám mây PaaS:

1 Xây dựng ứng dụng 1 Xây dựng ứng dụng

2 Mua thiết bị phần cứng 2 ng ký tài khoản PaaS

3 Cài đặt hệ điều hành 3 Lựa chọn cấu hình phần cứng, chọn

nền tảng triển khai, chọn các phần mềm mong muốn được tích hợp

4 Cài đặt framework và các thư 4 Click khởi t o và nh n về thông tin

Trang 29

5 Cài đặt và cấu hình máy chủ ứng

dụng

6 Cài đặt và cấu hình cơ sở dữ liệu,

các tools, v v…

7 Upload code l p trình

8 Tự cài đặt hoặc xây dựng phần

mềm theo dõi tài nguyên sử dụng

9 Không thể mở r ng, giảm bớt tài

nguyên sử dụng theo nhu cầu

Có nhiều nhà cung cấp nền tảng PaaS các l p trình viên có thể sử dụng như: Google App Engine, Amazon Elactis Beanstalk, Windows Azure Cloud Services, AppFog,…giúp họ rút ngắn thời gian triển khai phần mềm, tuy nhiên khi sử dụng

họ bị phụ thu c vào các dịch vụ của nhà cung cấp, h n chế nền tảng muốn triển khai, không thể tùy biến theo yêu cầu sử dụng Ví dụ: khi sử dụng Google pp Engine, người dùng bị giới h n m t số ngôn ngữ l p trình: Java, PHP, Go và Python (phiên bản 2.7 và cũ hơn), ngoài các dịch vụ như hàng đợi (queues), tìm kiếm (search), memcache, logging…người dùng khó có thể bổ sung thêm dịch vụ mong muốn khác, khi sử dụng Python, Google không cho phép tích hợp ngôn ngữ C vào

mã nguồn Ngoài ra, khi các ứng dụng đã triển khai trên Google pp Engine, người dùng muốn thay đổi cơ sở dữ liệu, hay chuyển sang m t nền tảng khác, điều này là rất khó kh n và phức t p do đang sử dụng các PIs do Google cung cấp Các open source như OpenShift, Heroku, Stackato…cũng giới h n m t số h tầng IaaS khác nhau (như Stackato chỉ triển khai trên mazon EC2 và HP Cloud), giới h n cơ sở

dữ liệu (Heroku không tích hợp MySQL mà phải sử dụng mazon RDS), khó kiểm soát mã nguồn để tự triển khai private cloud

Trang 30

Do đó, tác giả đề xuất giải pháp xây dựng nền tảng đám mây mã guồ mở,

nhằm hỗ trợ các l p trình viên đơn giản hóa quá trình triển khai phần mềm, cấu hình những dịch vụ cần thiết để có được hosting mong muốn, giải pháp có thể triển khai trên nhiều h tầng đám mây IaaS khác nhau, quan trọng hơn cả là các nhà phát triển được tự do sử dụng mã nguồn, tự phát triển và mở r ng theo yêu cầu sử dụng của mình Những lợi ích đó mang l i sẽ giúp họ t p trung nguồn lực cho việc xây dựng phần mềm mà không mất nhiều thời gian cho giai đo n triển khai

1.4 P ạm vi ủa đề tài

ề tài ứng dụng trong l nh vực công nghệ thông tin, mong muốn mang l i giá trị cho các l p trình viên, các nhà phát triển phần mềm Thông qua kết quả đề tài, họ có thể tự xây dựng cho mình m t môi trường triển khai phần mềm trên nền tảng đám mây IaaS của họ Do đó, ph m vi của đề tài được mô tả dưới đây:

 ối tượng sử dụng: l p trình viên, người quản trị hệ thống, nhà phát triển phần mềm, sinh viên và những người làm việc trong l nh vực công nghệ thông tin muốn

có m t nền tảng triển khai phần mềm, website trên nền điện toán đám mây

 Cấu hình nền tảng PaaS trên các h tầng đám mây d ng IaaS như: OpenStack, CloudStack, OpenNebula… nền tảng đám mây nguồn mở này cung cấp các Driver tương ứng để nhà phát triển dễ dàng cấu hình khi muốn triển khai trên h tầng IaaS của họ

 Hỗ trợ triển khai ứng dụng trên nền tảng Java, PHP Cài đặt phần mềm như các dịch vụ: MySQL, PHPMyAdmin, CMS Wordpress…

1.5 Y u ầu ầ t i

Với những mục tiêu được đưa ra ở trên, lu n v n sẽ tiến hành thực hiện các nhiệm vụ như sau:

1) Tìm hiểu những khái niệm tổng quan, các mô hình dịch vụ, mô hình triển khai,

ưu và nhược điểm của điện toán đám mây

Trang 31

đề xuất

3) Tìm hiểu, nghiên cứu và xây dựng nền tảng đám mây mã nguồn mở (tầng PaaS)

sử dụng công nghệ JavaServer Faces

4) Tìm hiểu OpenStack Python APIs để t o các VM theo cấu hình của người dùng 5) Tiến hành phân tích đánh giá hiệu n ng hệ thống để chứng minh tính khả thi của

giải pháp PaaS theo hai cách: sử dụng snapshot và khởi ch y shellscripts Từ đó,

đưa ra ưu, nhược điểm của các phương pháp này

1.6 Cô g g sử dụ g

Tầng IaaS, tác giả cài đặt phần mềm nguồn mở OpenStack phiên bản Liberty, sử dụng OpenStack Python PIs để khởi t o máy ảo, các công việc này được viết dưới d ng python file, từ ứng dụng sẽ triệu gọi các file này để thực thi khi người dùng t o mới hosting Tầng PaaS, sử dụng công nghệ JavaServer Face xây dựng ứng dụng giúp người sử dụng t o tài khoản và khởi t o hosting, cấu hình dịch

vụ phần mềm

1.6.1 Giới t i u ô g g JSF

JSF là viết tắt của JavaServer Faces, m t bản miêu tả k thu t giúp đơn giản

hóa việc phát triển giao diện cho các ứng dụng Web viết bằng Java bằng cách dùng

các thành phần dùng l i được (reusable components)

JSF là m t framework phát triển các ứng dụng Web viết bằng Java nhằm làm đơn giản hóa quá trình phát triển giao diện người dùng cho các ứng dụng J2EE

ể t o ra giao diện hiển thị, JSF dùng d ng cấu trúc cây của các thẻ, mỗi thẻ là m t

thành phần giao diện (component) và FacesServlet servlet sẽ thực hiện công đo n

chuyển đổi ra giao diện tương ứng cho người dùng với định d ng HTML.[10]

JSF bao gồm:

Trang 32

1 M t t p các hàm PI để biểu diễn các thành phần UI (giao diện người dùng)

và quản lí th ng thái của chúng, xử lí các sự kiện và kiểm tra dữ liệu đầu vào, qui

định việc di chuyển trang (page navigation), hỗ trợ tính đa ngôn ngữ và hỗ trợ cho người sử dụng (accessibility)

2 M t số thành phần (component) có sẵn

3 Hai thư viện chứa các thẻ tùy biến JSP (JavaServer Pages custom tag) để có

thể biểu diễn m t JavaServer Faces interface bên trong m t trang JSP

4 Mô hình sự kiện ở phía máy chủ (server-side event model)

5 Khả n ng quản lí tr ng thái

6 Managed Beans

Vò g đời ủa vi xử ý request

Hình 1.12 Vòng đời của ứng dụng JavaServer Faces

Vòng đời m t ứng dụng JSF được chia thành 6 bước như sau:

* Bước 1 - Restore View: hiển thị thay thế tất cả các component t o nên m t trang

cụ thể Nó có thể lưu trữ trên client (thông thường trong m t field ẩn trên trình duyệt) hoặc trên server (thông thường trong session)

Trang 33

m t giá trị được submit thay thế giá trị dữ liệu gốc từ người dùng Trong suốt bước này, framework ấn định giá trị được gửi (submit) dựa trên tham số gửi đi trong request Quá trình này gọi là decoding

* Bước 3 - Process Validation: trong bước này, JSF hỏi mỗi component có chắc

chắn rằng giá trị submit là có thể chấp nh n không Bởi vì giá trị được submit của mỗi component nh p vào được c p nh t bởi bước 2, component bây giờ có hầu hết

dữ liệu hiện thời của người dùng Trước khi validation xảy ra, giá trị được submit được chuyển đổi, bằng mỗi converter đã đ ng ký cho component hoặc converter mặc định Validation là sau khi xử lý trực tiếp bằng component hoặc công bố cho

m t hoặc nhiều validator

* Bước 4 - Update Model Values: bây giờ chúng ta đã chắc chắn về giá trị cục b

của các component đã được c p nh t chính xác và đúng kiểu, có thể chuyển đi với bất kỳ bean nào được t p hợp hoặc mô hình các đối tượng

* Bước 5 - Invoke Application: bây giờ các bean cần thiết và mô hình các đối

tượng được c p nh t, chúng ta có thể đi xuống việc công bố thông tin Trong bước này, JSF quảng bá các sự kiện cho bước này đối với bất kỳ listener nào đã được

đ ng ký

* Bước 6 - Render Response: t i thời điểm này, tất cả xử lý bởi framework và ứng

dụng đã trải qua Tất cả chờ được gởi đi trả lời cho user [10]

1.6.2 Giới t i u Ope Sta k

Đị g ĩa:

OpenStack là m t nền tảng hệ điều hành hỗ trợ quản trị các tài nguyên trong

mô hình điện toán đám mây M t trung tâm lưu trữ dữ liệu lớn có thể đuợc quản lý thống nhất khi sử dụng OpenStack, từ các đơn vị máy xử lý, đơn vị lưu trữ đến tài nguyên m ng có thể dễ dàng được kiểm soát thông qua m t giao diện đồng nhất

Trang 34

OpenStack là phần mềm nguồn mở, miễn phí sử dụng theo thỏa thu n bản quyền Apache 2.0

Hình 1.13 Nền tảng OpenStack

Hình 1.14 Sự ra đời của OpenStack

OpenStack là sản phẩm được t o bởi công ty Rackspace và N S , phiên bản đầu tiên được giới thiệu n m 2010 có tên là ustin Nhờ sự đóng góp của rất nhiều các công ty, tổ chức và người sử dụng trên toàn thế giới mà thường kỳ 6 tháng m t lần OpenStack đưa ra m t phiên bản mới Hình dưới đây mô tả tên các phiên bản và ngày được giới thiệu

Trang 35

Hình 1.15 Các phiên bản của OpenStack

Cá t à p ầ ủa Ope Sta k:

Hình 1.16 Các thành phần của OpenStack

Trang 36

Mô tả:

Dashboard: ứng dụng web ch y trên nền pache, cung cấp giao diện tương

tác cho dministrator để quản lý các dịch vụ như: Instances, Images, Networks…

Computer (Nova): là thành phần quản lý các máy ảo (Virtual Computer

Instance), hỗ trợ nhiều công nghệ ảo hóa: Xen, KVM, QEMU, vSphere, Hyper-V

Networking (Neutron): cung cấp dịch vụ m ng (Network as a Service) cho

các dịch vụ khác của OpenStack Cho phép t o private network, firewall, DHCP, VPN, Load Balancing…

Storage (Swift): cung cấp dịch vụ lưu trữ file, khả n ng mở r ng, sao lưu dự

phòng, phân tán

Storage (Cinder): cung cấp thiết bị lưu trữ ảo, có khả n ng mở r ng, phân

tán

Identity service (Keystone): cung cấp dịch vụ xác thực người dùng

Keystone hỗ trợ các plug-in khác nhau như: SQL Database (MySQL hoặc PostgreSQL), PAM (Pluggable Authentication Module), LD P Nhiều phiên bản cài đặt sử dụng SQL Database

Image Service (Glance): dịch vụ lưu trữ và truy xuất ổ đ a ảo, người quản trị

có thể t o sẵn các image để khởi t o máy ảo, hoặc sao lưu máy ảo nhanh chóng bằng tính n ng t o snapshots

Telemetry service (Ceilometer): cung cấp dịch vụ giám sát và thống kê,

như mức đ sử dụng hệ thống, tài nguyên đã sử dụng của các máy ảo, phục vụ cho việc tính toán số tiền phải trả từ việc sử dụng tài nguyên của khách hàng với nhà cung cấp

Orchestration service (Heat): cung cấp các template cho những ứng dụng

phổ biến, template đưa ra cấu hình các thành phần compute, storage, networking để đáp ứng yêu cầu của ứng dụng [5]

Trang 37

Giới t i u:

Như chúng ta đã biết, OpenStack là m t giải pháp mã nguồn mở để triển khai IaaS cloud, nó cung cấp m t giao diện (Dashboard) để người quản trị dễ dàng quản

lý các tài nguyên: Instances, Images, Networks…

Tuy nhiên, để xây dựng nền tảng PaaS khởi t o hosting theo yêu cầu người

sử dụng, tác giả cần tự đ ng hóa các công việc theo lựa chọn của người dùng như:

o Khởi t o máy ảo theo nền tảng triển khai phần mềm

o Cấp phát tự đ ng địa chỉ IP

o Tự đ ng sinh Keypair phục vụ việc đ ng nh p

o Tự đ ng cài đặt các phần mềm dịch vụ theo yêu cầu trên máy ảo

Do đó, giao diện OpenStack cung cấp chỉ sử dụng để quản trị dễ dàng các tài nguyên mà thôi Có m t vài lựa chọn để có thể thực thi các hành đ ng trên m t cách

tự đ ng:

o Sử dụng OpenStack Representation State Transfer (REST) PI

o Sử dụng các shell scripts sau đó gọi bằng dòng lệnh

o Sử dụng OpenStack Python APIs

Tác giả đã lựa chọn sử dụng OpenStack Python PIs để tự đ ng hóa các yêu cầu Bằng cách t o ra các files python chứa các yêu cầu khởi t o VM của người sử dụng,

từ Java web chúng ta dễ dàng triệu gọi để thực thi các files này

OpenStack Python APIs:

Như tác giả mô tả trên hình 1.16, OpenStack gồm m t t p hợp các dịch vụ, mỗi m t dịch vụ đều có tên chính thức kèm theo mã khác nhau, đồng thời OpenStack cung cấp Python PIs cho mỗi dịch vụ đó

Tên các package tương ứng với dịch vụ:

Trang 38

ể thực hiện yêu cầu lu n v n, tác giả chủ yếu sử dụng python-novaclient Cách

thức cài đặt, cần thực thi lệnh: $ pip install python-novaclient

Sử dụng python-novaclient chúng ta có thể:

- Lấy về danh sách các Instances

- Lấy về m t instance thông qua tên, xóa m t instance

import novaclient.v1_1.client as nvclient

from credentials import get_nova_creds

Trang 39

để sinh ra m t keypair mới.

Trang 40

CHƯ NG 2: PHÂN TÍCH THI T K H THỐNG

Chương 2 tác giả tiếp cận những yêu cầu dưới góc nhìn kỹ thuật, tiến hành phân tích yêu cầu một nền tảng PaaS cần cung cấp, từ đó xác định giải pháp của

hệ thống mà tác giả đề xuất, thiết kế tổng thể, các mô hình kiến trúc, thiết kế dữ liệu và chi tiết các chức năng

2.1 P â tí y u ầu

2.1.1 Yêu cầu nền tảng PaaS

Platform as a Service (PaaS) cung cấp cho người sử dụng giải pháp nền tảng điện toán như m t dịch vụ để phát triển, quản lý ứng dụng trên nền tảng web, giúp

họ dễ dàng triển khai và đưa phần mềm đến người dùng cuối nhanh chóng

M t nền tảng đám mây cần cung cấp cho người sử dụng những dịch vụ cần thiết sau:

 Hệ điều hành: Ubuntu, Cirros, Centos, Windows server…

 Nền tảng triển khai ứng dụng, ví dụ: Java, PHP, Nodejs…

 Các ngôn ngữ l p trình: Java, PHP, Python…

 Hệ quản trị cơ sở dữ liệu: MySQL, MongoDB, DB2, PostgreSQL…

 Giao diện hỗ trợ người dùng cấu hình phần mềm và khởi t o máy ảo

 Dịch vụ theo dõi thông tin hosting gồm: tài nguyên phần cứng CPU, R M, storage…đo lường tài nguyên đã sử dụng

 Cơ chế tự đ ng co giãn (mở r ng hoặc giảm bớt) tài nguyên theo nhu cầu sử dụng của người dùng

 Cung cấp các PIs cho l p trình viên: giúp họ có thể dễ dàng truy xuất và quản lý tài nguyên h tầng IaaS, hay cung cấp SDK (Software Development Kit) để xây dựng và triển khai ứng dụng trong nền tảng đó

Những chức n ng m t nền tảng PaaS cần cung cấp trên là cơ sở để tác giả xây dựng nền tảng mã nguồn mở cho người sử dụng

Ngày đăng: 27/02/2021, 12:38

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w