close

SaaS, PaaS, IaaS là gì? So sánh và cách chọn mô hình cloud

Tác giả: Đông Tùng Ngày đăng: 11/01/2023 Chuyên mục: Kiến thức cơ bản
Disclosure
Website Tino blog được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Tino Group có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Tino blog sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại Tino blog được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

SaaS, PaaS và IaaS là 3 mô hình dịch vụ của điện toán đám mây. IaaS (Infrastructure as a Service) cho thuê hạ tầng: máy chủ ảo, lưu trữ, mạng. PaaS (Platform as a Service) cho thuê nền tảng để chạy ứng dụng bạn viết. SaaS (Software as a Service) cho thuê phần mềm dùng ngay. Ba mô hình khác nhau ở phần bạn tự quản lý: càng đi từ IaaS sang SaaS, bạn càng làm ít và càng ít quyền tuỳ biến.

VPS và cloud server là ví dụ điển hình của IaaS. Nếu chưa rõ khái niệm nền, đọc trước bài điện toán đám mây là gì.

IaaS là gì?

IaaS (Infrastructure as a Service, hạ tầng như một dịch vụ) là mô hình cho thuê tài nguyên tính toán cơ bản như CPU, RAM, ổ đĩa và mạng, trên đó bạn tự cài hệ điều hành và phần mềm tuỳ ý. Theo NIST, người dùng IaaS kiểm soát hệ điều hành, lưu trữ, ứng dụng đã cài và một phần cấu hình mạng như tường lửa của máy (NIST SP 800-145).

  • Ví dụ: VPS, cloud server, Amazon EC2, Azure Virtual Machines, Google Compute Engine; ổ đĩa và kho lưu trữ đối tượng thuê theo dung lượng.
  • Phù hợp: phần mềm cần quyền root, Docker, n8n, game server, phần mềm doanh nghiệp tự cài, môi trường thử nghiệm cần cấu hình riêng.
  • Đổi lại: bạn tự cập nhật bản vá, cấu hình bảo mật, sao lưu. Máy ảo cấu hình sai vẫn bị tấn công dù hạ tầng của nhà cung cấp an toàn.

Muốn biết bắt đầu với một máy IaaS ra sao, xem cách sử dụng VPS cho người mới.

PaaS là gì?

PaaS (Platform as a Service, nền tảng như một dịch vụ) là mô hình cho bạn đưa ứng dụng tự viết lên một nền tảng có sẵn ngôn ngữ, thư viện và công cụ do nhà cung cấp hỗ trợ. Bạn không quản lý máy chủ, hệ điều hành hay ổ đĩa bên dưới, chỉ kiểm soát ứng dụng và vài thiết lập của môi trường chạy.

  • Ví dụ: Azure App Service, Google App Engine, Heroku; cơ sở dữ liệu được quản lý như Azure SQL Database; dịch vụ serverless như Azure Functions, AWS Lambda.
  • Phù hợp: nhóm lập trình muốn tập trung viết code, ứng dụng web và API chạy trên runtime phổ biến (Node.js, Python, PHP, .NET, Java).
  • Đổi lại: chỉ dùng được ngôn ngữ, phiên bản mà nền tảng hỗ trợ; khi nền tảng ngừng một phiên bản, bạn phải nâng cấp theo. Code dùng nhiều dịch vụ riêng của một hãng sẽ khó chuyển đi.

SaaS là gì?

SaaS (Software as a Service, phần mềm như một dịch vụ) là mô hình dùng phần mềm hoàn chỉnh của nhà cung cấp qua trình duyệt hoặc ứng dụng, trả phí theo người dùng hoặc theo gói. Nhà cung cấp lo toàn bộ máy chủ, phần mềm và bản cập nhật; bạn chỉ chỉnh vài thiết lập dành cho tài khoản của mình.

  • Ví dụ: Gmail, Microsoft 365, Google Drive, Zoom, các phần mềm CRM, kế toán, bán hàng online.
  • Phù hợp: nhu cầu phổ biến đã có phần mềm làm tốt: email, lưu file, họp, quản lý khách hàng. Không cần đội kỹ thuật.
  • Đổi lại: ít tuỳ biến, dữ liệu nằm trong hệ thống của nhà cung cấp; cần kiểm tra cách xuất dữ liệu ra trước khi dùng lâu dài.

SaaS, PaaS và IaaS khác nhau thế nào?

SaaS, PaaS và IaaS khác nhau ở mức kiểm soát, kỹ năng cần có và cách tính phí. IaaS cho nhiều quyền kiểm soát hơn cả nhưng đòi hỏi biết quản trị máy chủ; SaaS dễ dùng hơn cả nhưng gần như không tuỳ biến được hạ tầng.

Tiêu chíIaaSPaaSSaaS
Người dùng chínhQuản trị hệ thống, DevOpsLập trình viênNgười dùng cuối, phòng ban
Mức tuỳ biếnCao: chọn hệ điều hành, cài phần mềm bất kỳTrung bình: trong giới hạn runtime hỗ trợThấp: theo tính năng có sẵn
Kỹ năng cầnLinux hoặc Windows Server, mạng, bảo mậtViết code, cấu hình triển khaiDùng phần mềm, phân quyền
Cách tính phí thường gặpTheo gói cấu hình, theo giờ chạyTheo tài nguyên hoặc số lượt gọiTheo người dùng mỗi tháng
Thời gian bắt đầuVài phút có máy, vài giờ đến vài ngày để cài đặt xongVài phút nếu code sẵn sàngVài phút sau khi đăng ký
So sánh 3 mô hình dịch vụ cloud, mức độ cụ thể tuỳ từng dịch vụ

Trong từng mô hình, bạn chịu trách nhiệm phần nào?

Mô hình trách nhiệm chia sẻ (shared responsibility) quy định ai bảo vệ phần nào của hệ thống. Theo Microsoft Learn, ở mọi kiểu triển khai cloud, khách hàng luôn sở hữu và phải bảo vệ dữ liệu, danh tính của mình; phần do nhà cung cấp lo tăng dần khi chuyển từ IaaS sang PaaS rồi SaaS.

Bảng trách nhiệm chia sẻ theo 4 cột tại chỗ, IaaS, PaaS, SaaS: dữ liệu, tài khoản và phân quyền luôn do khách hàng lo; ứng dụng do khách lo ở IaaS, chia sẻ ở PaaS và SaaS; tường lửa và mạng ảo do khách lo ở IaaS, chia sẻ ở PaaS, nhà cung cấp lo ở SaaS; hệ điều hành do khách lo ở IaaS; ảo hoá, máy chủ vật lý và phòng máy do nhà cung cấp lo ở cả IaaS, PaaS, SaaS; tại chỗ thì khách hàng lo tất cả

Sai lầm hay gặp là nghĩ “đã lên cloud thì nhà cung cấp lo bảo mật”. Với VPS, bản vá hệ điều hành, cổng SSH mở ra Internet và mật khẩu quản trị vẫn là việc của bạn; xem checklist bảo mật VPS trước khi đưa máy vào dùng thật.

Ví dụ dễ hiểu: SaaS, PaaS, IaaS qua chuyện làm trà sữa

Hình dung bạn muốn bán một ly trà sữa. Mỗi mô hình tương ứng với việc bạn tự làm bao nhiêu phần, từ dựng bếp đến pha chế. Cột bên phải là việc tương ứng khi đưa một ứng dụng lên mạng.

Mô hìnhLàm trà sữaLàm ứng dụng
On-premise (tự làm hết)Tự xây bếp, kéo điện nước, mua nồi, mua nguyên liệu và tự phaTự mua máy chủ, đặt trong phòng máy, kéo mạng, cài hệ điều hành, cài phần mềm
IaaSThuê một gian bếp có sẵn điện nước, bếp ga; tự mua nguyên liệu và tự phaThuê VPS có sẵn mạng và IP; tự SSH vào cài PHP, Node.js hay .NET rồi chạy ứng dụng
PaaSThuê quầy có sẵn trà cốt, trân châu nấu sẵn; bạn chỉ phối theo công thức riêngĐẩy code lên nền tảng đã có sẵn runtime, nền tảng tự chạy và mở rộng
SaaSRa quán gọi một ly làm sẵn, uống xong quán tự dọnDùng phần mềm có sẵn của nhà cung cấp, cần gì thì liên hệ bộ phận hỗ trợ của họ
Ví dụ minh hoạ mức tự làm của từng mô hình

Nên chọn SaaS, PaaS hay IaaS?

Nên chọn mô hình bắt bạn tự làm ít việc mà vẫn đáp ứng được nhu cầu: có phần mềm sẵn thì dùng SaaS, tự viết ứng dụng trên runtime phổ biến thì dùng PaaS, chỉ chọn IaaS khi cần quyền root, phần mềm đặc thù hoặc muốn kiểm soát chi phí cố định theo tháng.

Sơ đồ 3 câu hỏi chọn mô hình: đã có phần mềm làm sẵn đúng việc như email, lưu file, CRM thì chọn SaaS; nếu không, tự viết ứng dụng chạy được trên runtime có sẵn như Node.js, Python, PHP thì chọn PaaS; nếu cần quyền root, cài phần mềm tuỳ ý, chọn hệ điều hành như Docker, n8n, game server thì chọn IaaS hay VPS

Một hệ thống thực tế thường trộn cả ba. Ví dụ một cửa hàng online dùng email SaaS, chạy API trên PaaS và đặt n8n, cơ sở dữ liệu báo cáo trên một VPS riêng.

IaaS chưa cần thiết khi bạn chỉ có website WordPress nhỏ: hosting có sẵn web server, PHP, cơ sở dữ liệu và nhà cung cấp lo hệ điều hành, nên vận hành nhẹ hơn VPS.

VPS, hosting và cloud server thuộc mô hình nào?

VPS và cloud server thuộc IaaS vì bạn nhận một máy ảo với quyền quản trị hệ điều hành. Hosting gần với PaaS hơn: bạn chỉ tải mã nguồn website lên môi trường có sẵn, không có quyền root. Khác biệt giữa VPS thường và cloud VPS xem ở bài cloud VPS hosting là gì.

Dịch vụMô hìnhBạn quản lý
VPS, cloud serverIaaSHệ điều hành, phần mềm, dữ liệu, tường lửa trong máy
VPS được nhà cung cấp quản trị (managed)IaaS có thêm dịch vụ quản trịỨng dụng và dữ liệu; phần hệ điều hành theo thoả thuận
Shared hosting, cloud hostingGần PaaSMã nguồn website, cơ sở dữ liệu qua bảng điều khiển
Website dựng sẵn trên nền tảng thuê baoSaaSNội dung, sản phẩm, tài khoản
Cách xếp các dịch vụ lưu trữ phổ biến vào 3 mô hình

Muốn thử mô hình IaaS trên một máy chủ của riêng mình? VPS của Tino cho toàn quyền root, chọn Linux hoặc Windows Server, đặt tại trung tâm dữ liệu CMC Telecom, Viettel IDC và VNPT. Xem cấu hình và giá trên trang sản phẩm.

Câu hỏi thường gặp về SaaS, PaaS, IaaS

Google Drive là SaaS, PaaS hay IaaS?

Google Drive là SaaS: bạn dùng phần mềm lưu trữ hoàn chỉnh qua trình duyệt hoặc ứng dụng, không quản lý máy chủ hay ổ đĩa bên dưới.

Microsoft Azure là IaaS hay PaaS?

Azure có cả ba. Azure Virtual Machines là IaaS, Azure App Service và Azure Functions là PaaS, còn Microsoft 365 là SaaS chạy trên hạ tầng của Microsoft. Xem thêm Microsoft Azure là gì.

Serverless thuộc mô hình nào?

Serverless thường được xếp vào PaaS: bạn chỉ viết hàm xử lý, nền tảng tự cấp tài nguyên, tự mở rộng và tính phí theo số lượt chạy cùng thời gian chạy.

On-premise khác IaaS như thế nào?

On-premise là tự mua và vận hành máy chủ trong cơ sở của mình, lo cả phần cứng, điện, mạng. IaaS chuyển phần hạ tầng vật lý cho nhà cung cấp. So sánh đầy đủ ở bài on-premise là gì.

Mô hình nào tốn ít chi phí hơn?

Không có mô hình luôn rẻ hơn. SaaS rẻ khi nhu cầu phổ biến và số người dùng ít; IaaS có lợi khi tải ổn định và bạn tự quản trị được; PaaS tiết kiệm công vận hành nhưng phí tăng theo mức dùng.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan