(+84) 28-71079000  (+84) 28-37228780        sales@athlsolutions.com
  • IP Contact Center

    IP Contact Center

    Giải pháp trung tâm chăm sóc khách hàng giúp tối ưu hóa hoạt động chăm sóc khách hàng của doanh nghiệp

  • Video Conferencing

    Video Conferencing

    Giải pháp hội họp từ xa qua mạng IP, giúp doanh nghiệp giảm chi phí vận hành, tăng thời gian ra quyết định

  • Microsoft Lync 2013

    Microsoft Lync 2013

    Giải pháp truyền thông hợp nhất Microsoft Lync 2013 hỗ trợ chat, trạng thái hiện diện, chia sẻ file, audio conferencing và video conferencing, tích hợp sâu vào hệ sinh thái Microsoft.

  • OpenScape UC

    OpenScape UC

    Giải pháp truyền thông hợp nhất trên nền tảng SIP. Hệ thống hỗ trợ 100.000 thuê bao và 3000 chi nhánh

  • Asterisk

    Asterisk

    Giải pháp truyền thông VoIP mã nguồn mở

Điện toán đám mây không còn là một công nghệ ở đỉnh điểm bùng nổ nữa mà là một công nghệ có giá trị và quan trọng đang thay đổi cơ bản cách chúng ta sử dụng và phát triển các ứng dụng. Như bạn mong đợi, Linux® và mã nguồn mở cung cấp nền tảng cho đám mây (dành cho cơ sở hạ tầng công cộng và riêng tư). Hãy nghiên cứu cấu trúc đám mây, kiến trúc của nó và các công nghệ mã nguồn mở được sử dụng để xây dựng các nền tảng điện toán và lưu trữ có khả năng mở rộng và năng động.

ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở
Ứng dụng Điện toán đám mây trong ngành y tế

Các khối xây dựng cho cơ sở hạ tầng như một dịch vụ

Việc sử dụng đám mây như là một khái niệm trừu tượng khá phổ biến với hệ thống phân tán là Internet, nhưng một vài năm qua đã cho thấy khái niệm trừu tượng này được mở rộng để hợp nhất các cơ sở hạ tầng có khả năng mở rộng và được ảo hóa mức độ cao, dễ dàng được cung cấp như một dịch vụ (hoặc cục bộ hoặc từ xa).

Cấu trúc điện toán đám mây

Hãy bắt đầu bằng việc xem xét các khái niệm trừu tượng cốt lõi của kiến trúc đám mây (từ cơ sở hạ tầng như một dịch vụ [IaaS: Infrastructure as a Service]), sau đó bước ra ngoài các khối xây dựng tới các giải pháp tích hợp cao hơn.

Mặc dù không phải là một yêu cầu, nhưng công nghệ ảo hóa mang lại các lợi ích có một không hai để xây dựng các kiến trúc có khả năng mở rộng động. Ngoài khả năng mở rộng, công nghệ ảo hóa còn đưa vào khả năng di chuyển các máy ảo (VM) giữa các máy chủ vật lý dùng cho các mục đích cân bằng tải. Hình 1 cho thấy rằng thành phần ảo hóa được tạo ra bởi một tầng phần mềm có tên là tầng siêu giám sát -hypervisor (đôi khi được gọi là giám sát máy ảo [VMM]). Tầng này tạo ra khả năng chạy đồng thời nhiều hệ điều hành (và các ứng dụng của chúng) trên một máy tính vật lý. Trên tầng siêu giám sát là đối tượng gọi là máy ảo chứa đựng hệ điều hành, các ứng dụng và cấu hình. Theo tùy chọn, sự mô phỏng thiết bị có thể được tạo ra trong tầng siêu giám sát hoặc như là một máy ảo. Cuối cùng, do tính chất năng động mới của công nghệ ảo hóa và các khả năng mới do nó mang lại, cần có các lược đồ quản lý mới. Việc quản lý này tốt nhất được thực hiện trong các tầng, khi tính đến quản lý cục bộ tại máy chủ, cũng như quản lý cơ sở hạ tầng mức cao hơn, tạo ra sự phối hợp tổng thể của môi trường ảo.

ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở
Hình 1. Các phần tử cốt lõi của một nút trong đám mây

Nếu bạn lấy các nút mạng như Hình 1 và nhân chúng lên nhiều lần trên một mạng vật lý với lưu trữ có chia sẻ, phối hợp quản lý trên toàn bộ cơ sở hạ tầng, rồi cung cấp cân bằng tải ban đầu của các kết nối đến (cho dù theo cách thiết lập công cộng hay riêng tư) với việc lưu trữ nhanh và lọc, bạn có một cơ sở hạ tầng ảo được gọi là đám mây. Cấu trúc mới này được chỉ ra trong Hình 2. Các máy không hoạt động có thể được tắt nguồn điện cho đến khi cần bổ sung thêm khả năng tính toán (tạo ra hiệu năng tốt hơn), với các máy ảo được cân bằng (thậm chí là động) trên các nút tùy thuộc vào tải riêng của chúng.

ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở
Hình 2. Cơ sở hạ tầng điện toán đám mây

Với kiến trúc cơ bản của một đám mây đã xác định, hãy cùng tìm hiểu xem nguồn mở đang được áp dụng ở đâu để xây dựng cơ sở hạ tầng điện toán đám mây động.

Các công nghệ mã nguồn mở cốt lõi

Bối cảnh Linux đang chứng kiến một làn sóng phát triển tập trung vào các cơ sở hạ tầng được ảo hóa dành cho việc ảo hóa, quản lý và tích hợp với quy mô lớn hơn của các gói phần mềm đám mây. Chúng ta hãy bắt đầu xem xét mã nguồn mở ở cấp nút mạng riêng lẻ, sau đó chuyển lên toàn bộ cơ sở hạ tầng để xem chuyện gì đang xảy ra ở đây.

Các tầng siêu giám sát

Cơ sở của đám mây ở cấp nút mạng là tầng siêu giám sát. Mặc dù việc ảo hóa không phải là một yêu cầu, nhưng nó cung cấp khả năng không thể thiếu được cho các kiến trúc có khả năng mở rộng và có hiệu năng. Ở đó tồn tại một số giải pháp ảo hóa mã nguồn mở, nhưng có hai giải pháp chủ yếu là chuyển đổi hệ điều hành Linux thành một tầng siêu giám sát: KVM (Linux Kernel Virtual Machine - Máy ảo nhân Linux) và Lguest. KVM là giải pháp tầng siêu giám sát chính thức, được triển khai trong môi trường sản xuất. Lguest là một giải pháp tập trung vào Linux, chỉ chạy các máy ảo Linux, nhưng được tích hợp trong nhân (kernel) và đang được sử dụng rộng rãi hơn.

ATHLSolutions-Linux Kernel Virtual Machine
ATHLSolutions-Linux Kernel Virtual Machine

ATHLSolutions-lguest Linux

Ngoài việc chuyển đổi Linux thành tầng siêu giám sát, có những giải pháp khác chọn cách tiếp cận tập trung vào máy ảo khách. UML (User-Mode Linux - Linux trong chế độ người dùng) là một cách tiếp cận, sửa đổi nhân (kernel) Linux máy khách để chạy trên hệ điều hành Linux (không có phần mở rộng tầng siêu giám sát). Vì hầu hết người dùng muốn chạy một nhân chưa sửa đổi, nên các giải pháp ảo hóa đầy đủ (như KVM) được ưa thích hơn.

Cách tiếp cận UML này cũng rất phổ biến, nhưng đòi hỏi phần cứng ảo hóa (như là bàn điều khiển, đĩa ảo và kết nối mạng).

ATHLSolutions-User-Mode Linux
Sơ đồ khái niệm của UML - User Mode Linux

Mô phỏng thiết bị

