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

Tiểu luận môn học tính toán lưới TÌM HIỂU P2P CLOUD

48 286 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 48
Dung lượng 1,16 MB

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

Nội dung

lướt qua vài trang công nghệ để đọc một vài dòng tin thì ta lại thấy cụm từ này nhưtrong hình trên là một ví dụ về độ phổ biến của cloud computing.Theo cách truyền thống, những công ty l

Trang 1

TÍNH TOÁN LƯỚI

TÌM HIỂU P2P CLOUD

Giảng viên hướng dẫn PGS.TS Nguyễn Phi Khứ

07 – 2013

Trang 2

TÍNH TOÁN LƯỚI

TÌM HIỂU P2P CLOUD

Giảng viên hướng dẫn PGS.TS Nguyễn Phi Khứ

07 – 2013

Trang 3

MỞ ĐẦU 3

1 GIỚI THIỆU ĐIỆN TOÁN ĐÁM MÂY 5

1.1 Tại sao cần có điện toán đám mây 5

1.2 Vậy điện toán đám mây thực sự là gì 7

1.3 Các đặc tính 9

1.4 Các mô hình dịch vụ 10

1.4.1 Infrastructure as a Service (IaaS) – Cơ sở hạ tầng là dịch vụ 10

1.4.2 Platform as a Service (PaaS) – Nền tảng là dịch vụ 15

1.4.3 Software as A Service (SaaS) – Phần mềm là dịch vụ 21

1.5 Các mô hình triển khai 28

2 PEER-TO-PEER CLOUD 30

2.1 Tầm nhìn 30

2.2 Một số vấn đề thách thức 34

2.3 Giải pháp và thiết kế 34

2.3.1 Mô hình hệ thống 34

2.3.2 Kiến trúc 35

2.3.3 Đáp ứng resources với thời gian dài 40

KẾT LUẬN 43

TÀI LIỆU THAM KHẢO 44

Trang 4

MỞ ĐẦU

Hiện nay khi lướt qua các trang công nghệ đọc một vài dòng tin thì lại thấyxuất hiện cụm từ “đám mây” với rất nhiều bài viết về lợi ích hay các cân nhắc khitriển khai chúng, … với đủ khía cạnh Sự phổ biến của chúng phủ khắp từ cácdoanh nghiệp cho đến các người dùng máy tính bình thường Chẳng hạn như ởnước ta với một thực trạng sử dụng phần mềm không giấy phép như là văn hóa thìvới đám mây đã hạn chế bớt một phần nào ví dụ như Microsoft Office có thể đượcthay thế bằng Google Docs

Khi nhắc tới các dịch vụ đám mây hiện nay là nói tới ngay các ông lớn nhưAmazon, Microsoft, Google Đứng ở góc độ nhà cung cấp dịch vụ, các đám mâyđược tạo nên từ những cụm máy tính thông thường (không phải là những siêu máytính) Tuy nhiên, chi phí mà các nhà cung cấp dịch dụ đầu tư cho chúng là khá lớntạo thành các datacenters quy mô, và mỗi datacenter này được quản lý một cáchtập trung Do đó, chỉ có một số công ty lớn mới có đủ khả năng như vậy Tuynhiên, hiện nay không chỉ có duy nhất cách tiếp cận tập trung cho điện toán đámmây, mà trong vài trường hợp đôi khi cách tiếp cận này không còn là sự lựa chọntối ưu nữa

Liên đám mây (federated clouds) là một sự tiến hóa của cách tiếp cận tậptrung Trong đó nhiều đám mây sẽ gắn với nhau lại để cho ra một đám mây lớnhơn Bằng cách này thì chất lượng độ tin cậy dịch vụ sẽ gia tăng lên và đồng thời

sẽ giảm độ trễ giao tiếp giữa clients và đám mây do địa lý bằng cách đưa clientsđến datacenter gần nhất Ngoài ra, những đám mây liên kết nhau là một giải pháphấp dẫn cho những công ty không muốn đưa dữ liệu họ cho một nhà cung cấp dịch

vụ nào hết do những vấn đề về bảo mật Bằng cách vận hành theo kiểu phân tán,những công ty này vẫn được hưởng lợi những ưu điểm của điện toán đám mây

Trang 5

bằng cách chạy những đám mây nhỏ tại công ty và gắn chúng vào những đám mâykhác tạo thành một đám mây lớn hơn Dựa trên ý tưởng của liên đám mây, cực đạihóa đi ta có thể xây dựng được một đám mây với các resources độc lập nganghàng với nhau được ghép lại mà không cần có bất kỳ thành phần giám sát haycộng tác nào Các đám mây này sẽ cung ứng các resources với một chi phí cực kỳ

rẻ - thậm chí là miễn phí Ngoài ra các đám mây này cũng thích hợp cho các ứngdụng phân tán mà ở đó vị trí các nút rất quan trọng - dữ liệu hay là những tính toánphải gần với users Ta gọi các đám mây này là P2P Cloud

Trong bài thu hoạch này trước hết em xin giới thiệu về cloud: tại sao cần cóđám mây, các định nghĩa cũng như các đặc tính làm nên sự bùng nổ của chúnghiện nay Ngoài ra thông qua các mô hình dịch vụ và mô hình triển khai sẽ chothấy rõ hơn các giá trị của các đặc tính của đám mây Phần thứ hai em xin nói vềP2P Cloud với những điều kiện thích hợp hiện nay để nó có thể phát triển Tuynhiên P2P Cloud sẽ gặp phải một số thách thức vấn đề trong việc xây dựng và mộtgiải pháp về thiết kế cũng như kiến trúc đã được đưa ra [1] Cuối cùng là một vấn

đề quan trọng trong P2P Cloud làm cách nào để có thể đáp ứng các tài nguyên chongười dùng tin cậy trong thời gian dài

Lời cảm ơn, em chân thành xin dành cho thầy PGS.TS Nguyễn Phi Khứ vì

những kiến thức của Thầy mang lại để giúp em có được cũng như hoàn thành tốtbài thu hoạch này

Trang 6

1 Giới thiệu điện toán đám mây

1.1 Tại sao cần có điện toán đám mây

Trước khi đi vào những định nghĩa, nền tảng, mô hình, … sâu vào điện toánđám mây thì ta hãy lướt qua xem cloud computing làm được những gì mà hầu như

Trang 7

lướt qua vài trang công nghệ để đọc một vài dòng tin thì ta lại thấy cụm từ này nhưtrong hình trên là một ví dụ về độ phổ biến của cloud computing.

Theo cách truyền thống, những công ty lớn, những tập đoàn lớn thườngcài đặt tất cả các ứng dụng hay phần mềm trên những cụm máy chủ của họ Nếumột công ty sẽ có một hệ thống máy chủ, 2 công ty sẽ là 2, và 1000 công ty sẽ sởhữu con số máy chủ tương ứng Bởi vậy, để giảm tải các chi phí phát sinh từ hệthống máy chủ đồ sộ của các công ty riêng lẻ, Điện toán đám mây đã được ra đời

Và như đã nói ở trên, ”đám mây” chính là dùng để chỉ Internet, một mạng lưới gầnnhư vô tận Có thể hiểu đơn giản như sau, mỗi công ty thường chạy các ứng dụngngay trên các máy chủ của chính họ Những máy chủ được đặt ở ngay vị trí công

ty Điều đó đòi hỏi rất nhiều công sức trong việc bảo dưỡng, bảo trì, tiền bạc vàthời gian để giữ cho mọi thứ liên tục được chạy, nâng cấp và đảm bảo

Nếu các doanh nghiệp áp dụng Điện toán đám mây, họ sẽ vẫn sử dụng đượccác ứng dụng y hệt nhưng chúng lại được đặt ở các cụm máy chủ trên Internet

Trang 8

công sức nào để bảo trì, bảo dưỡng, nâng cấp, chạy máy chủ Không những thế,các doanh nghiệp còn có thể cho khách hàng của họ sử dụng ứng dụng mà khôngphải mất công cài đặt Tất cả rất đơn giản Nói 1 cách ngắn gọn, Cloud Computingcho phép các công ty bán được nhiều dịch vụ hơn trong 1 kiện hàng mới và hấpdẫn hơn.

Nếu là nhân viên, bạn có bao giờ nghĩ rằng công ty mà bạn đang làm sẽ sửdụng Google Docs thay vì dùng Microsoft Office hoặc Open Office không? Xuthế này đang phát triển mạnh mẽ vì làm vậy thì người dùng (doanh nghiệp) khôngphải mất tiền mua, không phải mất công cài đặt Nhưng sẽ ra sao nếu công ty bạnmuốn cung cấp dịch vụ cho người khác? Bạn sẽ có thể tận dụng sức mạnhcủa Điện toán đám mây bằng cách tạo ứng dụng trên Internet với những tàinguyên từ các “ông lớn” như App Engine của Google, Windows Azure củaMicrosoft, EC2 framework của Amazon

Hầu hết các dịch vụ trên đều được tính phí bằng cách dựa vào số lượng tàinguyên sử dụng Như vậy ứng dụng của bạn chỉ bị thu phí bởi đúng số lượng CPU

và băng thông sử dụng

Đó chỉ là một số lợi ích hấp dẫn của điện toán đám mây và nãy giờ ta chỉ đứng

ở phía ngoài xem xét lợi ích của nó

Trang 9

1.2 Vậy điện toán đám mây thực sự là gì

Thực ra điện toán đám mây không phải là mới Ý tưởng của nó đã được pháttriển từ những năm 1960 những chiếc máy tính mainframe được “time-sharing”nhờ distributed computing và sự bùng nổ của mạng lưới networks cho tới Internet

và những online services mà ta thấy ngày này Và những online services chẳnghạn như email, information hosting, và data storage hiện diện khắp mọi nơi chính

là một phần của đám mây – thể hiện cho khái niệm “cloud as a platform forapplications” Cloud Security Alliance (2009) cho rằng

“Cloud describes the use of a collection of services, applications, information,

and infrastructure comprised of pools of compute, network, information and storage resources.These components can be rapidly orchestrated, provisioned, implemented and decommissioned, and scaled up or down providing for an ondemand utility-like model of allocations and consumption".

Hiện tại thì chưa có một xác nhận chính thức nào về định nghĩa của điện toánđám mây nhưng một đề xuất của NIST (National Institute of Standards andTechnology) đã được chấp nhận khá rộng rãi – được sử dụng là tài liệu tham khảotrong Cloud Security Alliance, European Network, Information Security Agency(ENISA) và nhiều tổ chức khác

“Cloud computing is a model for enabling convenient, on-demand network

access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”

Những định nghĩa của Cloud Security Alliance hay NIST thì mang nặng tínhchuyên môn dành cho những người trong ngành Để đơn giản hơn, một số địnhnghĩa khác đã được đưa ra như

“Cloud computing is Internet-based computing, whereby shared resources,

software and information are provided to computers and other devices

Trang 10

“Cloud Computing is a business concept, not a technological jargon dependent

on "as a service model”.”

1.3 Các đặc tính

Sự phổ biến của điện toán đám mây là do những nhu cầu thiết yếu bao gồm cả haimặt: kỹ thuật và kinh tế Những nhu cầu này được xem như là đặc tính thiết yếunhất của điện toán đám mây [4]

 On-demand self-service: tự phục vụ theo nhu cầu, tức là các resourceschẳng hạn như server time hay network storage sẽ được tự động cung cấpđúng theo yêu cầu của customer mà không cần bất kỳ yêu cầu đòi hỏi tươngtác nào với các nhà cung cấp dịch vụ về mặt con người

 Broad network access: các resources của dịch vụ được truy cập thông qua

những cơ chế chuẩn cho phép đa dạng các nền tảng của client có thể sử

dụng được hay thin/fat clients (như điện thoại, máy tính bảng, laptop, haycác workstations)

 Resource pooling: các nguồn tài nguyên điện toán của nhà cung cấp cộngtác với nhau để phục vụ cho multi-consumers, các resources dù là physicalhay virtual thì cũng có khả năng tự động phân bố theo nhu cầu củacustomers Thông thường thì customers sẽ không biết hoặc không có quyềncontrol chính xác vị trí của resources được cung cấp, tuy nhiên họ có thểchỉ định vị trí resources ở level cao hơn (như quốc gia, tính thành, haydatacenter) Resources ở đây bao gồm storage, processing, memory, vànetwork bandwidth

 Rapid elasticity: cơ sở hạ tầng phải có khả năng thích ứng với những yêucầu thay đổi, cho phép scale up/down một cách tức thời

 Measured service: các hệ thống đám mây sẽ tự động kiểm soát và tối ưuresources dựa trên một bộ đo các nguồn tài nguyên của dịch vụ (như

Trang 11

storage, processing, bandwidth, hay số lượng user đang active) Đồng thời

bộ đo cũng tính luôn chi phí mà customers phải trả - thông thường là per-use

pay-Ở trên là 5 đặc tính của điện toán đám mây mà NIST đã đưa ra Ngoài ra, một

1.4.1 Infrastructure as a Service (IaaS) – Cơ sở hạ tầng

là dịch vụ

Lợi ích của IaaS

Đối với các doanh nghiệp, lợi ích lớn nhất của IaaS thể hiện qua một khái niệm

được gọi là cloudbursting - quá trình này giảm tải các tác vụ lên đám mây nhiều

lần khi cần nhiều tài nguyên tính toán nhất Tiềm năng để tiết kiệm vốn thông quaviệc bùng nổ lên đám mây là rất lớn, vì các doanh nghiệp sẽ không cần phải đầu tưthêm các máy chủ thường chỉ chạy 70% công suất hai hoặc ba lần trong năm, thời

Trang 12

Tuy nhiên, đối với các doanh nghiệp để lợi dụng IaaS theo khả năng này, các bộphận CNTT phải có khả năng xây dựng và triển khai thực hiện phần mềm xử lý cókhả năng phân phối lại các quy trình xử lý lên một đám mây IaaS Có một số lý doquan trọng để xây dựng và triển khai thực hiện phần mềm có thể quản lý các quytrình phân phối lại:

 Việc phát triển cho một IaaS độc quyền của một nhà cung cấp cụ thể có thểgặp bất tắc nếu nhà cung cấp ngừng kinh doanh

 Phần mềm phân phối tài nguyên tốt rất phức tạp và thường đòi hỏi các tàinguyên nhà phát triển hàng đầu mà giá không hề rẻ Cho nên cần phải dựtính trước

 Các thông tin mật được up lên để xử lý trong đám mây có vi phạm luậtriêng tư nào không hay những quá trình xử lý quyết định hoạt động hàngngày của doanh nghiệp Do đó cần xác định xử lý những gì trong đám mây

Ngoài ra, các tổ chức cần phải cẩn thận về hiện trạng của thị trường điện toánđám mây về việc lệ thuộc vào nhà cung cấp Việc có các máy ảo (VM) có thểđược dịch chuyển đến đám mây từ các trung tâm dữ liệu và giữa các đám mây củacác nhà cung cấp có thể là một tài sản cho các doanh nghiệp, nhưng để làm nhưvậy đòi hỏi các nhà cung cấp phải hỗ trợ một định dạng tệp được chuẩn hóa, điều

mà họ đã miễn cưỡng phải làm Thực trạng của tình hình này là ở chỗ hiện thờikhông có đặc tả nào được đưa ra công khai và thuộc thẩm quyền của một cơ quantiêu chuẩn Nói cách khác, hiện nay không có một định dạng thực sự được chuẩnhóa nào, và nếu may nhất, chúng chỉ làm rắc rối thêm, vì không có một sự bảođảm nào rằng định dạng mà bạn xây dựng mọi thứ dựa trên nó sẽ được bất kỳ aikhác hỗ trợ tiếp Tuy nhiên, điều đáng lưu ý là thường có thể chuyển một thiết bị

ảo sang định dạng khác, với điều kiện rằng đặc tả của định dạng mới công khaihoặc bạn có quyền truy cập vào nó Một ghi nhận có nhiều triển vọng hơn là gầnđây đã đạt được những tiến bộ to lớn về việc hỗ trợ định dạng ảo hóa mở (OVF -

Trang 13

Open Virtualization Format), đây là một ứng cử viên đầy hứa hẹn để trở thành mộttiêu chuẩn Một ứng cử viên hứa hẹn khác là định dạng Đĩa máy ảo (VMDK -Virtual Machine Disk) VMDK ban đầu là một định dạng độc quyền của VMware,nhưng bây giờ đó là đặc tả mở, và được một số bên thứ ba hỗ trợ.

Cơ sở hạ tầng là tài sản

Phần lớn các công ty thành công trong suốt 50 năm qua đã dành một lượng lớnthời gian và tài nguyên quý giá để xây dựng các cơ sở hạ tầng, với mục tiêu đạtđược lợi thế cạnh tranh bằng cách tạo ra một mạng lưới lớn hơn, nhanh hơn, vàmạnh mẽ hơn so với các đối thủ cạnh tranh của họ Mẫu hình "cơ sở hạ tầng là tàisản" trong lĩnh vực CNTT cũng có chung một số những điểm kém hiệu quả và bấtlợi giống hệt hay tương tự như các loại xe hơi phân khối lớn đã có trong nhữngnăm 60 và 70 (lúc này xe nào ngon hơn dựa trên trị số mã lực và mô-men xoắn,tuy nhiên đến những năm 80 thì cục diện thay đổi) Đối với điện toán doanhnghiệp, những điểm không hiệu quả bao gồm:

 Phần lớn công suất và dung lượng máy tính không sử dụng đưa đến các chiphí gắn với vùng không gian mà phần cứng chiếm dụng trong các trung tâm

dữ liệu lớn, đắt tiền

 Các đòi hỏi nhân công đắt tiền, bao gồm cả các quản trị viên mạng giám sát

24 giờ tại các trung tâm dữ liệu chứa các tài sản cơ sở hạ tầng này (máychủ, các bộ định tuyến, các chuyển mạch, và v.v)

 Kết quả, mức tiêu thụ năng lượng lãng phí cao là một rào cản lớn đối vớisáng kiến Điện toán xanh

Các khía cạnh chính của IaaS

Thay vì hình dung Internet như là một đám mây toàn cầu duy nhất, có lẽ chínhxác hơn là hình dung nó như là một hệ thống của nhiều đám mây, giống như mộtcơn bão Với phép ẩn dụ này, người ta có thể khẳng định một cách hợp lý rằng

Trang 14

chớp là hệ thống thời tiết tương đương với sự truyền thông giữa các đám mây.Phép ẩn dụ này có lẽ còn chính xác hơn theo nghĩa rằng các đám mây tương tác có

hệ thống với nhau để tạo ra một kết quả duy nhất: đó là Internet

Ít khả năng Internet sẽ được tạo thành từ một đám mây duy nhất - ít nhất làtrong tương lai gần - bởi vì còn thiếu các tiêu chuẩn trong điện toán đám mây vàcác nỗ lực rõ ràng của các công ty khi đầu tư lâu dài nhằm giảm sự lệ thuộc vàonhà cung cấp Tuy nhiên hy vọng một ngày nào đó, Internet sẽ thực sự là một đámmây duy nhất, kết nối liên thông, trong đó các máy ảo có thể được chuyển dễ dàngsang "đám mây" mà không cần quan tâm đến định dạng tệp và các cụm máy ảo kếtnối liên thông có thể được quản lý qua các nhà cung cấp dịch vụ, tất cả thông quamột giao diện duy nhất

Đáp ứng cơ sở hạ tầng co giãn

Tính co giãn là khía cạnh trọng yếu đầu tiên của IaaS Giả sử rằng các đámmây thực tế được làm bằng các cụm kẹo dẻo dính chặt với nhau để mọi người cóthể ngồi lên và cưỡi chúng đi lại Mỗi đám mây kẹo dẻo có thể chứa một lượngngười nhất định, tùy thuộc vào số lượng các cụm kẹo dẻo tạo nên đám mây đó và

có bao nhiêu kẹo dẻo được chứa trong các cụm đó Khi có nhiều người hơn cưỡitrên đám mây kẹo dẻo, bạn có thể mở rộng các cụm kẹo dẻo bằng cách dính thêmnhiều kẹo dẻo hơn vào đám mây đó để làm tăng diện tích Như vậy con người đạidiện cho các ứng dụng cần tài nguyên máy tính, chẳng hạn như các tài nguyên lưutrữ trên các trang web và chạy các dịch vụ phần mềm Các cụm kẹo dẻo đại diệncho các cụm máy ảo, với mỗi kẹo dẻo là một máy ảo Ví dụ như cần phải datamining trong một khối dữ liệu lớn Ban đầu tạo một máy chủ trên Iaas để xử lý.Sau đó trong quá trình xử lý này nếu thấy tốc độ tính toán không đủ nhanh thì ta

có thể thêm tài nguyên vào bằng tay hoặc tự động Một khía cạnh quan trọng kháccủa IaaS, đó là ảo hóa

Ảo hóa máy

Trang 15

Sergey Brin và Larry Page, những người sáng lập ra Google, đã có ý tưởngđúng ngay từ năm 1995 khi họ đã dành những buổi tối của mình để lục soát cácthùng rác ở đằng sau tòa nhà của khoa khoa học máy tính, trường Đại họcStanford, lấy ra các bộ phận máy tính đã bỏ đi Họ đã mang những bộ phận ngẫunhiên nhặt được của máy tính dựa trên x86 này về phòng ký túc xá của mình đểthêm vào cỗ máy Frankenstein đang chứa chương trình tự động duyệt các trangWeb (Web crawler) huyền thoại đã làm sập toàn bộ mạng của Stanford - hai lần.Hiện nay, người ta ước tính rằng Google có hơn 1 triệu máy chủ x86 ở 12trung tâm dữ liệu lớn và khoảng 20 trung tâm nhỏ hơn trên các lục địa khác nhau.

Đó là một đám mây khá lớn Hai nhân tố then chốt đối với thiết kế hệ thống đã chophép họ tăng quy mô con quái thú trong phòng ký túc xá vào năm 1995, và nó vẫnđúng cho hơn một triệu máy chủ trong mạng Google ngày nay Cho đến nay,

Google vẫn tiếp tục sử dụng các bộ phận x86 không tốn kém thay cho các thành

phần máy chủ mức doanh nghiệp đắt tiền hơn nhiều thường thấy trong nhiều trungtâm dữ liệu doanh nghiệp Thứ hai, việc tự chuyển tiếp khi sự cố, chạy dự phòng,giám sát, phân cụm, và các nhiệm vụ quản lý cơ sở hạ tầng khác được xử lý bằngmột hệ thống ảo hóa chạy dưới mức hệ điều hành chứ không sử dụng phần cứngriêng biệt chẳng hạn như các bộ cân bằng tải để xử lý các nhiệm vụ như vậy

IaaS dễ dàng nhận ra, bởi vì nó thường là độc lập với nền tảng IaaS bao gồm

sự kết hợp của các tài nguyên phần cứng và phần mềm Phần mềm IaaS là mã mức

thấp chạy độc lập với hệ điều hành - được gọi là trình siêu giám sát - và chịu trách

nhiệm kiểm kê tài nguyên phần cứng và phân phối tài nguyên theo yêu cầu Quá

trình này được gọi là phân nhóm tài nguyên (resource pooling) Phân nhóm tài

nguyên bằng trình siêu giám sát làm cho có thể ảo hóa, và ảo hóa làm cho có khả

năng điện toán nhiều bên thuê - một khái niệm để chỉ một cơ sở hạ tầng được chia

sẻ bởi một vài tổ chức có các mối quan tâm giống nhau về các yêu cầu an toàn vàtuân thủ quy định về dữ liệu

Trang 16

Với IaaS, bạn có khả năng xử lý dự phòng, nơi lưu trữ, làm việc với mạng, vàcác tài nguyên điện toán khác, ở đây bạn có thể triển khai và chạy phần mềm tùy ýnhư hệ điều hành và các ứng dụng Hầu hết các trường hợp sử dụng điện toán đámmây đều theo cùng một cấu trúc phân tầng cơ bản mà bạn đã quen dùng: mộtchồng giải pháp (stack solution) phần mềm hay nền tảng được triển khai trên một

cơ sở hạ tầng mạng, và các ứng dụng chạy bên trên đỉnh của nền tảng đó Tuynhiên, ảo hóa làm cho mô hình đám mây trở nên trong suốt là duy nhất

1.4.2 Platform as a Service (PaaS) – Nền tảng là dịch vụ PaaS cho các nhà phát triển

Một hiểu lầm phổ biến đối với các nhà phát triển là điện toán đám mây chỉ ápdụng cho các nhà quản trị mạng Những sự hiểu lầm này bỏ qua nhiều khả năng

mà điện toán đám mây mang lại cho các nhóm phát triển và bảo đảm chất lượng.Hãy xem xét một vài thứ hay mơ hồ trong vòng đời phát triển phần mềm Quátrình thiết lập môi trường máy chủ sẽ lưu trữ ứng dụng Web mà nhóm phát triển

đã được giao xây dựng có thể là một rắc rối lớn Ngay cả trong các doanh nghiệplớn nhất, thường là tài nguyên của nhà quản trị mạng duy nhất được giao cho một

Trang 17

vài nhóm phát triển Khi không sử dụng PaaS, việc thiết lập một môi trường pháttriển hay kiểm thử thường đòi hỏi các nhiệm vụ sau đây:

 Tiếp nhận và triển khai máy chủ

 Cài đặt hệ điều hành, các môi trường thời gian chạy, kho lưu trữ kiểm soát

mã nguồn, và bất kỳ phần mềm trung gian cần thiết nào khác

 Cấu hình hệ điều hành, các môi trường thời gian chạy, kho lưu trữ, và phầnmềm trung gian bổ sung

 Di chuyển hoặc sao chép mã hiện có

 Kiểm tra và chạy mã để chắc chắn rằng tất cả mọi thứ hoạt động

Đã nhiều lần, tài nguyên của nhà quản trị đã bị dàn mỏng, do đó, việc triểnkhai một môi trường mới có thể là một quá trình vất vả Một vấn đề lớn khác chocác nhà phát triển ứng dụng web về cả phía máy khách lẫn phía máy chủ là saochép các môi trường thời gian chạy tại chỗ cho các mục đích thử nghiệm của riêngbạn

Bây giờ hãy tưởng tượng rằng bạn là thành viên của một nhóm phát triển ở đóbạn đang sử dụng PaaS Trong tình hình như vậy, bạn sẽ có một máy ảo (VM) cóchứa toàn bộ môi trường máy chủ và có thể di chuyển tới mọi nơi chỉ cần một ổUSB

Các thành phần chính của PaaS

Có lẽ cách tốt nhất để hiểu PaaS là tách rời ra các thành phần chính của nó: nền

tảng và dịch vụ Bây giờ, hãy xem xét dịch vụ được cung cấp, được gọi là chồng

giải pháp Như vậy, việc cho rằng hai thành phần chính của PaaS là nền tảng điện

toán và chồng giải pháp là hợp lôgic

Trang 18

Để minh họa hai "thành phần" này, ta hãy xem xét kỹ hơn vào các định nghĩa

của chúng Một nền tảng điện toán, dưới dạng đơn giản nhất, đề cập đến một nơi

mà phần mềm có thể được khởi chạy một cách nhất quán miễn là mã đáp ứngđược các tiêu chuẩn của nền tảng đó Các ví dụ phổ biến của các nền tảng gồm cóWindows™, Apple Mac OS X, và Linux® cho các hệ điều hành; Google Android,Windows Mobile®, và Apple iOS cho điện toán di động; và Adobe® AIR™ hayMicrosoft® NET Framework cho các framework phần mềm Điều quan trọng cầnnhớ là không phải đang nói về chính phần mềm mà là về nền tảng mà phần mềmđược xây dựng để chạy trên đó Hình sau cung cấp một minh họa để rõ hơn mốiquan hệ này

Còn chồng giải pháp bao gồm các ứng dụng sẽ có mặt trong quá trình pháttriển cũng như triển khai ứng dụng Các ứng dụng này dựa vào hệ điều hành, môitrường thời gian chạy, kho kiểm soát nguồn, và phần mềm trung gian cần thiết bất

kỳ khác

Chọn một nhà cung cấp

Chồng giải pháp cũng làm cho các công ty PaaS khác xa nhau, nó là một thứ

mà bạn sẽ cần phải khám phá sâu hơn trước khi quyết định nhảy lên chuyến tầuPaaS

Trang 19

Dưới đây là một số những câu hỏi cơ bản mà ta có thể muốn hỏi trước khi camkết với một nhà cung cấp PaaS cụ thể:

 PaaS hỗ trợ các framework và các ngôn ngữ nào? Lý tưởng là một PaaSnên hỗ trợ các framework bất kỳ dựa trên ngôn ngữ ưa chuộng của nền tảngđó

 Tôi có thể tạo ra bao nhiêu ứng dụng? Hầu hết các nhà cung cấp PaaS giớihạn số lượng ứng dụng mà bạn có thể xây dựng dựa trên phương án hoặcgói bạn đã đăng ký Hãy chắc chắn rằng nhà cung cấp đưa ra một phương

án hoặc gói đáp ứng các nhu cầu của bạn

 Những loại nội dung nào được phép? Các cơ sở hạ tầng hỗ trợ chào bán

PaaS thường liên quan đến khái niệm gọi là điện toán nhiều bên

thuê (multi-tenant computing), ở đây nhiều "bên thuê" cùng chia sẻ "các

quyền cư trú" trên một máy chủ duy nhất, được phân cách bằng các cá thể

máy ảo do một trình siêu giám sát quản lý Một nhà cung cấp PaaS có thể

có những hạn chế nhất định về kiểu ứng dụng và nội dung mà bạn dự kiếnlưu trữ trên máy chủ

 Những loại cơ sở dữ liệu nào được hỗ trợ? Câu trả lời này là rất quan trọngnếu bạn có dữ liệu muốn chuyển đến như là một phần ứng dụng của bạn.Bạn phải chắc chắn rằng cơ sở dữ liệu theo đề xuất từ nhà cung cấp tươngthích với định dạng mà bạn có ý định sử dụng để nhập dữ liệu của mình

 Liệu nó có hỗ trợ SSL (HTTPS) không? Đây là một nhân tố quan trọngkhác vì lý do an ninh Bạn sẽ gặp phải các vấn đề lớn nếu bạn dự kiến thựchiện các giao dịch thông qua các ứng dụng của mình và bạn phát hiện rarằng SSL không được hỗ trợ

Một số tinh năng PaaS

Trang 20

 Framework phát triển ứng dụng Một framework phát triển ứng dụng vữngmạnh được xây dựng trên công nghệ được sử dụng rộng rãi Nên thận trọngvới khả năng bị lệ thuộc vào nhà cung cấp ở đây Các nền tảng mã nguồn

mở như công nghệ Java™ thường là một đặt cược an toàn trong vấn đề này

 Dễ sử dụng Một PaaS nên đi kèm với các công cụ WYSIWYG dễ sử dụng

có các tiện ích (widget) dựng sẵn, các thành phần giao diện người dùngđóng hộp, các công cụ kéo-và-thả, và hỗ trợ cho một số IDE chuẩn Nó sẽtạo điều kiện thuận lợi cho việc phát triển ứng dụng lặp lại, nhanh chóng

 Các công cụ mô hình hóa quy trình nghiệp vụ (BPM) Cần có mộtframework BPM mạnh mẽ cho phép mô hình hóa quy trình nghiệp vụ củamình và xây dựng ứng dụng xung quanh nó

 Khả năng sẵn sàng Nền tảng được chọn phải có thể truy cập được và cósẵn ở bất cứ đâu, bất cứ lúc nào

 Khả năng mở rộng Nền tảng này phải đủ thông minh để tận dụng khả năng

co giãn của một cơ sở hạ tầng bên dưới để xử lý các tải sẽ dùng ứng dụng

 An toàn Để chống lại có hiệu quả các mối đe dọa, nền tảng cần giải quyếtđược những thứ như kịch bản lệnh xuyên các trang web (cross-sitescripting), SQL injection, DoS, và mã hóa luồng thông tin và làm cho nó ănsâu vào việc phát triển ứng dụng Ngoài ra, nền tảng phải hỗ trợ khả năngđăng nhập một lần tức là đăng nhập một lần nhưng được sử dụng các ứngdụng khác của mình ở đám mây này hoặc bất kỳ ứng dụng điện toán đámmây nào khác

 Tính hòa nhập Nền tảng này cần cung cấp khả năng để bao gồm, nhúng, vàtích hợp các ứng dụng khác đã xây dựng trên cùng nền tảng hoặc các nềntảng khác

Trang 21

 Tính di động Nền tảng này không cần quan tâm đến cơ sở hạ tầng bên dưới

và cho phép các công ty di chuyển ứng dụng từ IaaS này đến IaaS khác

 Các công cụ chuyển đổi Để tạo điều kiện di chuyển dữ liệu dễ dàng vànhanh chóng các ứng dụng hiện tại lên trên nền tảng mới, các công cụchuyển đổi thật sự hết sức cần thiết

 API Để thực hiện các nhiệm vụ như xác thực người dùng và lưu trữ và truyvấn các files và thậm chí đôi khi thực hiện các lệnh trực tiếp đến một cơ sở

dữ liệu, do đó platform cần có một API tốt Điều này sẽ cho phép hoạt độngnghiệp vụ có thể linh hoạt trong việc tạo và tùy chỉnh một ứng dụng phầnmềm để giao tiếp với platform, đáp ứng các nhu cầu cụ thể của công ty

Quản lý sự lệ thuộc vào nhà cung cấp

Sự lệ thuộc vào nhà cung cấp có nghĩa là một khách hàng phụ thuộc vào một

nhà cung cấp và không thể sử dụng nhà cung cấp khác mà không phải chịu chi phíchuyển đổi đáng kể Cơ hội để tạo ra một môi trường hỗ trợ sự lệ thuộc vào nhàcung cấp phát sinh cùng với các công nghệ tương đối mới và ngày càng phổ biến,giống như điện toán đám mây Ngay từ bây giờ, những tín đồ sớm đi theo điệntoán đám mây phải nhận thức được họ đang tự đẩy mình tới đâu trước khi ký kếtbất kỳ các thỏa thuận IaaS và PaaS dài hạn nào

Một cách để tránh sự lệ thuộc là thông qua tiêu chuẩn hóa các API và các côngnghệ nền tảng Các tổ chức ví dụ như Simple Cloud đã bắt đầu làm việc với cácnhà cung cấp mọi tầm cỡ để tham gia vào dự án mã nguồn mở này nhằm mang lạitính nhất quán với PHP trong đám mây Để tạo ra Simple Cloud, ZendTechnologies, Microsoft, IBM, và Rackspace đã cùng hợp tác với mục tiêu cungcấp một tầng trừu tượng trên nhiều nền tảng khác nhau

Mục tiêu của Simple Cloud API là tạo ra các giao diện chung để lưu trữ tệp,lưu trữ tài liệu và các dịch vụ hàng đợi đơn giản Điều này sẽ cho phép bạn viết

Trang 22

các ứng dụng di động qua lại giữa các nhà cung cấp điện toán đám mây lớn Các

nhà cung cấp, những người đang đưa ra các sáng kiến như vậy để chuẩn hóa điện toán đám mây cần được khen thưởng vì làm việc này và cần được khuyến khích tiếp tục những nỗ lực ấy Khi chọn một nhà cung cấp để cung cấp cho công ty các

dịch vụ PaaS nên xem xét kỹ các nhà cung cấp có hỗ trợ tiêu chuẩn hóa Các tiêuchuẩn làm cho cuộc sống dễ dàng hơn cho tất cả chúng ta trong lĩnh vực CNTT, vàquan trọng nhất, chúng tiết kiệm tiền cho doanh nghiệp

Để giải thoát thị trường PaaS khỏi các khả năng lệ thuộc nhà cung cấp, cần cócác nhà cung cấp dịch vụ hỗ trợ cùng một API bên dưới Câu trả lời rất đơn giản:Các nhà cung cấp dịch vụ sử dụng các công nghệ độc quyền phải đồng ý hỗ trợcác tiêu chuẩn hóa như Simple Cloud

1.4.3 Software as A Service (SaaS) – Phần mềm là dịch

vụ

Mô hình “Phần mềm là dịch vụ” cung cấp truy cập các phần mềm thương mại

có sẵn qua mạng Có khả năng là bạn đã từng sử dụng SaaS, dù vào lúc ấy bạnchưa biết điều đó Ví dụ về SaaS gồm có Netflix, Photoshop, Acrobat, IntuitQuickBooks Online, Gmail, và Google Docs Việc triển khai SaaS cũng bao gồm

cả một phần đáng kể của thị trường ứng dụng di động đang ngày càng tăng, dùđiều này có phần không rõ ràng lắm

SaaS tiêu biểu cho tiềm năng sử dụng phần mềm với chi phí thấp hơn cho cácdoanh nghiệp - sử dụng phần mềm theo nhu cầu chứ không mua một bản quyềncho mỗi máy tính, đặc biệt là khi hầu hết các máy tính hầu như nằm im gần 70%thời gian Thay vì phải mua nhiều bản quyền cho một người dùng duy nhất, doanhnghiệp có thể đưa thời gian sử dụng bản quyền lên gần đến 100% thời gian, thìcàng tiết kiệm được nhiều tiền hơn

Bốn nhân tố làm tăng lợi tức đầu tư (ROI) của SaaS

Trang 23

SaaS đưa ra các cơ hội mới cho các nhà cung cấp phần mềm Cụ thể là, bốnnhân tố động lực được các nhà cung cấp phần mềm SaaS trích dẫn như là các nhân

tố hàng đầu để làm tăng lợi tức đầu tư: tốc độ triển khai tăng lên, sự đồng tình củangười dùng tăng, các yêu cầu hỗ trợ giảm xuống, chi phí triển khai thực hiện vànâng cấp giảm xuống

Tốc độ triển khai

Các ứng dụng máy tính để bàn truyền thống từ lâu nay đã liên quan đến các ràocản triển khai là đáng kể Nhiều nhà phát triển ứng dụng máy tính để bàn nói đếnviệc cập nhật các ứng dụng của họ như là một "cơn ác mộng triển khai" Như

Tariq Ahmed đã nói trong chương đầu tiên của cuốn sách Flex 4 in

Action (Manning Press), "Sự phức tạp hậu cần khi cố gắng để cho hàng ngàn, hàng

trăm ngàn, máy khách chạy đúng phiên bản phần mềm của bạn tại chính xác cùngmột thời điểm, là rất lớn."

Ahmed còn nói rằng những phức tạp này lớn đến mức mà hầu hết các công typhát triển phần mềm máy tính để bàn coi nó là không hợp lý hoặc thậm chí khôngkhả thi Các nhà phát triển, những người đã đấu tranh với điều này trong quá khứnay rất hào hứng triển khai phiên bản SaaS của phần mềm của họ Tuy nhiên đốivới các công ty phần mềm truyền thống cần viết lại phần mềm ở một mức nào đó

để chuyển các phần mềm của họ thành phiên bản SaaS và một số công ty nhậnthấy có chi phí quá cao không chấp nhận được

Đây là một trong những lý do chính làm cho trào lưu tiến tới điện toán đámmây là một quá trình chậm và từng bước Trong hầu hết các trường hợp, giải pháphợp lý là di chuyển phần mềm lên các đám mây theo các giai đoạn, bắt đầu bằngmột phiên bản thu nhỏ đáng kể của ứng dụng ban đầu được cung cấp như SaaS.Điều này rất có ý nghĩa khi xem xét mức độ kiểm soát mà nhà phát triển cần cóđối với phiên bản phần mềm Đó cũng là nơi việc mổ xẻ cụ thể SaaS đóng một vaitrò quan trọng

Trang 24

Bạn có thể thấy nhiều điểm tương đồng giữa điện toán đám mây và "điện toánmạng LAN" của những năm qua Một kiến trúc mạng LAN điển hình gồm có một

loạt các máy trạm tại chỗ, thường được nói đến như là các thiết bị đầu cuối

giả, chạy các ứng dụng bằng cách kết nối với một máy tính lớn mạnh mẽ, thường

là do IBM cung cấp, như trong hình sau

Mối quan hệ của các thiết bị đầu cuối khách và

hệ thống máy tính lớn trên một mạng LAN cơ bản

Kiểu điện toán này phục vụ tốt cho các doanh nghiệp, bởi vì các bộ phậnCNTT có quyền kiểm soát cuối cùng đối với phiên bản và có thể triển khai các bảncập nhật trên cơ sở lặp lần lượt và liên tục với rất ít hoặc không có rắc rối nào.Tương tự như vậy, các rào cản hậu cần đã cản trở việc kiểm soát phiên bản với cácnhà phát triển các ứng dụng phần mềm máy tính để bàn trong quá khứ không tồntại trong đám mây, bởi vì phần mềm chạy trên một cơ sở hạ tầng mà các công typhát triển có quyền truy cập trực tiếp vào đó

Ngày đăng: 09/04/2015, 16:13

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Ozalp Babaoglu, Moreno Marzolla and Michele Tamburini. “Design and implementation of a P2P Cloud system”. SAC '12 Proceedings of the 27th Annual ACM Symposium on Applied Computing, Pages 412-417 , ACM New York, NY, USA, 2012 Sách, tạp chí
Tiêu đề: “Design andimplementation of a P2P Cloud system”
[2] Graffi, K., Stlngl, D., Gross, C., Nguyen, H., Kovacevic, A ., and Stein-metz, R. “Towards a P2P cloud: Reliable resource reservations in unreliable P2P systems”. In Proceedings of the 2010 IEEE 16th International Conference on Parallel and Distributed Systems (Washington, DC, USA, 2010), ICPADS '10, IEEE Computer Society, pp. 27 - 34 Sách, tạp chí
Tiêu đề: Towards a P2P cloud: Reliable resource reservations in unreliable P2P systems
Tác giả: Graffi, K., Stlngl, D., Gross, C., Nguyen, H., Kovacevic, A., Stein-metz, R
Nhà XB: IEEE Computer Society
Năm: 2010
[3] R. Hasan, Z. Anwar, W. Yurcik, L. Brumbaugh, and R. Campbell. “A survey of peer-to-peer storage techniques for distributed file systems”. In Proceedings of the International Conference on Information Technology: Coding and Computing (ITCC'05) -Volume II - Volume 02, ITCC '05, pages 205-213, Washington, DC, USA, 2005. IEEE Computer Society Sách, tạp chí
Tiêu đề: A survey of peer-to-peer storage techniques for distributed file systems
Tác giả: R. Hasan, Z. Anwar, W. Yurcik, L. Brumbaugh, R. Campbell
Nhà XB: IEEE Computer Society
Năm: 2005
[4] Peter Mell and Tim Grance. “The NIST Definition of Cloud Computing”.September 2011 Sách, tạp chí
Tiêu đề: The NIST Definition of Cloud Computing
Tác giả: Peter Mell, Tim Grance
Năm: 2011
[5] M. Jelasity, S. Voulgaris, R. Guerraoui, A.-M.Kermarrec, and M. van Steen.“Gossip-based peer sampling”. ACM Trans. Comput. Syst., 25(3), 2007 Sách, tạp chí
Tiêu đề: Gossip-based peer sampling
Tác giả: M. Jelasity, S. Voulgaris, R. Guerraoui, A.-M.Kermarrec, M. van Steen
Nhà XB: ACM Trans. Comput. Syst.
Năm: 2007
[6] M. Jelasity, A. Montresor, and O. Babaoglu. “The bootstrapping service”. In Proceedings of the 26th IEEE International Conference/Workshops on Distributed Sách, tạp chí
Tiêu đề: The bootstrapping service
Tác giả: M. Jelasity, A. Montresor, O. Babaoglu
Nhà XB: Proceedings of the 26th IEEE International Conference/Workshops on Distributed
[7] K. Graffi et al.. “SkyEye.KOM: An Information Management Over-Overlay for Getting the Oracle View on Structured P2P Systems ”. In Proc. of IEEE ICPADS’08, 2008 Sách, tạp chí
Tiêu đề: SkyEye.KOM: An Information Management Over-Overlay for Getting the Oracle View on Structured P2P Systems
Tác giả: K. Graffi, et al
Nhà XB: IEEE
Năm: 2008
[8] M. Steiner, T. En-Najjary, and E. W. Biersack, “Analyzing Peer Behavior in KAD”. Institut Eurecom, Tech. Rep. EURECOM+2358, 2007 Sách, tạp chí
Tiêu đề: Analyzing Peer Behavior in KAD
Tác giả: M. Steiner, T. En-Najjary, E. W. Biersack
Nhà XB: Institut Eurecom
Năm: 2007
[9] Ramachandran, K., Lutfiyya, H., and Perry, M. Decentralized resource availability prediction for a desktop grid. In Proceedings of the 2010 10 th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing (Washington, DC, USA, 2010), CCGRID '10, IEEE Computer Society, pp. 643- 648 Sách, tạp chí
Tiêu đề: Decentralized resource availability prediction for a desktop grid
Tác giả: Ramachandran, K., Lutfiyya, H., Perry, M
Nhà XB: IEEE Computer Society
Năm: 2010
[10] Dan Orlando. Cloud computing service models - Learn the key concepts of the infrastructure, platform, and software as a service models. In Teachical library of IBM, 2011 Sách, tạp chí
Tiêu đề: Cloud computing service models - Learn the key concepts of the infrastructure, platform, and software as a service models

TỪ KHÓA LIÊN QUAN

w