Chương 1 NỀN TẢNG VÀ PHÂN LOẠI Trong chương n{y, chúng ta sẽ làm quen với các khái niệm khái quát chung của nền tảng và phân loại điện to|n đ|m m}y. Người đọc sẽ được trang bị các kiến thức về khái niệm và mô hình của Trung tâm dữ liệu, trên cơ sở đó tiếp thu các kiến thức về công nghệ ảo hóa. Một phần nội dung của chương trình b{y ph}n loại c|c mô hình điện to|n đ|m m}y và các kiến trúc, nền tảng điện to|n đ|m m}y đang được cung cấp trên thị trường hiện nay. Một số công cụ và giải pháp mô phỏng điện to|n đ|m m}y tại các trung tâm nghiên cứu cũng được giới thiệu để người đọc có thể tiếp cận các công cụ này.
TRUNG TÂM DỮ LIỆU LỚN Khái niệm Trung tâm dữ liệu Về mặt kỹ thuật, trung tâm dữ liệu (TTDL) hay data center có nguồn gốc từ các phòng máy tính lớn (main frames) thời sơ khai của ngành công nghiệp máy tính trong những năm 1960. Tại thời kỳ này, các hệ thống m|y tính đầu tiên được coi là những thành tựu lớn lao của công nghệ tính toán tự động dựa trên kỹ thuật điện tử (electronic computing). Các hệ thống này là những hệ thống có những yêu cầu cực kỳ phức tạp trong vận hành, bảo trì, và môi trường hoạt động đặc biệt về nguồn điện, điều hòa không khí. Với sự ra đời của mô hình tính to|n “kh|ch – chủ” trong những năm 1990, c|c m|y chủ (server) đ~ thay thế dần các máy tính lớn trong các phòng máy tính tại c|c trường đại học v{ cơ sở nghiên cứu khoa học.
Với sự giảm giá mạnh của phần cứng server, các thiết bị kết nối mạng và sự chuẩn hóa các hệ thống cáp mạng, các hệ thống tính to|n “client-server” đ~ dần dần có chỗ đứng riêng trong môi trường của các tổ chức và doanh nghiệp để phục vụ công tác quản lý và kinh doanh. Thuật ngữ TTDL dùng để chỉ c|c phòng m|y tính được thiết kế riêng bên trong tổ chức, doanh nghiệp với những yêu cầu đặc biệt về nguồn điện, điều hòa không khí, cấu trúc liên kết thiết bị và mạng,… bắt đầu đạt được sự công nhận phổ biến trong khoảng thời gian này. TTDL là giải pháp hoàn chỉnh về một trung t}m điều phối hoạt động, trung t}m lưu trữ, nó có thể cung cấp các ứng dụng cho một tổ chức doanh nghiệp hay phục vụ cho hàng ngàn người cần truy cập, trao đổi thông tin. Mọi hoạt động của TTDL đều có ảnh hưởng rất lớn đến việc kinh doanh, t{i chính, cũng như sự sống còn của một doanh nghiệp như c|c ng}n hàng, công ty tài chính, sàn chứng khoán, công ty bảo hiểm,… TTDL là một hệ thống máy tính cực kỳ quan trọng và rất dễ bị tổn hại, trong một TTDL chứa một lượng máy chủ, thiết bị lưu trữ rất lớn.
Để hoạt động tốt, TTDL cần phải có những hệ thống phụ trợ như nguồn điện, hệ thống làm mát, báo cháy, an ninh bảo mật,., cho dù kích cỡ như thế nào thì các TTDL vẫn có chung những chức năng l{ xử lý v{ lưu trữ dữ liệu. TTDL có thể là một phòng của một tầng lầu, hay một tầng của một toà nhà, hoặc được xây một toà nhà riêng. Trung tâm dữ liệu đ~ trải qua nhiều bước phát triển về công nghệ và cấu trúc, cho đến nay tiếp tục phát triển dựa trên điện to|n đ|m m}y l{ xu hướng mới nhất nhằm hiện đại hóa trung tâm dữ liệu, tăng cường hiệu năng tính to|n, n}ng cao hiệu quả sử dụng năng lượng của thiết bị, giảm chi phí đầu tư v{ vận hành hạ tầng cho khách hàng. Các mô hình của Trung tâm dữ liệu Hình 1.
Mô hình Trung tâm dữ liệu cơ bản Hình 1. Trung tâm dữ liệu có nhiều điểm kết nối đường vào Hình 1. Mô hình trung tâm dữ liệu đơn giản 1. CÔNG NGHỆ ẢO HÓA Khái niệm Ảo hóa (Virtualization) là công nghệ tiên tiến nhất trong một loạt các cuộc cách mạng công nghệ nhằm tăng mức độ ảo hóa hệ thống, cho phép tăng hiệu suất làm việc của máy tính lên một cấp độ chưa từng có.
Ảo hóa hệ thống tức là tiến hành phân chia một máy chủ thành nhiều máy chủ ảo hoặc kết hợp nhiều máy chủ vật lý thành một máy chủ logic, đối với người sử dụng họ nhận biết và sử dụng các server ảo giống như một máy vật lý độc lập có đủ các tài nguyên cần thiết (bộ vi xử lý, bộ nhớ, kết nối mạng,…), trong khi c|c server ảo không hề có những tài nguyên độc lập như vậy, nó chỉ sử dụng t{i nguyên được gán từ máy chủ vật lý. Ở đ}y, bản chất thứ nhất là các server ảo sử dụng tài nguyên của máy chủ vật lý, bản chất thứ hai là các server ảo có thể hoạt động như một server vật lý độc lập. Lợi ích của ảo hóa Thông thường việc đầu tư cho một trung tâm công nghệ thông tin rất tốn kém. Chi phí mua các máy chủ cấu hình mạnh và các phần mềm bản quyền là rất đắt.
Doanh nghiệp luôn luôn muốn cắt giảm và hạn chế tối đa c|c chi phí không cần thiết trong khi vẫn đ|p ứng được năng suất và tính ổn định của hệ thống. Vậy nên việc ứng dụng ảo hóa trở thành nhu cầu cần thiết của bất kỳ doanh nghiệp nào dù lớn hay nhỏ. Thay vì mua 10 máy chủ cho 10 ứng dụng thì chỉ cần mua 1 hoặc 2 máy chủ có hỗ trợ ảo hóa cũng vẫn có thể chạy tốt 10 ứng dụng n{y. Điều này cho thấy sự khác biệt giữa hệ thống ảo hóa và không ảo hóa.
Bên cạnh đó, việc ứng dụng ảo hóa còn đem lại những lợi ích sau: – Quản lý đơn giản; – Triển khai nhanh; – Phục hồi v{ lưu trữ hệ thống nhanh; – Cân bằng tải và phân phối tài nguyên linh hoạt; – Tiết kiệm chi phí; – Ảo hóa góp phần tăng cường tính liên tục, hạn chế ngắt quãng. Kiến trúc ảo hóa Xét về kiến trúc hệ thống, các kiến trúc ảo hóa hệ thống máy chủ có thể ở các dạng chính là: Host–based, Hypervisor–based (còn gọi l{ bare mental hypervisor, được chia nhỏ làm hai loại là Monothic hypervisor và Microkernel hypervisor), Hybrid. Ngoài ra, tùy theo sản phẩm ảo hóa được triển khai (như VMWare, Microsoft HyperV, Citrix XEN Server) v{ mức độ ảo hóa cụ thể sẽ khác nhau. Kiến trúc ảo hóa Hosted–based Còn gọi là hosted hypervisor, kiến trúc này sử dụng một lớp hypervisor chạy trên nền tảng hệ điều hành, sử dụng các dịch vụ được hệ điều hành cung cấp để phân chia tài nguyên tới các máy ảo.
Nếu ta xem hypervisor là một phần mềm riêng biệt, thì các hệ điều hành khách của máy ảo sẽ nằm trên lớp thứ ba so với phần cứng máy chủ. Nhìn vào hình 1.4, ta có thể thấy mô hình n{y được chia làm bốn lớp hoạt động như sau: – Nền tảng phần cứng; – Hệ điều hành Host; – Hệ thống virtual machine monitor (hypervisor); – Các ứng dụng máy ảo: sử dụng tài nguyên do hypervisor quản lý. Mô hình ảo hóa Hosted–based Kiến trúc ảo hóa Hypervisor–based Hình 1. Kiến trúc Hypervisor–based Trong mô hình này, ta thấy lớp phần mềm hypervisor chạy trực tiếp trên nền tảng phần cứng của máy chủ, không thông qua bất kỳ một hệ điều hành hay một nền tảng nào khác.
Qua đó, c|c hypervisor n{y có khả năng điều khiển, kiểm soát phần cứng của máy chủ. Đồng thời nó cũng có khả năng quản lý các hệ điều hành chạy trên nó. Một hệ thống ảo hóa máy chủ sử dụng nền tảng Bare – Mental hypervisor bao gồm ba lớp chính: – Nền tảng phần cứng: bao gồm các thiết bị nhập xuất, thiết bị lưu trữ (Hdd, Ram), bộ vi xử lý CPU và các thiết bị khác (các thiết bị mạng, vi xử lý đồ họa, }m thanh…). – Lớp nền tảng ảo hóa: Virtual Machine Monitor thực hiện việc liên lạc trực tiếp với nền tảng phần cứng phía dưới, quản lý và phân phối tài nguyên cho các hệ điều hành khác nằm trên nó.
– Các ứng dụng máy ảo: các máy ảo này sẽ lấy tài nguyên từ phần cứng, thông qua sự cấp phát và quản lý của hypervisor. Kiến trúc lai Hybrid Hybird là một kiểu ảo hóa mới hơn v{ có nhiều ưu điểm. Trong đó lớp ảo hóa hypervisor chạy song song với hệ điều hành máy chủ. Tuy nhiên, trong cấu trúc ảo hóa này, các máy chủ ảo vẫn phải đi qua hệ điều hành máy chủ để truy cập phần cứng nhưng kh|c biệt ở chỗ cả hệ điều hành máy chủ và các máy chủ ảo đều chạy trong chế độ hạt nhân.
Kiến trúc ảo hóa Hybrid Ảo hóa trong điện to|n đ|m m}y Trong điện to|n đ|m m}y, một trong những vấn đề nền tảng v{ cơ bản nhất là tính ảo hóa (virtualization) của hạ tầng bên dưới. Trên Linux, các gói phần mềm nguồn mở cung cấp các giải pháp xây dựng các tầng IaaS (đôi khi l{ cả PaaS) đều đ~ được đóng gói kèm theo một công nghệ ảo hóa riêng biệt. Ví dụ: Nimbus với Xen (và cả KVM), OpenStack với KVM/QEMU, VMWare với VMWare Hypervisor, OpenVZ Linux Container với công nghệ OpenVZ. Điện to|n đ|m m}y v{ ảo hóa giúp tối ưu hóa t{i nguyên về mặt sử dụng năng lượng, sử dụng theo yêu cầu và kèm theo khả năng mở rộng linh hoạt.
Ảo hóa là một phần không thể thiếu trong mọi đ|m m}y dựa trên khả năng trừu tượng hóa v{ bao đóng. Ảo hóa cung cấp mức độ trừu tượng cần thiết như việc các tài nguyên tính to|n, lưu trữ, tài nguyên mạng được đồng nhất th{nh kho t{i nguyên để cấp phát theo nhu cầu. Ảo hóa cung cấp tính bao đóng vì mọi thao t|c c{i đặt cập nhật trên nguồn tài nguyên ảo hóa chỉ diễn ra trong phạm vi máy ảo mà không ảnh hưởng hay t|c động tới các máy ảo kh|c, t{i nguyên kh|c không được cấp phát. Công nghệ điện to|n đ|m m}y dựa mạnh mẽ vào công nghệ ảo hóa vì các nhân tố sau đ}y: – Nhiều ứng dụng có thể chạy trên cùng một server, tài nguyên có thể được sử dụng hiệu quả hơn.
– Khả năng cấu hình cao: Nhiều ứng dụng yêu cầu t{i nguyên kh|c nhau như số lượng core, dung lượng bộ nhớ. Việc cấu hình này khó thực hiện được ở mức độ phần cứng nhưng dễ dàng trong ảo hóa. – Khả năng sẵn sàng của ứng dụng cao: Ảo hóa cung cấp khả năng phục hồi nhanh sau những hư hỏng cũng như khả năng n}ng cấp mà không gây ngắt quãng quá trình sử dụng dịch vụ của người dùng.