2.2.3. Công nghệ lưu trữ mạng Sans
Công nghệ lưu trữ mạng cục bộ SAN (Storage Area Network) là một hệ thống được thiết kế cho việc thêm các ổ đĩa lưu trữ cho một hệ thống máy chủ một cách dễ dàng như ổ đĩa cứng, hoặc băng từ. Công nghệ này cho phép người dùng kết nối từ xa đến các thiết bị lưu trữ trên mạng vì thế nên nó dễ dàng chia sẻ lưu trữ và quản lý thông tin, mở rộng lưu trữ dễ dàng thông qua quá trình thêm các thiết bị lưu trữ vào mạng không cần phải thay đổi các thiết bị như máy chủ hay các thiết bị lưu trữ hiện có. Trong công nghệ ảo hóa lưu trữ mạng được dùng làm trung tâm của dữ liệu và cũng có thể làm nơi chứa các máy ảo khi cần thiết. Nó hỗ trợ các máy chủ có thể lấy dữ liệu từ nó để khởi động.
SAN cũng có thể được thiết kế tích hợp các tính năng lưu trữ và cho phép nhiều máy chủ cùng lưu trữ trên nó. Ngoài ra một ưu điểm nổi trội của nó là phục hồi dữ liệu một cách nhanh chóng bằng cách thay nóng một thiết bị bị lỗi. Từ đó cho thấy SAN là một thành phần không thể thiếu của một hệ thống lớn.
Hình 2.18: Sơ đồ lƣu trữ San
2.2.4. Công nghệ High Availability
High Availability được cung cấp bởi nhà sản xuất Vmware. Đây là một tiện ích hoàn hảo được thiết kế cho hệ thống máy chủ ESX và Vmware Infrastructure. Mục đích của công nghệ này là di chuyển các máy ảo từ máy chủ này sang một máy chủ khác khi sảy ra sự cố về hỏng hóc máy chủ vật lý hay mất kết nối mạng. Công nghệ này giúp các máy ảo ứng dụng có thể được phục hồi và hoạt động ngay khi chuyển sang máy chủ mới mà không có lo lắng gì về vấn đề tương thích với máy chủ vật lý.
Đây là một tính năng rất mạnh vì bất cứ hệ thống hoặc thiết bị phần cứng nào cũng đều có thể bị rủi ro và hư hỏng, và các vấn đề trục trặc này khó có thể đoán trước
được. Vì vậy để đảm bảo an toàn dữ liệu và các máy chủ ứng dụng có thể hoạt động trực tuyến ngay lập tức thì khi bị sự cố thì giải pháp chính là cấu hình cho hệ thống hoạt động tính năng High Availability.
Hình 2.19: Sơ đồ hoạt động của Vmware High Availability
2.2.4.1. Yêu cầu của Vmware High Availability
Công nghệ High Availability chỉ hỗ trợ cho một số phần mềm ảo hóa do Vmware cung cấp như là Vmware Infrastructure hoặc Vmware ESX Server.
Để cấu hình tính năng này phải có ít nhất là hai hệ thống máy chủ sử dụng ảo hóa.
Phải có ít nhất một thiết bị lưu trữ SAN để kết nối hai hệ thống.
Yêu cầu phải có tương thích về hoạt động của các hệ thống máy chủ.
2.2.4.2. Ưu điểm của High Availability
Cung cấp độ an toàn cao cho các máy ảo, nhờ đó các máy ảo có thể hoạt động được ngay khi được di chuyển sang hệ thống máy chủ mới.
Không phân loại hệ điều hành, High Availability có thể di chuyển bất cứ hệ điều hành nào được cài trên máy ảo.
Có thể kết hợp với các công nghệ khác như bộ phân phối tài nguyên (Distributed Resource Scheduler) và Vmonitor để các máy ảo di chuyển sang hệ thống khác mà không gây mất kết nối đối với người dùng.
2.2.4.3. Hạn chế của High Availability
Bên cạnh những ưu điểm đó thì High Availability còn có những nhược điểm chưa khắc phục được như là:
Các CPU trên mỗi máy chủ phải tương thích với nhau.
Các máy ảo nằm trên hệ thống máy chủ gặp trục trặc cần phải khởi động lại.
Không đảm bảo an toàn cho các ứng dụng khi máy tự động khởi động lại sau khi chuyển qua máy chủ mới.
2.3. Công nghệ ảo hóa ứng dụng đảm bảo sử dụng an toàn thông tin và tiện lợi trong mạng LAN trong mạng LAN
2.3.1. Ảo hóa ứng dụng
Ảo hóa ứng dụng là giải pháp tiến đến công nghệ “điện toán đám mây” cho phép chúng ta sử dụng phần mềm của công ty mà không cần phải cài đặt phần mềm này vào bất cứ máy tính con nào.
Hình 2.20: Công nghệ ảo hóa ứng dụng
Ảo hóa ứng dụng là một dạng công nghệ ảo hóa cho phép chúng ta tách rời mối liên kết giữa ứng dụng và hệ điều hành và cho phép phân phối lại ứng dụng phù hợp với nhu cầu user. Một ứng dụng được ảo hóa sẽ không được cài đặt lên máy tính một cách thông thường [7], mặc dù ở góc độ người sử dụng, ứng dụng vẫn hoạt động một cách bình thường. Việc quản lý cập nhật phần mềm trở nên dễ dàng hơn, giải quyết sự đụng độ giữa các ứng dụng và việc thử nghiệm sự tương thích của chúng cũng trở nên dễ dàng hơn. Hiện nay đã có khá nhiều chương trình ảo hóa ứng dụng như Citrix
Xenapp, Microsof Application Virtualization, Vmware ThinApp.. với hai loại công nghệ chủ yếu sau:
Application Streaming: ứng dụng được chia thành nhiều đoạn mã và được truyền sang máy người sử dụng khi cần đến đoạn mã đó. Các đoạn mã này thường được đóng gói và truyền đi dưới giao thức HTTP, CIFS hoặc RTST
Desktop Virtualization/ Virtual Desktop Infrastructure (VDI): ứng dụng sẽ được cài đặt và chạy trên một máy ảo. Một hạ tầng quản lý sẽ tự động tạo ra các desktop ảo và cung cấp các desktop ảo này đến các đối tượng sử dụng.
2.3.2. Lợi ích ảo hóa ứng dụng
Giải pháp ảo hóa ứng dụng có những lợi ích nổi trội sau:
Các ứng dụng được cài đặt cấu hình và chạy trực tiếp từ server, tốc độ ổn định và không phải lo lắng phụ thuộc vào cấu hình của máy tính con.
Có thể chạy ứng dụng ảo tại bất cứ nơi đâu (các máy tính khác nhau, thông qua internet, sử dụng máy Linux…) mà không phải lo về cài đặt, tương thích cấu hình hay tốc độ xử lý.
Thông tin luôn được lưu trữ an toàn và không bao giờ rời server trung tâm. Các phần mềm ảo sẽ được phân phối tự động đến user nào được phép sử dụng mà không thực sự cài đặt bất cứ ứng dụng gì lên máy con. Bảo đảm an toàn thông tin.
Ảo hóa ứng dụng là giải pháp cho phép sử dụng và quản lý phần mềm doanh nghiệp một cách hiệu quả hệ thống. Tiết kiệm tối đa chi phí bảo trì. License, hỗ trợ kỹ thuật và quản lý từng máy tính. Xu hướng của điện toán trên thế giới là tiến về điện toán đám mây vì tính hiệu quả, tính linh động đồng thời cũng rất kinh tế và bảo vệ môi trường.
2.3.3. Ảo hóa ứng dụng trong mô hình Thin Client Architecture
Môi trường làm việc (như các ứng dụng, hệ điều hành) được cài đặt về mặt vật lý tại các máy chủ lớn. Áp dụng các công nghệ ảo hóa, người sử dụng đầu cuối có thể dùng các ứng dụng trên máy trạm/laptop cá nhân giống như khi các ứng dụng được cài đặt ngay tại máy của họ. Nói cách khác, ảo hóa đã làm cho người sử dụng “nhìn thấy” rằng các ứng dụng đang được cài đặt và hoạt động trên máy cá nhân của họ, trong khi thực chất chúng được cài đặt trên các máy chủ tại trung tâm dữ liệu hay phòng máy chủ.
Khi ứng dụng và các dữ liệu liên quan được cài đặt, lưu trữ và xử lý tập trung tại các máy chủ đặt tại phòng máy chủ hoặc trung tâm dữ liệu, các thiết bị đầu cuối được giải phóng khỏi nhiệm vụ lưu trữ dữ liệu và xử lý dữ liệu của ứng dụng. Điều này trước hết đảm bảo các dữ liệu mang tính bảo mật cao không thể bị truy cập tại các máy trạm đầu cuối. Nói một cách khác, vấn đề bảo mật thông tin được nâng lên một
mức cao hơn. Ngoài ra, việc xử lý dữ liệu được đưa về các máy chủ cũng có nghĩa là các tài nguyên mạnh của máy chủ được tận dụng, thay vì phải dùng những tài nguyên hạn chế của các máy trạm. Những ưu điểm này có được mà không ảnh hưởng đến môi trường làm việc của người sử dụng đầu cuối. Đối với họ, các ứng dụng hoạt động không khác gì chúng được cài đặt tại các máy trạm cá nhân, mặc dù trên thực tế, các ứng dụng chạy trên các máy chủ đặt cách xa. Tất cả các thao tác của người dùng đầu cuối để điều khiển ứng dụng (nhấn chuột, đánh bàn phím…) được truyền về máy chủ qua giao thức đặc biệt và được thực thi tại máy chủ (Hình 2.21). Nói cách khác, một môi trường trong đó các ứng dụng được ảo hóa được thiết lập tại các máy trạm.
Hình 2.21: Ảo hóa ứng dụng trong mô hình Thin Client Architecture
Đây chính là cơ sở tạo nên một xu hướng mới cho các tổ chức, doanh nghiệp. Đó là thiết lập hệ thống IT trong đó người sử dụng đầu cuối chỉ cần được trang bị những máy trạm với cấu hình phần cứng rất cơ bản gọn nhẹ. Tất cả các ứng dụng và dữ liệu liên quan được cài đặt, lưu trữ, xử lý tại các máy chủ đặt tập trung với mức bảo mật cao tại phòng máy chủ hoặc trung tâm dữ liệu. Mô hình này thường được nhắc đến với tên gọi Thin Client Architecture, là kiến trúc có thể được thiết lập với các máy trạm gọn nhẹ (Thin Client Desktops) và các phần mềm ảo hóa ứng dụng từ các hãng phần mềm (như XenApp của Citrix, Softgrid của Microsoft).
Chƣơng 3: TÌM HIỂU CÔNG NGHỆ THIN CLIENT VÀ GIAO THỨC REMOTE DESKTOP PROTOCOL
3.1. Giới thiệu về thin clients
3.1.1. Khái niệm thin clients
Nhiều sản phẩm tính toán mạng ngày nay đều dựa trên công nghệ mà người ta gọi là “thin-client”. Ngoài ra, trên thực tế thì “thin-client” đã được sử dụng rộng rãi trong các sản phẩm phần cứng và phần mềm. Ví dụ về các sản phẩm phần cứng là một thiết bị đầu cuối kiểu windows-based như WBT, NetPCs, NC và các máy PC để bàn truyền thống với giá rẻ được định cấu hình kiểu thin clients. Các sản phẩm phần mềm bao gồm trình duyệt Web, phần mềm mô phỏng đầu cuối và các máy hay thiết bị hiển thị.
Trong các tài liệu khoa học, vấn đề “thin client” thường được đề cập tới như là các thiết bị thin client. Và chúng được đưa ra cùng một quan niệm không đúng khi cho rằng các ứng dụng thin client là trung tâm hoá về thiết bị (device-centric). Trong thực tế phần cứng dường như đóng vai trò thứ yếu trong thị truờng thin client. GartnerGroup dự đoán rằng gần 85% ứng dụng thin client desktops được triển khai trên các doanh nghiệp trong năm 2004, chúng sẽ được cấu hình theo kiểu thin clients, không quá 15% sẽ được cấu hình theo các thiết bị thin client.
Theo từ điển kỹ thuật trên mạng (FOLDOC-Free Online Dictionary of Computing), thì thin client được định nghĩa như sau:
“Thin clients là một chương trình client đơn giản hay thiết bị phần cứng được dựa trên hầu hết các chức năng của hệ thống mà bắt nguồn từ server”.
Một triển vọng tiếp cận định nghĩa thin clients được nhìn nhận trên các ứng dụng hay các quan điểm kiến trúc ứng dụng trước khi nghiên cứu một cách tỉ mỉ về các thành phần phần cứng hay phần mềm có cấu trúc kiểu thin client. Các kiến trúc client/server được mô tả bởi cách trình diễn, tầng ứng dụng và tầng dữ liệu của ứng dụng được thực hiện trên các lớp có sẵn. Kiến trúc client/server đa lớp bao gồm một lớp client, một hoặc nhiều lớp trung gian và một lớp phụ. Lớp client thì chịu trách nhiệm cho lôgic hiển thị của ứng dụng được cung cấp bởi người dùng với giao diện người dùng đỗ hoạ (GUI-graphical user interface) và quản lý các thiết bị đầu vào như bàn phím, chuột. Lôgic ứng dụng bao gồm một tập các chức năng xử lý dữ liệu. Thật là khó khăn để có thể định nghĩa chính xác về thin clients, chúng ta chỉ có thể định nghĩa theo khía cạnh công nghệ và trong ứng dụng:
“Thin clients là một chương trình client đơn giản và/hoặc thiết bị phần cứng mà tạo ra lôgic trình diễn chính và dựa trên hầu hết lôgic ứng dụng và dữ liệu trên server”.
3.1.2. Đặc điểm của thin client
Điểm thất bại duy nhất: Server, tham gia vào toàn bộ xử lý tải của các client, tạo thành một điểm thất bại duy nhất đối với các client. Điều này có cả mặt tích cực và
tiêu cực. Một mặt, các mô hình bảo mật mối đe dọa cho các phần mềm trở nên hoàn toàn giới hạn trong các server: client chỉ đơn giản là không chạy các phần mềm. Như vậy, chỉ có một số nhỏ các máy tính cần phải được bảo đảm chặt chẽ, chứ không phải là đảm bảo tất cả các máy tính client đơn lẻ. Mặt khác, bất cứ tấn công từ chối dịch vụ đối với các server sẽ làm hại nhiều client: như vậy, nếu một người sử dụng bị treo hệ thống, tất cả mọi người khác mất dữ liệu dễ bay hơi của họ; nếu một người sử dụng bị lây nhiễm virus vào máy tính của họ, sau đó toàn bộ server sẽ bị nhiễm virus.
Đối với các mạng nhỏ, điểm thất bại này thậm chí được mở rộng: các server có thể được tích hợp với các file server và print server cụ thể cho các client. Điều này giúp đơn giản hoá mạng lưới và bảo trì, nhưng có thể làm tăng nguy cơ đối với server đó.
Phần cứng client giá rẻ: Trong khi các server phải đủ mạnh mẽ để xử lý nhiều phiên client cùng một lúc, các client có thể được sản xuất từ phần cứng rẻ hơn nhiều so với một fat client. Điều này làm giảm điện năng tiêu thụ của các client, và làm cho hệ thống dễ dàng được mở rộng: nó là tương đối rẻ để thêm vào thiết bị đầu cuối client một vài chi tiết. Các thin client nói chung có tổng chi phí rất thấp của quyền sở hữu (TCO – total cost of ownership), nhưng một số trong đó được bù đắp bằng cách yêu cầu một cơ sở hạ tầng server mạnh mẽ với các sao lưu và vv. Điều này cũng được phản ánh về tiêu thụ điện năng: các thin client thường có năng lượng thấp rất và thậm chí có thể không cần quạt làm mát, nhưng các server lại có công suất cao và yêu cầu một phòng máy chủ có điều hòa nhiệt độ.
Mặt khác, trong khi tổng chi phí sở hữu thấp, hiệu suất cá nhân của các client cũng thấp. Thin clients, ví dụ, không phù hợp với bất kỳ hình thức thực sự của tính toán phân tán. Chi phí cài đặt phần mềm, làm video, hoặc bất kỳ công việc tính toán mạnh khác sẽ được chia sẻ bởi tất cả các client thông qua server.
Client đơn giản: Kể từ khi clients được sản xuất từ phần cứng chi phí thấp với vài bộ phận chuyển động, chúng có thể hoạt động trong môi trường khắc nghiệt hơn máy tính thông thường. Tuy nhiên, chúng chắc chắn cần một kết nối mạng đến server của chúng, mà phải được phân lập từ môi trường khắc nghiệt như vậy. Kể từ khi thin client có giá rẻ, chúng cung cấp một ít nguy cơ trộm cắp nói chung, và rất dễ thay thế khi chúng bị mất cắp hoặc bị hỏng. Vì chúng không có bất kỳ hình ảnh khởi động phức tạp, vấn đề kiểm soát hình ảnh khởi động được tập trung vào các server trung tâm.
Mặt khác, để đạt được sự đơn giản này, thin client nói chung là hệ thống tích hợp cao. Điều này có nghĩa rằng chúng có thể tụt hậu phía sau thick client về khả năng mở rộng và khả năng tiếp cận. Ví dụ, nếu server không có hỗ trợ cho dòng âm thanh độc lập, hoặc các giao thức truyền thông không chuyển dòng như vậy, người ta có thể không nhận được âm thanh từ server. Tương tự như vậy, nếu client thiếu cổng USB, hoặc nếu có một số thất bại liên lạc của các tín hiệu USB qua mạng, client có thể hoàn toàn không thể hỗ trợ một thiết bị ngoại vi USB.
Thin client bảo mật: An ninh là ưu tiên hàng đầu trong tất cả các khía cạnh của mạng máy tính ngày nay; máy tính thin client không là ngoại lệ. Một số quản trị viên đang thực hiện các thin client như một giải pháp an ninh; bởi vì client không yêu cầu ổ