Ở mô hình điện toán, mọi lĩnh vực liên quanđến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", nó cho phépkhác hàng truy cập vào các dịch vụ của một nhà cung cấp nào đó "t
Trang 1LỜI CẢM ƠN
Để hoàn thiện bài báo cáo thực tập này đầu tiên em gửi lời cảm ơn đến lãnhđạo khoa Khoa Công Nghệ Thông Tin Trường Đại Học Hải Phòng,cùng toàn thểcác thầy cô giáo đã tận tình giảng dạy trang bị cho em những kiến thức quý báutrong suốt quá trình học tập và rèn luyện tại trường
Đặc biệt em gửi lời cảm ơn chân thành đến Th.S Đào Ngọc Tú – Giảng viên
đã nhiệt tình hướng dẫn, giúp đỡ em hoàn thành tốt bài báo cáo, và đã luôn cungcấp các tài liệu tham khảo cho em
Qua đây em xin cảm ơn Công ty Cổ Phần Thương Mại và Dịch vụ KTD đã tạođiều kiện cho em thực tập, cung cấp các thiết bị để em hoàn thành cuốn đồ án Emcũng xin cảm ơn thầy Đào Ngọc Tú – Giảng viên hướng dẫn em thực tập tại trường
và toàn thể các thầy, cô trong Khoa Công Nghệ Thông Tin đã giúp đỡ và tạo điềukiện cho em
Em xin cám ơn sự đóng góp ý kiến của thầy cô và bạn bè trong suốt quá trìnhhọc tập và thực tập, để em hoàn thành tốt bài báo cáo này
Xin chân thành cảm ơn !
Trang 2MỤC LỤC
LỜI CẢM ƠN I
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY 2
1.1 Lịch sử 2
1.2 Khái niệm 2
1.3 Các đặc trưng của điện toán đám mây 3
1.4 Các vấn đề có thể giải quyết bằng điện toán đám mây 6
1.5 So sánh công nghệ điện toán đám mây với công nghệ khác 6
1.6 Mô hình kiến trúc điện toán đám mây 7
1.6.1 Thành phần 7
1.6.2 Cách thức hoạt động của điện toán đám mây 8
1.7 Mô hình kiến trúc 8
1.7.1 Dịch vụ hạ tầng IaaS (infrastructure as a service) 9
1.7.2 Dịch Vụ Hạ Tầng PaaS (Platform Infrastructure As A Service) 11
1.7.3 Dịch Vụ Phần Mềm Saas (Software As A Service ) 13
1.8 Các mô hình triển khai 15
1.8.1 Đám mây công cộng 15
1.8.2 Đám mây riêng 16
1.8.3 Đám mây lai 17
1.8.4 Đám mây cộng đồng 18
CHƯƠNG 2: NHỮNG VẤN ĐỀ TRONG ĐIỆN TOÁN ĐÁM MÂY 19
2.1 Kỹ thuật trong đám mây 19
2.2 Lưu trữ trong đám mây 20
2.3 Kiến trúc hệ thống 20
2.4 Hoạt động của hệ thống điện toán đám mây 21
Trang 32.5 Sự an toàn trên điện toán đám mây 22
2.5.1 Vấn đề an toàn liên quan đến kiến trúc của điện toán ĐÁM MÂY 22
2.5.2 Vấn đề quản lí an toàn hệ thống của điện toán đám mây 25
2.6 Biện pháp an toàn trong đám mây 25
2.7 Ưu nhược điểm của mô hình điện toán đám mây 26
CHƯƠNG III: CÔNG NGHỆ ẢO HÓA 28
3.1 Khái niệm 28
3.2 Lợi ích của ảo hóa 28
3.3 Các phương pháp ảo hóa phổ biến 28
3.3.1 Ảo hóa máy chủ (SERVER VITUALIZATION) 28
3.3.2 Ảo hóa ứng dụng (APPLICATION VIRTUALIZATION) 29
3.3.3 Ảo hóa mạng 30
3.3.4 Ảo hóa lưu trữ 31
CHƯƠNG IV: THỰC NGHIỆM 32
4.1 Khảo sát và phân tích nhu cầu 32
4.2 Mục tiêu 32
4.2.1 Lý do đề xuất giải pháp 32
4.2.2 Mục tiêu của giải pháp: 33
4.3 Nội dung 33
4.3.1 Giới thiệu phần mềm 33
4.3.2 Đặc điểm 34
4.3.4 Kiến trúc cloudstack: 34
4.4 Cách cài đặt 37
4.4.1Yêu cầu phần cứng 37
KẾT LUẬN VÀ XU HƯỚNG PHÁT TRIỂN 45
DANH MỤC TÀI LIỆU THAM KHẢO 46
Sinh viên: Hoàng Thị Nhung – CNTT K13Page iii
Trang 4DANH MỤC CÁC HÌNH V
Hình 1.1: Mô hình một kiến trúc ảo hóa sử dụng để xây dựng một đám mây 4
Hình 1.2: Các dịch vụ có thể được cung cấp trên nền điện toán đám mây 6
Hình 1.3: IaaS cho phép nhà cung cấp dịch vụ thuê những tài nguyên phần cứng 9
Hình 1.4: Mô hình phân lớp của kiến trúc IAAS 10
Hình 1.5 :PaaS cho phép khách hàng truy cập vào một nền tảng trên nên điện toán đám mây 11
Hình 1.6: Mô hình dịch vụ SaaS 14
HÌNH 1.7 CÁC MÔ HÌNH ĐIỆN TOÁN ĐÁM MÂY 15
HÌNH 1.8: MÔ HÌNH ĐÁM MÂY CÔNG CỘNG 15
Hình 1.9: Các thành phần trong đám mây riêng 16
Hình 1.10 Mô hình đám mây lai 17
Hình 1.11: Mô hình đám mây cộng đồng 18
Hình 2.1: Những thành phần của kỹ thuật trong đám mây 19
HÌNH 2.2: KIẾN TRÚC MẪU ĐIỆN TOÁN ĐÁM MÂY 21
Hình 2.3: Khách hàng thuê một máy chủ ảo làm máy chủ cơ sở dữ liệu 22
Hình 2.5: Mã hóa và xác thực 26
Hình 3.1 Ảo hóa mạng 30
Hình 4.1 : Mô hình triển khai CloudStack đơn giản 35
Hình 4.2 : Mô hình kiến trúc CloudStack 35
Hình 4.3 : Các thành phần kiến trúc CloudStack 36
Hình 4.4 : Mô hình Cluster 36
HÌNH 4.5 :GIAO DIỆN ĐĂNG NHẬP 44
Hình 4.6 : Giao diện chính của hệ thống CloudStack 44
Trang 5SSH Secure ShellAWS Amazon Web ServicesAPI Application Programming InterfaceQoS Quality of Service
VMM Virtual Machine MonitorHTML HyperText Markup Language
Sinh viên: Hoàng Thị Nhung – CNTT K13Page v
Trang 6MỞ ĐẦU
1 Lý do chọn đề tài
Trên thế giới ngày càng có nhiều công ty đang chuyển dịch theo hướng cácgiải pháp công nghệ thông tin bao gồm điện toán đám mây Trước hết, điện toánđám mây có thể cắt giảm các chi phí liên quan đến việc cung cấp các dịch vụ côngnghệ thông tin Có thể giảm cả vốn và chi phí vận hành bằng cách nhận được tàinguyên chỉ khi sử dụng chúng và chỉ trả tiền cho những gì sử dụng
Ngoài ra điện toán đám mây, làm giảm một số các khoản chi tiêu bắt buộckết hợp với việc quản lý nguồn tài nguyên khác nhau trên toàn doanh nghiệp Cuốicùng, các mô hình điện toán đám mây cung cấp sự linh hoạt trong kinh doanh Nhờkhả năng điều chỉnh hoặc mở rộng các doanh nghiệp có thể đáp ứng dễ dàng hơnkhi nhu cầu về hạ tầng thay đổi
Hiểu theo cách khác, điện toán đám mây là sự thực hiện kết hợp nhiều côngnghệ hiện có (SOA-Service Oriented Architecture, ảo hóa) với những ý tưởng mới
để tạo ra một giải pháp công nghệ thông tin đầy đủ
Với những ưu điểm trên việc áp dụng mô hình điện toán đám mây là một hướnglựa chọn tất yếu trong tương lai
2 Mục đích nghiên cứu
Tìm hiểu về điện toán đám mây
Triển khai công nghệ điện toán đám mây trên môi trường giả lập sử dụng phầnmềm CloudStack
3 Đối tượng và phạm vi nghiên cứu
Nghiên cứu mô hình cung cấp dịch vụ truyền thống và mô hình điện toán đámmây
Nghiên cứu triển khai các ứng dụng trên mô hình điện toán đám mây
4 Phương pháp nghiên cứu
Tìm hiểu các tài liệu liên quan về điện toán đám mây và các dịch vụ đượccung cấp trên nên điện toán đám mây
Triển khai thực nghiệm trên môi trường ảo VMware để kiểm chứng lý thuyết
đã nghiên cứu được
Trang 7CHƯƠNG 1 TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY
1.1 Lịch sử
Khái niệm về điện toán đám mây xuất hiện từ những năm 1960 trở lại đây, khiJohn McCarthy phát biểu rằng “một ngày nào đó tính toán được tổ chức như mộttiện ích công cộng” Các đặc điểm của điện toán đám mây tạo ra như khả năng cogiản, cung cấp như một tiện ích trực tuyến, với khả năng xem như vô hạn
Thuật ngữ “đám mây” lấy trong kỹ thuật điện thoại tại các công ty viễn thông.Các học giả đầu tiên sử dụng thuật ngữ ‘điện toán đám mây” là thuật ngữ trong mộtbài giảng năm 1997 bởi Ramnath Chellappa
Amazon đã góp vai trò quan trọng trong sự phát triển của điện toán đám mâybằng cách hiện đại hóa trung tâm dữ liệu Hầu hết các mạng máy tính được tạo rakhi sử dụng ít nhất là 10% năng lực của nó tại một thời điểm Với kiến trúc điệntoán đám mây giúp tối ưu năng lực làm việc của máy chủ Amazon bắt đầu pháttriển sản phẩm để cung cấp điện toán đám mây cho khách hàng và tung ra dịch vụWeb Amazon (AWS) như một tiện ích máy tính trong năm 2006
Trong năm 2007, Google, IBM và một số trường đại học bắt tay vào nghiêncứu dự án điện toán đám mây với quy mô lớn Vào đầu năm 2008, Eucalyptus đãtrở thành mã nguồn mở đầu tiên cho AWS API, nên tảng tương thích cho việc triểnkhai các đám mây riêng tư Đầu năm 2008, OpenNebula tài trợ dự án kho lưu trữ vàtrở thành phần mềm mã nguồn mở đầu tiên triển khai đám mây riêng, đám mây lai
và liên đoàn các đám mây Trong năm đó, những nỗ lực đã được tập trung vào việccung cấp chất lượng dịch vụ (QoS) để đảm bảo đám mây hoạt động, thuộc dự áncủa ủy ban IRMOS tài trợ Đến giữa năm 2008, Gartner nhận thấy tiềm năng củađiện toán đám mây có thể được đưa ra làm dịch vụ cung cấp cho khách hàng
1.2 Khái niệm
Điện toán đám mây (Thuật ngữ tiếng Anh: Cloud Computing, hay còn biết đếnvới tên gọi “Điện toán máy chủ ảo”) là mô hình máy tính dựa trên nền tảng pháttriển của Internet Điện toán đám mây là sự nâng cấp từ mô hình máy chủmainframe sang mô hình client-server Ở mô hình điện toán, mọi lĩnh vực liên quanđến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", nó cho phépkhác hàng truy cập vào các dịch vụ của một nhà cung cấp nào đó "trong đám mây"
Trang 8mà không cần phải có các kiến thức, kinh nghiệm về công nghệ, cũng như khôngcần quan tâm đến các cơ sở hạ tầng bên trong.Tài nguyên, dữ liệu, phần mềm và cácthông tin liên quan đều được quản lý trên các máy chủ (chính là các “đám mây”).
“Ứng dụng điện toán đám mây” là những ứng dụng trực tuyến trên Internet Trìnhduyệt là nơi ứng dụng hiện hữu và vận hành còn dữ liệu được lưu trữ và xử lý ởmáy chủ của nhà cung cấp ứng dụng đó
Điện toán đám mây tính toán, sử dụng phần mềm, truy cập dữ liệu và dịch vụlưu trữ mà khách hàng không cần biết vị trí địa lý và cấu hình của hệ thống cungcấp dịch vụ
Viện Tiêu chuẩn và Công nghệ (NIST) đã đưa ra nghĩa định nghĩa cụ thể:
“Điện toán đám mây là một mô hình cho phép truy cập mạng thuận tiện, theonhu cầu đến một kho tài nguyên điện toán dùng chung, có thể định cấu hình (ví dụnhư mạng, máy chủ, lưu trữ, ứng dụng) có thể được cung cấp và thu hồi một cáchnhanh chóng với yêu cầu tối thiểu về quản lý hoặc can thiệp của nhà cung cấp dịchvụ.[1]”
1.3 Các đặc trưng của điện toán đám mây
Điện toán đám mây nói chung và các dịch vụ và giải pháp cũng như nền tảngchạy trên nền điện toán đám mây có các đặc trưng sau:
Tính tự phục vụ theo nhu cầu
Điện toán đám mây có thể được định nghĩa một cách đơn giản như là sự sửdụng tài nguyên tính toán có khả năng thay đổi theo nhu cầu được cung cấp giốngnhư một dịch vụ từ bên ngoài với chi phí phải trả cho mỗi lần sử dụng Đám mâyđược đánh giá cao và sẵn sàng đáp ứng cho các nhu cầu cần thiết của ứng dụng Điện toán đám mây cũng có thể được gọi là tính toán tiện ích hay là tính toán lưới(grid computing)
Điện toán đám mây là mô hình dịch chuyển trong cách thức làm thế nào chúng
ta cung cấp kiến trúc và khả năng mở rộng củsa các ứng dụng Trong quá khứ, cáccông ty thành công thường dành thời gian quý báu và nguồn lực xây dựng để xâydựng cơ sở hạ tầng[2]
Trang 9Tính truy suất diện rộng
Mọi thứ được xem như trong suốt với người sử dụng và họ có thể truy cập vàomọi tài nguyên trên đám mây nếu được phép vào bất cứ lúc nào, bất cứ nơi đâu vàtrên bất cứ phương tiện nào cho phép[3]
Khả năng dùng chung tài nguyên
Để hiểu rõ hơn về khả năng dùng chung tài nguyên trên đám mây ta quan sát
hình dưới đây , mô tả cấu trúc đơn giản của một đám mây.
để xây dựng một cơ sở hạ tầng phục vụ cho một đám mây, nhà cung cấp dịch
vụ sử dụng rất nhiều những thiết bị phần cứng khác nhau, nhưng tất cả được sửdụng chung và thống nhất trên cơ sở của công nghệ ảo hóa (Virtual technology) đểtạo ra một kiến trúc ảo hóa (Virtual Infrastructure) trên cơ sở đó xây dựng nên mộtđám mây cung cấp dịch vụ
Các kiến trúc phần cứng này là trong suốt đối với người sủ dụng và mọi dịch vụ,mọi nền tảng triển khai trên 1 đám mây đều sủ dụng chung nguồn tài nguyên này
Hình 1.1: Mô hình một kiến trúc ảo hóa sử dụng để xây dựng một đám mây
Trang 10Khả năng co dãn
Trong hầu hết các trường hợp thì cách tiếp cận tài nguyên mạng theo kiểu cũ(cấp “cứng” một băng thông và dung lượng sử dụng nhất định trên server) thì sẽphát sinh những vấn đề sau::
Để lại một lượng lớn các tài nguyên tính toán không được sử dụng làm tiêutốn không gian trong các trung tâm dữ liệu lớn
Bắt buộc một ai đó phải trông giữ các máy chủ
Gắn liền với chi phí năng lượng
- Với điện toán đám mây, các máy tính dư thừa có thể được đưa vào sử dụng
và được sinh lời bằng cách bán cho khách hàng Sự chuyển đổi của việc tính toán
và cơ sở hạ tầng công nghệ thông tin vào một tiện ích, nó có tác dụng trong cáctrường hợp hoặc một số mức độ cho phép Điều đó mang ý nghĩa nỗ lực cạnh tranhdựa trên ý tưởng hơn là dựa trên các tài nguyên tính toán
- Các tài nguyên ứng dụng của bạn và các hệ thống công nghệ thông tin thì rất
cần thiết (để đáp ứng nhu cầu ngày càng lớn cho lưu trữ, cho tài nguyên tính toán,cho các hệ thống nhắn tin và cho các cơ sở dữ liệu) Bạn có thể trả chi phí hạ tầng
cơ sở này cho nhà cung cấp nào mà cung cấp giá và dịch vụ tốt nhất Đó là một ýtưởng đơn giản nhưng cuộc cách mạng về tư duy không phải là hoàn toàn mới.Điều này bây giờ là đứng đầu trong các xu hướng công nghệ hiện đại bởi vì môitrường điện toán đám mây được Amazon đưa ra đầu tiên
Khả năng điều tiết dịch vụ
Chính nhờ khả năng co giãn để cấp phát một cách hợp lý nguồn tài nguyêndùng chung ở trên mà cách dịch vụ cũng nhờ đó được điều tiết sử dụng tài nguyênmột cách chính xác và phù hợp
Lấy ví dụ một đám mây cung cấp 2 dịch vụ là A và B Tại một thời điểm, dịch
vụ A được nhiều người sử dụng hơn dịch vụ B Thì tại thời điểm đó đám mây sẽ tựđộng điều tiết để dịch vụ A được ưu tiên sử dụng nguồn tài nguyên dùng chung hơn
so với dịch vụ B nhằm cung cấp dịch vụ một cách ổn định, tránh tình trạng nghẽnxảy ra trên dịch vụ A và dư thừa tài nguyên trên dịch vụ B Điều này là hoàn toànhợp lý và thông minh
Trang 111.4 Các vấn đề có thể giải quyết bằng điện toán đám mây
Vấn đề về lưu trữ dữ liệu
Dữ liệu được lưu trữ tập trung ở các kho dữ liệu khổng Các công ty lớnnhư Microsoft, Google có hàng chục kho dữ liệu trung tâm nằm rải rác khắp nơitrên thế giới Các công ty lớn này sẽ cung cấp các dịch vụ cho phép doanh nghiệp
có thể lưu trữ và quản lý dữ liệu của họ trên các kho lưu trữ trung tâm
Vấn đề về sức mạnh tính toán
Có 2 giải pháp chính:
- Sử dụng các siêu máy tính (super-computer) để xử lý tính toán
- Sử dụng các hệ thống tính toán song song, phân tán, tính toán lưới (grid
computing)
Vấn đề về cung cấp tài nguyên và phần mềm
Cung cấp các dịch vụ như IaaS (infrastructure as a service), PaaS (platform as
a service), SaaS (software as a service)
Hình 1.2: Các dịch vụ có thể được cung cấp trên nền điện toán đám mây
1.5 So sánh công nghệ điện toán đám mây với công nghệ khác
Dưới đây chúng ta có một bảng so sánh tổng thể về các loại hình tính toán hàngkhối để thấy được mục tiêu chính của các dạng tính toán lớn:
Trang 12Tên hệ thống xử lý Mục tiêu hướng đến Ghi chú
Tính toán song song
Khai thác tối đa hiệu suấtcủa hệ thống ( về tốc độ
và tính hiệu quả )
Thường là các hệ thốngchia sẻ bộ nhớ
Điện toán đám mây
Cung cấp tài nguyên ,làm back – end cho hệthống Front – end thiếutài nguyên (bộ xử lí, bộnhớ , lưu trữ ) như smartphone, tablet
Client (lớp khách hàng): Lớp Client của điện toán đám mây bao gồm phần
cứng và phần mềm, để dựa vào đó, khách hàng có thể truy cập và sử dụng các ứngdụng/dịch vụ được cung cấp từ điện toán đám mây Chẳng hạn máy tính và đườngdây kết nối Internet (thiết bị phần cứng) và các trình duyệt web (phần mềm)…
Application (lớp ứng dụng): Lớp ứng dụng của điện toán đám mây làm nhiệm
vụ phân phối phần mềm như một dịch vụ thông qua Internet, người dùng không cầnphải cài đặt và chạy các ứng dụng đó trên máy tính của mình, các ứng dụng dễ dàngđược chỉnh sữa và người dùng dễ dàng nhận được sự hỗ trợ
- Các hoạt động được quản lý tại trung tâm của đám mây, chứ không nằm ởphía khách hàng (lớp Client), cho phép khách hàng truy cập các ứng dụng từ xathông qua Website
Trang 13- Người dùng không còn cần thực hiện các tính năng như cập nhật phiên bản,bản vá lỗi, download phiên bản mới… bởi chúng sẽ được thực hiện từ các “đámmây”.
Platform (lớp nền tảng): Cung cấp nền tảng cho điện toán và các giải pháp của
dịch vụ, chi phối đến cấu trúc hạ tầng của “đám mây” và là điểm tựa cho lớp ứngdụng, cho phép các ứng dụng hoạt động trên nền tảng đó Nó giảm nhẹ sự tốn kémkhi triển khai các ứng dụng khi người dùng không phải trang bị cơ sở hạ tầng (phầncứng và phần mềm) của riêng mình
Infrastructure (lớp cơ sở hạ tầng): Cung cấp hạ tầng máy tính, tiêu biểu là môi
trường nền ảo hóa Thay vì khách hàng phải bỏ tiền ra mua các server, phần mềm,trung tâm dữ liệu hoặc thiết bị kết nối… giờ đây, họ vẫn có thể có đầy đủ tàinguyên để sử dụng mà chi phí được giảm thiểu, hoặc thậm chí là miễn phí Đây làmột bước tiến hóa của mô hình máy chủ ảo (Virtual Private Server)
Server (lớp server - máy chủ): Bao gồm các sản phẩm phần cứng và phần mềm
máy tính, được thiết kế và xây dựng đặc biệt để cung cấp các dịch vụ của đám mây.Các server phải được xây dựng và có cấu hình đủ mạnh để đám ứng nhu cầu sửdụng của số lượng động đảo các người dùng và các nhu cầu ngày càng cao của họ
1.6.2 Cách thức hoạt động của điện toán đám mây
Hai thành phần quan trọng của kiến trúc điện toán đám mây được biết đến làfront end và back end
Front end là phần phía khách hàng dùng máy tính Nó bao gồm hệ thống mạngcủa khách hàng (hoặc máy tính) và các ứng dụng được sử dụng để truy cập vào đámmây thông qua giao diện người dùng có thể là một trình duyệt web
Back end chính là đám mây, bao gồm tất cả các tài nguyrn cần thiết cho các dịch
vụ của điện toán đám mây Nó bao gồm Data Storage…
1.7 Mô hình kiến trúc
Dịch vụ ĐTĐM rất đa dạng, bao gồm tất cả các lớp dịch vụ điện toán từ cungcấp năng lực tính toán trên lưới áy chủ hiệu năng cao hay các máy chủ ảo, khônggian lưu trữ dữ liệu hay một hệ điều hành, một công cụ lập trình, hay một ứng dụng
kế toán
Các mô hình dịch vụ ĐTĐM phổ biến nhất có thể phân chia thành 3 nhóm[5]:
Trang 141.7.1 Dịch vụ hạ tầng IaaS (Infrastructure as a Service)
IAAS là một mô hình dịch vụ mà sẽ cung cấp dịch vụ cơ sở hạ tầng Các thiết
bị đó bao gồm kho dữ liệu, phần cứng, máy chủ (server) và các thành phầnnetworking Nhà cung cấp sẽ làm chủ các thiết bị và chịu trách nhiệm cho việc hoạtđộng và bảo trì hệ thống Khách hàng sẽ trả tiền trên các dịch vụ đó
Cũng như với các dịch vụ nền tảng, ảo hóa là một phương pháp thường được sửdụng để tạo ra bản phân phối các nguồn tài nguyên theo yêu cầu Các nhà sản xuấtlớn cung cấp cơ sở hạ tầng bao gồm IBM Bluehouse, VMware, Amazon EC2,Microsoft Azure Platform, Sun ParaScale Cloud Storage
Hình 1.3: IaaS cho phép nhà cung cấp dịch vụ thuê những tài nguyên phần cứng
Các dịch vụ cơ sở hạ tầng tập trung vào vấn đề trang bị cho các trung tâm dữliệu bằng cách đảm bảo công suất điện toán khi cần thiết Trên thực tế các kỹ thuật
ảo hóa thường được sử dụng trong tầng này, nên có thể thấy rõ sự tiết kiệm chi phíkhi sử dụng tài nguyên hệ thống
Trang 15Hình vẽ bên dưới chứng minh cho mô hình phân lớp của kiến trúc IAAS :
Hình 1.4: Mô hình phân lớp của kiến trúc IAAS
Khi thực thi một yêu cầu từ người sử dụng, công việc đó có thể thực hiện songsong và chia sẽ tài nguyên để đáp ứng yêu cầu càng nhanh càng tốt Hoặc là có thểtruy cập các kho dữ liệu khác nhau để có thể thỏa mãn nhu cầu của khách hàng.IAAS trong cloud phải đảm bảo về performance và hiệu quả chi phí trong khi bảotrì các điều khiển trung tâm và khả năng tăng tài nguyên để bảo đảm dịch vụ không
bị gián đoạn
Có 03 thành phần chính trong kiến trúc của hệ thống cloud Đó là: cloudmanager, cluster manager và computer manager
- Cloud manager là điểm truy cập vào cloud nơi mà các nhà thuê bao đăng ký tài
khoản, quản lý các tài nguyên mà họ thuê từ cloud và truy cập dữ liệu Nó thực hiệnviệc truy cập tài nguyên ở mức đầu tiên (top level) Nó quyết định có đủ tài nguyên
để đáp ứng yêu cầu khách hàng hay không và cluster manager sẽ thực hiện yêu cầu.Cloud manager cũng thực hiện các luật trên cloud đối với yêu cầu từ khách hàng
- Cluster manager: chịu trách nhiệm vận hành các máy thông qua network.
Cluster manager sẽ nhận lệnh / queries truy cập tài nguyên từ cloud manager và xácđịnh tài nguyên nào có thể đáp ứng yêu cầu từ người sử dụng Sau đó hiện thựctruy cập tài nguyên
- Computer manager: hợp tác với hypervisor chạy trên mỗi hệ thống máy tính
trong một cluster Trong việc đáp ứng các queries từ Cluster manager Clustermanager trả về thông tin trạng thái liên quan đến tài nguyên được sử dụng và có sẵn
Trang 16mà có thể được sử dụng.
1.7.2 Dịch vụ hạ tầng PaaS (Platform Infrastructure as a Service)
Đây là tầng cung cấp dịch vụ nền tảng để chạy các ứng dụng Các ứng dụng này
có thể đang chạy trong đám mây hay chạy trong một trung tâm dữ liệu truyền thống
Để đạt được khả năng mở rộng cần thiết trong một đám mây, các dịch vụ thườngđược ảo hóa Việc ảo hóa được các nhà sản xuất lớn giới thiệu như IBM®WebSphere® Application Server virtual images, Amazon Web Services, Boomi,Cast Iron, và Google App Engine Các dịch vụ nền tảng cho phép khách hàng chạycác ứng dụng dựa trên cơ sở hạ tầng dịch vụ được bên thứ ba cung cấp
Nền tảng là nơi cung cấp tất cả các nguồn lực cần thiết để xây dựng các ứngdụng và dịch vụ hoàn toàn từ Internet, mà không cần phải tải về hay cài đặt phầnmềm
Hình 1.5 :PaaS cho phép khách hàng truy cập vào một nền tảng trên nên điện toán đám mây.
Dịch vụ nền tảng bao gồm thiết kế ứng dụng, phát triển, thử nghiệm, triển khai,
và hosting Các dịch vụ khác bao gồm khả năng tích hợp dịch vụ web, cơ sở dữ liệutích hợp, bảo mật, khả năng mở rộng, lưu trữ, quản lý và phiên bản
Một lỗi phía nhà cung cấp nên tảng dẫn tới không còn khả năng tương tác vớikhách hành, buộc phải chuyển qua nhà cung cấp khác Trường hợp người dùng tạomột ứng dụng với một nhà cung cấp điện toán đám mây và quyết định chuyển đếnmột nhà cung cấp khác, có thể ứng dụng không hoạt động được hoặc sẽ phải trả mộtmức giá cao để ứng dụng có thể hoạt động lại Nếu nhà cung cấp không còn cungcấp dịch vụ thì ứng dụng và dữ liệu của khách hàng sẽ bị mất
Nền tảng hướng dịch vụ thường cung cấp một giao diện người dùng dựa trênHTML hoặc JavaScript
Trang 17Nền tảng hướng dịch vụ hỗ trợ phát triển giao diện web như Simple ObjectAccess Protocol (SOAP) và REST(Representational State Tranfer), cho phép xâydựng nhiều dịch vụ web.
Tùy chọn PaaS có ba loại khác nhau:
Add-on development facilities: Điều này cho phép các ứng dụng SaaSđược lựa chọn Thông thường, các nhà phát triển PaaS và khách hàng đượcyêu cầu đăng ký cho các tiện ích ứng dụng SaaS
Stand-alone environments : Những môi trường không cung cấp giấy phép, kỹthuật
Application delivery-only environments: Những môi trường hỗ trợ dịch vụlưu trữ theo cấp độ, như khả năng mở rộng theo nhu cầu bảo mật Nhưng không baogồm nhiệm vụ phát triển, gỡ lỗi, và kiểm tra
Ngoài ra, theo một cách nhìn khác, PaaS cho ta một môi trường tích hợp caocấp để build, test, deploy và cho thuê các ứng dụng có thể tùy chỉnh trên Internet.Một cách khái quát, các nhà phát triển chấp nhận một số giới hạn để xây dựng loạiphần mềm mang tính khả chuyển cao Các khách hàng sử dụng PaaS sẽ không quản
lý các hạ tầng kỹ thuật của các gói phần mềm như của các khách hàng thuê dịch vụSaaS Tuy nhiên, họ sẽ quản lý các ứng dụng được deploy và các cấu hình về môitrường hosting
Có nhiều định nghĩa khác nhau, một số doanh nghiệp, như Keene, đã đưa ra các
tiêu chuẩn cần có để tuyên bố“kết luận: đó chính là một PaaS thực sự” như sau:
- Tiêu chuẩn 1: Browser-based development studio – nghĩa là nếu người sử dụng
sẽ được cung cấp công cụ phát triển phần mềm trên nền tảng web
- Tiêu chuẩn 2: Seamless deployment to hosted runtime environment – người sử
dụng triển khai phần mềm mà không cần quan tâm đến các cấu hình, hoặc cácservice pack liên quan đến phần mềm nền
-Tiêu chuẩn 3: Management and monitoring tools – các giải pháp cloud rất hiệu
quả với nhiều công cụ quản lý và giám sát ứng dụng
-Tiêu chuẩn 4: Pay as you go billing – tránh được các chi phí mua sắm phần mềm,
PaaS phải cung cấp cho chúng ta phương án thanh toán dựa trên việc sử dụng dịch
vụ
Lợi ích khi sử dụng PaaS
Trang 18- Chi phí về phần mềm (up front cost): là chi phí ban đầu cần thiết để sở hữu
một phần mềm Đối với PaaS, chi phí ban đầu mua phần mềm được phân phối cho
nhiều người thuê Do đó, người sử dụng không cần đầu tư nhiều về phần mềm, phầncứng, các thiết bị mạng, các phần mềm và thiết bị trung gian (middleware), cơ sở hạtầng
- Chi phí vận hành phần mềm (operational cost): bao gồm các chi phí về nâng
cấp phần cứng và phần mềm, sự thích hợp của các gói Với PaaS, những chi phí trênđược giảm thiếu hoặc người sử dụng chỉ chi trả trong thời gian dài thông qua hìnhthức sử dụng
- Tính ổn định (reliability): PaaS cung cấp nhiều mức độ phát triển phần mềm
khác nhau Mỗi mức độ đều có sự đảm bảo an toàn về thiết bị, và các cam kết theocác tiêu chuẩn sử dụng thường trực
- Chi phí quản lý (management cost): các hệ thống được hỗ trợ và do đó người
sử dụng không cần quan tâm nhiều đến việc cập nhật và bảo trì phần mềm nền
- Mang lại lợi thế chiến lược (strategic advantage): PaaS cung cấp chính là
chiến lược phát triển dựa trên tiềm lực của từng doanh nghiệp
- Giảm thiểu rủi ro (lower risk): việc đầu tư CNTT là một đầu tư có rủi ro cao
về sự lạc hậu của công nghệ phần cứng và phần mềm Với PaaS, càng nhiều người
sử dụng dịch vụ chứng tỏ dịch vụ theo kịp thời đại
1.7.3 Dịch vụ phần mềm SaaS (Software as a Service )
Cung cấp dịch vụ phần mềm thực thi từ xa Dịch vụ phần mềm (SaaS) là một
mô hình triển khai ứng dụng mà ở đó người cung cấp cho phép người sử dụng dịch
vụ theo yêu cầu Những nhà cung cấp SaaS có thể lưu trữ ứng dụng trên máy chủcủa họ hoặc tải ứng dụng xuống thiết bị khách hàng, vô hiệu hóa nó sau khi kết thúcthời hạn Các chức năng theo yêu cầu có thể được kiểm soát bên trong để chia sẻbản quyền của một nhà cung cấp ứng dụng thứ ba Những đặc trưng tiêu biểu nhưphần mềm sẵn có đòi hỏi việc truy xuất, quản lý qua mạng Quản lý các hoạt động
từ một vị trí tập trung hơn là tại mỗi nơi của khách hàng, cho phép khách hàng truyxuất từ xa thông qua web Những tính năng tập trung nâng cấp, giải phóng ngườidùng khỏi việc tải các bản vá lỗi và cập nhật.Thường xuyên tích hợp những phần
Trang 19Hình 1.6: Mô hình dịch vụ SaaS
Như các tầng khác của điện toán đám mây, điều quan trọng là để đảm bảo rằngcác giải pháp SaaS trong thực tế phù hợp với định nghĩa được chấp nhận chung củađiện toán đám mây Một số đặc điểm xác định của SaaS bao gồm:
- Dùng phần mềm thương mại qua truy cập Web
- Phần mềm được quản lý tập trung
- Phần mềm được phân phối theo mô hình “một-nhiều”
- Người dùng không cần thiết xử lý, nâng cấp phần mềm và các bản sửa lỗi
- Giao diện lập trình ứng dụng (API) cho phép tích hợp giữa các phần khác nhau
của phần mềm
1.8 Các mô hình triển khai
Trang 20Hình 1.7 Các mô hình điện toán đám mây.
1.8.1 Đám mây công cộng
Hình 1.8: Mô hình đám mây công cộng
Là các dịch vụ đám mây được một bên thứ ba (người bán) cung cấp Chúng tồntại bên ngoài hệ thống công ty và được nhà cung cấp đám mây quản lý
Các đám mây công cộng cung cấp cho khách hàng các dịch vụ công nghệ thôngtin tốt nhất Có thể là phần mềm, cơ sở hạ tầng ứng dụng hoặc cơ sở hạ tầng vật lý.Các nhà cung cấp đám mây chịu trách nhiệm cài đặt, quản lý, cung cấp và bảo trì.Khách hàng tính phí cho các tài nguyên nào mà họ sử dụng
Các dịch vụ thường được cung cấp với các quy ước về cấu hình, chúng được cungcấp với những trường hợp sử dụng phổ biến nhất Khách hàng chỉ có quyền truy cậpvào tài nguyên được cấp phát
Trang 21Hình 1.9: Các thành phần trong đám mây riêng.
Các đám mây riêng có nhiều lợi thế hơn so với đám mây chung Việc kiểm soátchi tiết các tài nguyên khác nhau trên đám mây giúp công ty có các lựa chọn cấuhình phù hợp Các đám mây riêng sẽ rất lý tưởng khi công việc đang được thực hiệnkhông cần đến một đám mây chung và sẽ không lo ngại tới vấn đề an ninh, quản lý
Trang 221.8.3 Đám mây lai
Hình 1.10 Mô hình đám mây lai
Là sự kết hợp của các đám mây công cộng và riêng Những đám mây nàythường do doanh nghiệp tạo ra và chịu trách nhiệm quản lý Nó được phân chia giữadoanh nghiệp và nhà cung cấp đám mây công cộng Đám mây lai sử dụng các dịch
vụ có trong cả trong đám mây công cộng và riêng
Các đám mây lai được các công ty sử dụng dịch vụ trên đó Công ty có thểđưa ra những lợi ích khi sử dụng đám mây chung và riêng Một đám mây lai đượcxây dựng tốt để có thể phục vụ khách hàng tốt nhất, an toàn
Hạn chế chính với đám mây lai là khó khăn trong việc tạo ra và quản lýchúng Giải pháp đặt ra là tiếp nhận và cung cấp các dịch vụ từ các nguồn khácnhau như thể chúng có nguồn gốc từ một nơi và có thể tương tác giữa các đám mâyriêng và chung
Trang 231.8.4 Đám mây cộng đồng
Hình 1.11: Mô hình đám mây cộng đồngCác đám mây cộng đồng là các đám mây được chia sẻ bởi một số tổ chức và
hỗ trợ một cộng đồng cụ thể có mối quan tâm chung như: chung mục đích, yêu cầu
an ninh, chính sách Nó có thể được quản lý bởi các tổ chức hoặc một bên thứ ba
Một đám mây cộng đồng có thể được thiết lập bởi một số tổ chức có yêu cầutương tự và tìm cách chia sẻ cơ sở hạ tầng để thực hiện một số lợi ích của điện toánđám mây
Tùy chọn này là tốn kém hơn nhưng có thể đáp ứng về sự riêng tư, an ninhhoặc tuân thủ các chính sách tốt hơn
Trang 24CHƯƠNG 2: NHỮNG VẤN ĐỀ TRONG ĐIỆN TOÁN ĐÁM MÂY
2.1 Kỹ thuật trong đám mây
Kỹ thuật điện toán đám mây là kỹ thuật tập trung vào các dịch vụ đám mâynhư SaaS, PaaS và IaaS Đó là một giải pháp đa ngành từ nhiều lĩnh vực khác nhaunhư hệ thống kỹ thuật, công nghệ phần mềm, kỹ thuật web, kỹ thuật thông tin, kỹthuật bảo mật, nền tảng kỹ thuật, kỹ thuật dịch vụ, kỹ thuật rủi ro, và kỹ thuật chấtlượng Khả năng cung cấp các dịch vụ đám mây và những thách thức trong mô hìnhđiều khiển trong kinh doanh, cho kỹ thuật điện toán đám mây như là quá trình “thiết
kế các hệ thống cần thiết để tận dụng sức mạnh và kinh tế của điện toán đám mây
để giải quyết các vấn đề kinh doanh”
Các yếu tố của kỹ thuật điện toán đám mây bao gồm:
Nền tảng (Foundation): cơ sở, khái niệm, hướng dẫn và phân loại
Thực hiện (Implementation): xây dựng khối và hướng dẫn thực hành trênđám mây
Vòng đời (Lifecycle): sự lặp lại tại đầu cuối giúp điện toán đám mây pháttriển và phân phối
Quản lý (Management): thời gian thiết kế và quản lý đám mây thời gian chạy
từ nhiều vấn đề
Hình 2.1: Những thành phần của kỹ thuật trong đám mây.
Trang 252.2 Lưu trữ trong đám mây
Đám mây lưu trữ là một mô hình kết nối mạng lưu trữ trực tuyến, nơi dữ liệuđược lưu trữ trên nhiều máy chủ ảo, thường được tổ chức bởi các bên thứ ba, thay vìđược lưu trữ trên máy chủ chuyên dụng Công ty Hosting hoạt động là trung tâm dữliệu lớn, và những người yêu cầu dữ liệu của họ được tổ chức mua hoặc thuê dunglượng lưu trữ từ họ và sử dụng nó cho các nhu cầu lưu trữ của họ Các trung tâm dữliệu điều hành trên nền ảo hóa các nguồn lực theo yêu cầu của khách hàng và đượcđưa vào trong kho lưu trữ, các khách hàng của nhà cung cấp có thể sử dụng để lưutrữ các tập tin hoặc dữ liệu đối tượng Về mặt vật lý, các nguồn tài nguyên có thểđược lấy qua nhiều máy chủ
Dịch vụ lưu trữ trong đám mây có thể được truy cập thông qua một trình duyệtweb, giao diện lập trình ứng dụng (API) Công việc lưu trữ dữ liệu trên đám mâylưu trữ sẽ tốt hơn là trên một hệ thống địa phương Vì đám mây lưu trữ có một số
ưu điểm so với lưu trữ dữ liệu truyền thống Nếu lưu trữ dữ liệu trên một đám mây,
có thể sử dụng nó từ bất kỳ vị trí có quyền truy cập Internet
Cung cấp dịch vụ công nghệ thông tin trên nền điện toán đám mây
2.3 Kiến trúc hệ thống
Trong môi trường điện toán truyền thống, nhiều phần mềm và các quy trìnhdựa vào hệ thống thiết bị tại chỗ Trong một môi trường điện toán đám mây, hầu hếtmọi thứ được vận hành từ một máy chủ hoặc nhiều máy chủ trong trung tâm dữ liệunơi người dùng tương tác cụ thể với chúng qua một trình duyệt Điều này đặt rangày càng nhiều yêu cầu đối với hệ thống mạng hiện thời cũng như hạ tầng bảomật Một trong những nguyên tắc căn bản của điện toán đám mây là ý tưởng chia sẻcác nguồn lực như tính toán, lưu trữ, các ứng dụng và thậm chí là cả nền tảng pháttriển, nơi mà chúng có thể chia sẻ với hầu hết những người sử dụng trong một công tytrong trường hợp các đám mây cá nhân (private clouds) hay với những người sử dụngtrên phạm vi toàn cầu trong trường hợp đám mây công cộng (public clouds) Việcchia sẻ là khả thi nhờ công nghệ ảo hóa và một trung tâm dữ liệu gần như được ảohóa giống như trong một môi trường điện toán đám mây cần một hạ tầng mạng để hỗtrợ những yêu cầu bổ sung