Tầng siêu giám sát cung cấp các phương tiện để chia sẻ CPU với nhiều hệ điều hành (ảo hóa CPU), nhưng để cung cấp công nghệ ảo hóa đầy đủ, toàn bộ môi trường phải được ảo hóa cho các máy ảo. Việc mô phỏng máy — hay nền tảng — có thể được thực hiện theo một số cách, nhưng một gói mã nguồn mở phổ biến hỗ trợ một số các tầng siêu giám sát được gọi là QEMU. QEMU là trình mô phỏng và tầng siêu giám sát đầy đủ. Nhưng KVM sử dụng QEMU để mô phỏng thiết bị như một quá trình riêng biệt trong vùng người dùng (xem Hình 1 bên trên). Một tính năng thú vị của QEMU là vì nó cung cấp mô phỏng đĩa (thông qua định dạng QCOW), nên QEMU cung cấp các tính năng cao cấp khác như ảnh chụp nhanh và di chuyển máy ảo sống.

ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở
Linux và Windows ảo hóa với KVM và Qemu

Kể từ nhân 2.6.25, KVM sử dụng virtio như là một phương tiện tối ưu hóa hiệu năng ảo hóa vào/ra. Virtio thực hiện điều này bằng cách đưa vào các trình điều khiển có ảo hóa một phần vào tầng siêu giám sát với các móc nối từ máy khách để mang lại hiệu năng đến mức gần như nguyên bản. Việc này chỉ thực hiện được khi hệ điều hành có thể được sửa đổi cho mục đích này, nhưng tìm ra được cách sử dụng trong máy khách Linux trong các kịch bản tầng siêu giám sát của Linux.

ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở
Kiến trúc của KVM
ATHLSolutions-Điện toán đám mây- Cấu trúc của một đám mây nguồn mở

Hiện nay, virtio và QEMU hoạt động cùng với nhau sao cho các giao dịch thiết bị được mô phỏng có thể được tối ưu hóa giữa máy khách Linux và bộ mô phỏng QEMU trong vùng người sử dụng.

Nối mạng ảo

Do các máy ảo hợp nhất trong các máy chủ vật lý, nên các nhu cầu nối mạng của nền tảng này tăng lên. Nhưng thay vì bắt buộc tất cả nối mạng các máy ảo tới các lớp vật lý của nền tảng này, để thay thế thì truyền thông nội bộ có thể tự được ảo hóa . Để tối ưu hóa truyền thông mạng giữa các máy ảo, có đưa vào chuyển mạch ảo. Chuyển mạch ảo vSwitch hoạt động giống như một chuyển mạch vật lý, nhưng được ảo hóa trong nền tảng này (xem Hình 3 bên dưới). Trong hình này, các giao diện được ảo hóa (VIF) đã liên kết với các máy ảo truyền thông qua chuyển mạch ảo tới các giao diện vật lý (các PIF).

ATHLSolutions-Open vSwitch
Hình 3. Khung nhìn mức cao của Open vSwitch với các giao diện ảo và giao diện vật lý

Nguồn mở cũng đang giải quyết vấn đề này, bằng một giải pháp rất thú vị được gọi là Open vSwitch. Ngoài việc cung cấp một chuyển mạch ảo cho các môi trường ảo, vSwitch cũng có thể tích hợp ngang qua các nền tảng vật lý và cung cấp các tính năng mức doanh nghiệp như các mạng cục bộ ảo (VLAN), Chất lượng dịch vụ (QoS) dựa trên quyền ưu tiên, trung chuyển và hỗ trợ tăng tốc phần cứng (như các bộ điều hợp mạng ảo hóa vào/ra một gốc [IOV-single-root I/O virtualization]). Open vSwitch hiện có sẵn cho các nhân 2.6.15 và hỗ trợ một loạt các giải pháp ảo hóa dựa trên Linux (Xen, KVM, VirtualBox) và các tiêu chuẩn quản lý (Remote Switched Port Analyzer - Bộ phân tích cổng được chuyển mạch từ xa [RSPAN], NetFlow, v.v..).

ATHLSolutions-Open vSwitch

Các công cụ và các công nghệ máy ảo

Do các máy ảo là sự kết hợp của hệ điều hành, hệ thống tệp gốc và cấu hình, nên không gian này đã chín muồi để phát triển công cụ. Nhưng để thấy rõ tiềm năng đầy đủ của các máy ảo và các công cụ, phải có một cách di động để lắp ráp chúng. Cách tiếp cận hiện tại, được gọi là Định dạng ảo hóa mở (OVF: Open Virtualization Format) là một cấu trúc máy ảo linh hoạt, hiệu quả và di động. OVF gói gọn một hình ảnh đĩa ảo trong một trình bao gói XML định nghĩa cấu hình của máy ảo, bao gồm các yêu cầu cấu hình nối mạng, bộ xử lý và bộ nhớ và một loạt siêu dữ liệu mở rộng để định nghĩa thêm các nhu cầu hình ảnh và nền tảng của nó. Khả năng quan trọng mà OVF cung cấp là tính di động để phân phối các máy ảo theo cách mà tầng siêu giám sát không thể biết được.

ATHLSolutions-Open Virtualization Format
Minh họa sử dụng Gói và di chuyển khối lượng công việc giữa các đám mây sử dụng VMW DGRM vCloud Director Build Private Cloud R1 800x600 như API vCloud và Open Virtualization Format

Hiện có một số tiện ích để quản lý các ảnh máy ảo (VMI) cũng như chuyển đổi chúng sang và từ các định dạng khác. ovftool của VMware là một công cụ hữu ích mà bạn có thể sử dụng để chuyển đổi VMI (ví dụ, để chuyển đổi từ định dạng Bộ dụng cụ phát triển đĩa ảo VMware [VMDK: VMware Virtual Disk Development Kit] sang OVF). Công cụ này và các công cụ khác rất hữu ích một khi bạn có một VMI, nhưng điều gì sẽ xảy ra nếu bạn có một máy chủ vật lý mà bạn muốn chuyển đổi thành một VMI? Bạn có thể sử dụng một công cụ hữu ích được gọi là Clonezilla cho mục đích này. Mặc dù lúc khởi đầu Clonezilla được phát triển như một công cụ sao chép đĩa dùng để phục hồi sau thảm họa, những bạn có thể sử dụng nó để chuyển đổi một thực thể máy chủ vật lý thành máy ảo để triển khai dễ dàng trong một cơ sở hạ tầng ảo hóa. Rất nhiều công cụ khác hiện có (như là các tiện ích được xây dựng trên libvirt) hoặc đang được phát triển để chuyển đổi và quản lý khi định dạng OVF được chấp nhận.

ATHLSolutions-Open Virtualization Format

ATHLSolutions-Open Virtualization Format
VMDK: VMware Virtual Disk Development Kit

ATHLSolutions-Open Virtualization Format
Các gói OVF chứa hai máy ảo: Một máy chủ Web và cơ sở dữ liệu

Quản lý cục bộ

Cách quản lý có hai quan điểm. Quan điểm về cách quản lý nền tảng, và cách quản lý cơ sở hạ tầng ở cấp độ cao hơn.

Red Hat đã giới thiệu thư viện libvirt như là một Giao diện lập trình ứng dụng (API) để quản lý ảo hóa nền tảng (các tầng siêu giám sát và các máy ảo). Điều làm cho libvirt thú vị là nó hỗ trợ một số các giải pháp tầng siêu giám sát (KVM và Xen là hai trong số đó) và cung cấp các liên kết API với một số ngôn ngữ (như C, Python và Ruby). Nó cung cấp "bước đi cuối cùng" về quản lý, giao tiếp trực tiếp với tầng siêu giám sát của nền tảng và mở rộng các API ra tới các giải pháp quản lý cơ sở hạ tầng lớn hơn. Với libvirt, để khởi động và dừng máy ảo rất đơn giản và nó cung cấp các API cho nhiều hoạt động cao cấp hơn, chẳng hạn như di chuyển các máy ảo giữa các nền tảng. Khi sử dụng libvirt, có thể sử dụng trình vỏ (shell) của nó (được xây dựng trên libvirt), được gọi là virsh.

ATHLSolutions-Điện toán đám mây- libvirt
ATHLSolutions-Điện toán đám mây- libvirt

Các công nghệ mã nguồn mở của cơ sở hạ tầng

Hãy xem xét một số ứng dụng nguồn mở khác có hỗ trợ cơ sở hạ tầng. Ba loại giải pháp bao gồm hai giải pháp công nghệ cấp cơ sở hạ tầng và giải pháp thứ ba bao gồm các giải pháp tích hợp để ghép tất cả các mảnh với nhau giúp cho việc triển khai đơn giản hơn.

Các công nghệ vào/ra

Việc xây dựng một kiến trúc Web có thể mở rộng và cân bằng tùy thuộc vào khả năng cân đối lưu lượng truy cập Web ngang qua các máy chủ thực hiện các chức năng tầng sau. Một số giải pháp cân bằng tải hiện có, nhưng gần đây, Yahoo! đã mở mã nguồn một giải pháp được gọi là Máy chủ lưu lượng (Traffic Server). Traffic Server rất thú vị, vì nó chứa đựng một số lượng lớn các khả năng trong một gói dành cho các cơ sở hạ tầng đám mây, bao gồm cả quản lý phiên làm việc, chứng thực, lọc, cân bằng tải và định tuyến. Yahoo! ban đầu mua lại sản phẩm này từ Inktomi, nhưng bây giờ đã mở rộng và giới thiệu sản phẩm trong nguồn mở.

Quản lý cơ sở hạ tầng

Việc quản lý cơ sở hạ tầng quy mô lớn hơn (quản lý nhiều tầng siêu giám sát và thậm chí nhiều máy ảo hơn) có thể được thực hiện theo một số cách. Hai trong số các giải pháp phổ biến nhất là mỗi giải pháp được xây dựng từ cùng một nền tảng (libvirt). Gói oVirt là một công cụ quản lý máy ảo mở có quy mô từ một vài máy ảo đến hàng ngàn máy ảo chạy trên hàng trăm máy chủ. Gói oVirt, do Red Hat phát triển, là một bàn điều khiển quản lý dựa trên Web, ngoài việc quản lý truyền thống, còn hỗ trợ tự động hóa phân cụm và cân bằng tải. Công cụ oVirt được viết bằng ngôn ngữ Python.

ATHLSolutions-Điện toán đám mây- oVirt

VirtManager trình bày một màn hình đồ họa phong phú hơn nhiều (về hiệu năng trực tiếp và sử dụng tài nguyên) và bao gồm một trình hiển thị khách Điện toán mạng ảo (VNC: Virtual Network Computing) với một bàn điều khiển đồ họa đầy đủ cho các máy ảo từ xa.

ATHLSolutions-Điện toán đám mây- VirtManager

Còn Puppet là một gói phần mềm nguồn mở khác được thiết kế cho cơ sở hạ tầng trung tâm dữ liệu (một đám mây). Mặc dù không được thiết kế riêng cho các cơ sở hạ tầng ảo hóa, nó làm đơn giản hoá việc quản lý các cơ sở hạ tầng lớn bằng cách trừu tượng hóa các chi tiết của hệ điều hành ngang hàng. Nó thực hiện điều này thông qua việc sử dụng ngôn ngữ Puppet. Puppet là lý tưởng để tự động hóa các nhiệm vụ quản trị trên một số lượng lớn các máy chủ và được sử dụng rộng rãi hiện nay.

Các giải pháp IaaS tích hợp

Các gói nguồn mở sau đây có cách tiếp cận toàn diện hơn bằng cách tích hợp tất cả các chức năng cần thiết vào trong một gói duy nhất (bao gồm cả ảo hóa, quản lý, các giao diện và an ninh). Khi được thêm vào một mạng các máy chủ và lưu trữ, các gói này tạo ra các cơ sở hạ tầng điện toán đám mây và lưu trữ linh hoạt (IaaS). Để biết chi tiết về các nền tảng này, xem Tham khảo bên dưới.

Eucalyptus

Một trong những gói mã nguồn mở phổ biến nhất để xây dựng các cơ sở hạ tầng điện toán đám mây là Eucalyptus (viết tắt của Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems - Kiến trúc điện toán tiện ích linh hoạt để liên kết các chương trình của bạn với các hệ thống có ích). Điều làm cho nó độc nhất vô nhị là giao diện của nó là tương thích với Đám mây điện toán linh hoạt Amazon - Amazon Elastic Compute Cloud (Amazon EC2 — giao diện của điện toán đám mây của Amazon). Ngoài ra, Eucalyptus bao gồm Walrus (Hải mã), là một ứng dụng lưu trữ đám mây tương thích với Dịch vụ lưu trữ đơn giản của Amazon – Amazon Simple Storage Service (Amazon S3 — giao diện lưu trữ đám mây của Amazon).

ATHLSolutions-Eucalyptus

Eucalyptus hỗ trợ KVM/Linux và Xen cho các tầng siêu giám sát và bao gồm việc trình phân phối cụm Rocks để quản lý phân cụm.

OpenNebula

OpenNebula là một ứng dụng mã nguồn mở thú vị khác (theo giấy phép của Apache) được phát triển tại Đại học Complutense de Madrid. Ngoài việc hỗ trợ xây dựng đám mây riêng, OpenNebula ủng hộ ý tưởng về các các đám mây lai. Đám mây lai cho phép kết hợp một cơ sở hạ tầng đám mây riêng tư với một cơ sở hạ tầng đám mây công cộng (như Amazon) để cho phép các mức độ mở rộng cao hơn.

ATHLSolutions-OpenNebula
ATHLSolutions-OpenNebula

OpenNebula hỗ trợ Xen, KVM/Linux và VMware và dựa vào các phần tử như libvirt để quản lý và tự kiểm tra.

Nimbus

Nimbus là một giải pháp IaaS khác tập trung vào các tính toán khoa học. Với Nimbus, bạn có thể thuê tài nguyên ở xa (chẳng hạn như tài nguyên do Amazon EC2 cung cấp) và quản lý chúng cục bộ (đặt cấu hình, triển khai các máy ảo, theo dõi, v.v). Nimbus được biến đổi từ dự án Dịch vụ vùng làm việc -Workspace Service (một phần của Globus.org). Do lệ thuộc vào Amazon EC2, nên Nimbus hỗ trợ Xen và KVM/Linux.

ATHLSolutions-Nimbus
ATHLSolutions-Nimbus

Nền tảng đám mây

Citrix đã tích hợp Xen vào một nền tảng IaaS, sử dụng Xen như là tầng siêu giám sát trong khi tích hợp các khả năng mã nguồn mở khác như vSwitch Open. Một ưu điểm thú vị với giải pháp Xen là tập trung vào quản lý dựa theo các tiêu chuẩn (bao gồm cả OVF, Lực lượng đặc nhiệm quản lý phân tán [DTMF: Distributed Management Task Force], Mô hình thông tin chung [CIM: Common Information Model] và Sáng kiến quản lý ảo hóa [VMAN: Virtualization Management Initiative]) từ dự án Kensho. Ngăn xếp quản lý Xen hỗ trợ cho các bảo đảm của Thỏa thuận cấp dịch vụ (SLA), cùng với các số liệu thông kê chi tiết để trả phí sau.

ATHLSolutions-Xen
ATHLSolutions-Xen
Phóng to hình

OpenQRM

Cuối cùng nhưng không kém quan trọng là OpenQRM, được phân loại là nền tảng quản lý trung tâm dữ liệu. OpenQRM cung cấp một bàn điều khiển duy nhất để quản lý toàn bộ trung tâm dữ liệu được ảo hóa, về mặt kiến trúc trung tâm này có cho phép cắm thêm để tích hợp các công cụ của bên thứ ba. OpenQRM kết hợp hỗ trợ với tính sẵn sàng cao (thông qua dự phòng) và hỗ trợ một loạt các các tầng siêu giám sát, bao gồm KVM/Linux, Xen, VMware và Linux VServer.

ATHLSolutions-OpenQRM
ATHLSolutions-OpenQRM

Tham khảo thêm các thông tin khác

Nguồn tham khảo từ https://www.ibm.com - tác giả M. Tim Jones