V.Hot

Khuyến mại

Liên kết website

Hỗ trợ Kê khai thuế-TT28

Công ty CNS xin thông báo.Hiện nay công ty chúng tôi ra đời thêm sản phẩm mới  Phần mềm kế toán đáp ưng tới 80% cho công việc đinh  khoản.Sản phẩm Phần mềm kế toán mới giúp các bạn  đinh khoản những nghiệp vụ  giúp cho các bạn không mất nhiều thời gian cho công việc của mình.

Chi tiết các bạn liên hệ : Đăng Minh Tuấn Mobile: 0977995900

Điện toán đám mây

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). Bài viết này bỏ qua định nghĩa chi tiết về kiến trúc đám mây và các lợi ích của nó và thay vào đó hãy tham chiếu các tài liệu nên đọc trong phần Tài nguyên.

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

Bài viết nà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.

Những chữ viết tắt thường dùng

  • API: Giao diện lập trình ứng dụng.
  • I/O: Vào/ra.
  • SLA: Thỏa thuận mức dịch vụ
  • UI: Giao diện người dùng.

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.
Hình 1. Các phần tử cốt lõi của một nút trong đám mây
Một biểu đồ kiến trúc cho thấy một khung nhìn tầng của các phần tử đám mây cốt lõi
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.
Hình 2. Cơ sở hạ tầng điện toán đám mây
Biểu đồ cho thấy các tầng tương tác đám mây khác nhau, bắt đầu bằng lưu trữ/nối mạng vật lý                      và làm việc lên đến những người dùng/Internet
Với kiến trúc cơ bản của một đám mây đã xác định, bây giờ chúng ta hãy 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.


Về đầu trang

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.

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).

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). 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.

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.

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). 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).
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ý
Biểu đồ cho thất các tầng bắt đầu trên tầng cuối cùng với miền vật lý, rồi đến                     các giao diện vật lý, các giao diện ảo và các máy ảo trên cùng
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..).

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.

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.

Quản lý cục bộ

Bài viết này tìm hiểu cách quản lý từ hai quan điểm. Phần này bàn về cách quản lý nền tảng, phần sau mở rộng sang 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.


Về đầu trang

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

Bây giờ bạn đã nhìn thấy một số các giải pháp nguồn mở ở cấp nút mạng ảo hóa, hãy xem xét một số ứng dụng nguồn mở khác có hỗ trợ cơ sở hạ tầng. Bài viết này tìm hiểu ba thể loại. Hai thể loại đầu là các công nghệ cấp cơ sở hạ tầng bổ sung cho các giải pháp đã thảo luận ở trên. Thể loại 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. VirtManager, cũng dựa trên libvirt và do Red Hat phát triển, là một ứng dụng với một giao diện người dùng GTK+ (thay vì dựa trên Web như 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.

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.

Đặng Minh Tuấn
IT Manager of CNS Technology and Media Corporation
——————————————————————–
Mobile : 0977.995.900 *  Nick YM : dangtuan1188

CÔNG TY CỔ PHẦN CÔNG NGHỆ VÀ TRUYỀN THÔNG CNS
Trụ sở chính: Số 18/68, Quan Nhân, Trung Hòa, Cầu Giấy, Hà Nội, Việt Nam
Điện thoại: (84.4) 3 556 2003. Fax: (84.4) 3 556 2272. Email: info@cnsvietnam.com

Liên kết website:Website: www.cnsvietnam.com * www.cnsvietnam.com.vn * www.cnsvietnam.vn
Website chuyên ngành: www.ketoanxaydung.com   *    www.quantrisanxuat.com
Website cộng đồng: www.trogiupketoan.com * www.phanmemketoanvietnam.com

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: