+5

Tìm hiểu về điện toán đám mây với OpenStack

Những bài trước tôi viết về các kiến thức cơ bản của Python, hôm nay tôi sẽ cùng các bạn từ mặt đất bay lên mây, cùng tìm hiểu điện toán đám mây với OpenStack nhé.

Trước tiên chúng ta cùng tìm hiểu về điện toán đám mây nhé. Có phải điện toán đám mây là các đám mây lơ lửng trên bầu trời có tích điện không nhỉ? Ồ không, lúc đầu nghe đến thuật ngữ này tôi cũng đã liên tưởng như thế. Nhưng sự thật thì khác xa nhau nhé, thậm chí chẳng liên quan gì đến những gì chúng ta liên tưởng. Chúng ta cùng nhau tìm hiểu nào. Let's go!

Chương 1: Điện toán đám mây

** 1.1. Điện toán đám mây là gì?**

Điện toán đám mây (Cloud Computing), còn gọi là điện toán máy chủ ảo, là mô hình điện toán sử dụng các công nghệ máy tính và phát triển dựa vào mạng Internet. Thuật ngữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet (dựa vào cách được bố trí của nó trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức tạp của các cơ sở hạ tầng chứa trong nó. Ở mô hình điện toán này, mọi khả năng liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", cho phép người sử dụng truy cập các dịch vụ công nghệ từ một nhà cung cấp nào đó "trong đám mây" mà không cần phải có các kiến thức, kinh nghiệm về công nghệ đó, cũng như không cần quan tâm đến các cơ sở hạ tầng phục vụ công nghệ đó.

Nghe vẻ phức tạp đúng không các bạn, các bạn có thể xem chi tiết khái niệm này tại đây để hiểu rõ hơn nhé: https://vi.wikipedia.org/wiki/Điện_toán_đám_mây

alt

Bạn nào ngại đọc thì hãy nhìn hình vẽ minh họa để dễ hình dung hơn về khái niệm điện toán đám mây. Chúng ta có thể kể đến những dịch vụ điện toán đám mây thông dụng như Gmail, Google Drive(gồm Word, Excel, Calender, ...) mà các bạn vẫn hay dùng trong công việc hàng ngày. Chúng ta có thể dùng các ứng dụng đó trên mọi thiết bị khác nhau như: điện thoại, laptop, máy tính để bàn ở bất kỳ đâu có internet. Đó là những dịch vụ điện toán đám mây, cung cấp cho người dùng mà không yêu cầu tôi hay các bạn cần có kiến thức, kinh nghiệm hay quan tâm đến nó hoạt động như thế nào, cơ sở hạ tầng ra sao.

**1.2. Các mô hình dịch vụ **

Các nhà cung cấp dịch vụ điện toán đám mây cung cấp các dịch vụ của họ theo ba mô hình cơ bản: alt

  • SaaS(Softeware as a Service): Phần mềm như một dịch vụ
  • PaaS(Platform as a Service): Nền tảng như một dịch vụ
  • IaaS(nfrastructure as a Service): Cơ sở hạ tầng như một dịch vụ

1.3. Các mô hình triển khai

alt

  • Đám mây riêng (Private cloud): dùng trong một doanh nghiệp và không chia sẻ với người dùng ngoài doanh nghiệp đó
  • Đám mây chung (Public cloud): là các dịch vụ trên nền tảng Cloud Computing để cho các cá nhân và tổ chức thuê, họ dùng chung tài nguyên
  • Đám mây lai (Hybrid cloud): Là mô hình kết hợp (lai) giữa các mô hình Public Cloud và Private Cloud

Ngoài ra còn có một mô hình khác là: Đám mây cộng đồng(Community Cloud) là các dịch vụ trên nền tảng Cloud computing do các công ty cùng hợp tác xây dựng và cung cấp các dịch vụ cho cộng đồng.

Chương 2: OpenStack

Hiện nay các dịch vụ điện toán đám mây được cung cấp bởi rất nhiều công ty lớn như Amazon, Google, Microsoft,.. Bên cạnh đó rất nhiều mã nguồn mở để triển khai các dịch vụ điện toán đám mây, và hôm nay tôi muốn giới thiệu với các bạn về OpenStack.

2.1. OpenStack là gì?

OpenStack là một platform điện toán đám mây nguồn mở hỗ trợ cả public clouds và private clouds. Nó cung cấp giải pháp xây dựng hạ tầng điện toán đám mây đơn giản, có khả năng mở rộng và nhiều tính năng phong phú.

openstack-software-diagram.png

Openstack là một cloud software được thiết kế để chạy trên các sản phẩm phần cứng như x86, ARM. Nó không có yêu cầu gì về đặc tính phần mềm hay phần cứng, nó tích hợp với các hệ thống kế thừa và các sản phẩm bên thứ ba.

Ban đầu, OpenStack được phát triển bởi NASA và Rackspace, phiên bản đầu tiên vào năm 2010. Định hướng của họ từ khi mới bắt đầu là tạo ra một dự án nguồn mở mà mọi người có thể sử dụng hoặc đóng góp. OpenStack dưới chuẩn Apache License 2.0, vì thế phiên bản đầu tiên đã phát triển rộng rãi trong cộng đồng được hỗ trợ bởi hơn 12000 cộng tác viên trên gần 130 quốc gia, và hơn 150 công ty bao gồm Redhat, Canonical, IBM, AT&T, Cisco, Intel, PayPal, Comcast và một nhiều cái tên khác. Đến nay, OpenStack đã cho ra đời 13 phiên bản bao gồm: Austin, Bexar, Cactus, Diablo, Essex, Folsom, Grizzly, Havana, Icehouse, Juno, Kilo, Liberty, Mitaka.

Các bạn có thể xem chi tiết các phiên bản đó tại đây: https://wiki.openstack.org/wiki/Releases

2.2. Các thành phần

OpenStack không phải là một dự án đơn lẻ mà là một nhóm các dự án nguồn mở nhằm mục đích cung cấp các dịch vụ cloud hoàn chỉnh. OpenStack chứa nhiều thành phần:

  • OpenStack compute: là module quản lý và cung cấp máy ảo. Tên phát triển của nó Nova. Nó hỗ trợ nhiều hypervisors gồm KVM, QEMU, LXC, XenServer... Compute là một công cụ mạnh mẽ mà có thể điều khiển toàn bộ các công việc: networking, CPU, storage, memory, tạo, điều khiển và xóa bỏ máy ảo, security, access control. Bạn có thể điều khiển tất cả bằng lệnh hoặc từ giao diện dashboard trên web.

  • OpenStack Glance:là OpenStack Image Service, quản lý các disk image ảo. Glance hỗ trợ các ảnh Raw, Hyper-V (VHD), VirtualBox (VDI), Qemu (qcow2) và VMWare (VMDK, OVF). Bạn có thể thực hiện: cập nhật thêm các virtual disk images, cấu hình các public và private image và điều khiển việc truy cập vào chúng, và tất nhiên là có thể tạo và xóa chúng.

  • OpenStack Object Storage: dùng để quản lý lưu trữ. Nó là một hệ thống lưu trữ phân tán cho quản lý tất cả các dạng của lưu trữ như: archives, user data, virtual machine image … Có nhiều lớp redundancy và sự nhân bản được thực hiện tự động, do đó khi có node bị lỗi thì cũng không làm mất dữ liệu, và việc phục hồi được thực hiện tự động.

  • Identity Server: quản lý xác thực cho user và projects.

  • OpenStack Netwok: là thành phần quản lý network cho các máy ảo. Cung cấp chức năng network as a service. Đây là hệ thống có các tính chất pluggable, scalable và API-driven.

  • OpenStack dashboard: cung cấp cho người quản trị cũng như người dùng giao diện đồ họa để truy cập, cung cấp và tự động tài nguyên cloud. Việc thiết kế có thể mở rộng giúp dễ dàng thêm vào các sản phẩm cũng như dịch vụ ngoài như billing, monitoring và các công cụ giám sát khác.

Trên đây là những kiến thức cơ bản tôi đã tìm hiểu được về điện toán đám mây và OpenStack. Những bài tiếp theo tôi sẽ cùng các bạn tìm hiểu sâu hơn về chúng và cài đặt thử cái để nghịch ngợm chút nhỉ?

Rất vui nhận được góp ý của các bạn để bài viết sau hoàn thiện hơn. Hẹn gặp lại các bạn ở bài tiếp theo về OpenStack.

Tài liệu tham khảo

  1. https://vi.wikipedia.org/wiki/Điện_toán_đám_mây
  2. https://wiki.openstack.org/wiki

All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí