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

ĐÁM MÂY ĐIỆN TOÁN CỦA UBUNTU.

Trong một post trước, tôi trình bày quan niệm đám mây điện toán dưới góc nhìn của người sử dụng. Toàn bộ Internet như một máy tính mainframe khổng lồ, cung cấp đủ thứ dịch vụ: tin tức, phim ảnh, kho dữ liệu, nơi cho thuê máy tính để chạy ứng dụng, phần mềm kế toán, v.v. và v.v Người dùng chỉ việc mở trình duyệt, gõ địa chỉ là có được dịch vụ mình cần.

Trong một post khác, có một câu này đáng chú ý: “ đám mây điện toán là yếu tố then chốt để làm phim nhanh hơn và hiệu quả hơn, cho phép DreamWorks có được năng lực máy tính phù hợp lúc ổn định cũng như lúc cao điểm , giảm yêu cầu nhân vi xử lý (core) từ 21.000 xuống 16.000

Trường hợp này khác với trên, không liên quan gì đến Internet và là một công cụ sản xuất của doanh nghiệp, có khả năng điều chỉnh công suất tính toán theo yêu cầu. Đó là cái mà Ubuntu đang nhắm vào bắt đầu từ phiên bản 9.04. Ta thử lướt qua xem nó là cái gì.

Hiện tại, hướng phát triển công nghệ đám mây điện toán của Ubuntu gồm ba thành phần:

  1. Hệ điều hành máy chủ Ubuntu trong đám mây điện toán Amazon EC2

  2. Đám mây điện toán Ubuntu dùng cho các tổ chức (Ubuntu Enterprise Cloud)

  3. Dịch vụ UbuntuOne.

Dịch vụ UbuntuOne là một dịch vụ phần mềm (Software as a Service – SaaS), hiện tại mới chỉ là dịch vụ lưu trữ và đồng bộ file tương tự như Dropbox, được tích hợp vào Ubuntu 9.10 sắp công bố. Sau này nó được mở rộng thế nào thì chưa rõ.

Hai mục 1-2 đi theo hướng IaaS (Infrastructure as a Service – dịch vụ hạ tầng).

Amazon EC2 là một dịch vụ cho thuê máy chủ ảo trên Internet hiện đang hoạt động. Khách hàng thông qua một giao diện web, tự tạo và khởi động các máy chủ ảo có cấu hình theo yêu cầu, cài đặt các phần mềm mình cần, chạy các ứng dụng rồi tắt máy và trả tiền thuê theo giờ. Để làm được như vậy, các hệ điều hành máy chủ trong đám mây phải hỗ trợ một loạt các tính năng từ cụm máy chủ (cluster) cho đến phần mềm ảo hóa. Hệ điều hành Ubuntu Server Edition được xây dựng theo hướng đó để chạy trên các máy chủ của Amazon EC2.

Ubuntu Enterprise Cloud là một bộ phần mềm gồm nhiều thành phần để tạo nên các đám mây điện toán riêng (private cloud). Nếu như hiện nay, hạ tầng của các tổ chức gồm các phòng máy chủ (server farm) liên kết với nhau bằng các loại mạng LAN, WAN,… thì Ubuntu Enterprise Cloud vẫn giữ nguyên hạ tầng đó nhưng biến chúng thành một đám mây điện toán để nâng cao tính năng, tận dụng được năng lực tính toán như trường hợp DreamWorks nói ở trên.

Như vậy, đám mây điện toán Ubuntu là một đám mây điện toán của riêng từng tổ chức, hoạt động sau tường lửa, khác với đám mây công cộng Amazon hoạt động trên Internet (public cloud). Nhưng khi cần, nó có thể mở rộng ra sử dụng cả các đám mây công cộng tạo thành một đám mây hỗn hợp (hybrid cloud). Sơ đồ như hình sau:


Trong hình trên, đám mây điện toán gồm các máy chủ (mô tả bằng các khối vuông) liên kết với nhau bằng các loại mạng thông thường (LAN, WAN, VPN và cả Internet). Người dùng thông qua một giao diện web của phần mềm điều khiển đám mây (Cloud Controller – CLC) để sử dụng các dịch vụ do đám mây cung cấp.

Kiến trúc đám mây điện toán của Ubuntu dựa trên kiến trúc phần mềm nguồn mở Eucalyptus gồm 5 thành phần chính sau:

  1. Bộ điều khiển đám mây (Cloud Controller): người dùng dùng phần mềm này để giao tiếp với đám mây và sử dụng các dịch vụ của nó.

  2. Bộ điều khiển lưu trữ (Wallrus Storage Controller): nơi lưu ảnh các máy ảo có thể khởi tạo và lưu dữ liệu. Có vai trò tương tự như máy chủ file.

  3. Bộ điều khiển các thiết bị lưu trữ ảo ( Elastic Block Storage Controller): để tạo các partition của ổ cứng ảo, sau đó format, mount vào một thư mục nào đó để sử dụng.

  4. Bộ điều khiển các cụm máy chủ (Cluster Controller): khi người sử dụng ra lệnh khởi tạo một máy chủ ảo, lệnh được Cloud Controller chuyển cho Cluster Controller. Căn cứ trên thông tin về trạng thái đang hoạt động của các máy chủ vật lý, Cluster Controller sẽ quyết định cho tạo máy chủ ảo trên máy nào và chuyển lệnh cho bộ quản lý máy chủ đó (Node Controller). Cluster Controller cũng quản lý các liên kết mạng với máy chủ ảo.

  5. Bộ điều khiển máy chủ vật lý (Node Controller): bộ điều khiển này chạy trên từng máy chủ vật lý trong đám mây. Nó quản lý các thông tin cần thiết của máy chủ vật lý đó (dung lượng ổ cứng, kiểu và số lượng các bộ vi xử lý, bộ nhớ, các máy chủ ảo đang chạy trên đó,…). Khi có lệnh từ Cluster Controller khởi tạo máy chủ ảo, Node Controller sẽ:

    • Xác thực người sử dụng.

    • Tải file ảnh máy chủ ảo từ Wallrus Storage Controller về

    • Tạo các card mạng ảo cần thiết.

    • Khởi tạo máy ảo yêu cầu.

Tóm lại, hiện nay đám mây điện toán đã lan vào đến các phòng máy chủ. Ưu nhược điểm của nó ta sẽ bàn sau.

Hãng phim DreamWorks dùng đám mây điện toán của Red Hat để giảm chi phí làm phim.

DreamWorks uses Red Hat cloud to cut filmmaking costs

spacer.gif By Pam Derringer, News Contributor
10 Sep 2009 | SearchEnterpriseLinux.com spacer.gif

zxc232 lược dịch

(Làm phim hoạt hình tốn công suất máy tính dễ sợ. Xem thêm về Hollywood dùng Linux tại đây)

Công ty phần mềm nguồn mở Red Hat đang thảo luận với hãng phim DreamWorks về việc dùng đám mây điện toán chạy trên Red Hat Linux để sản xuất bộ phim hoạt hình nổi, ba chiều đầu tiên trên thế giới trong năm nay.

Đám mây điện toán của Red Hat cùng với các phần mềm dựng phim mới nhất sẽ giúp dựng bộ phim hoạt hình “Cuộc chiến giữa các con quỷ và người ngoài hành tinh” có những cảnh hoàng tráng như cảnh sụp đổ của cầu treo Cổng Vàng tại San Francisco.

Các hiệu ứng đặc biệt sẽ làm cho dự án phim này tốn đến 40 triệu giờ công, chi phí gấp 8 lần bộ phim Shrek nổi tiếng và hoàn thành trong 2 năm.

Linh hoạt hơn.

Điện toán đám mây là yếu tố then chốt để làm phim nhanh hơn và hiệu quả hơn, cho phép DreamWorks có được năng lực máy tính phù hợp lúc ổn định cũng như lúc cao điểm, giảm yêu cầu nhân vi xử lý (core) từ 21.000 xuống 16.000. Điện toán đám mây cung cấp dịch vụ linh hoạt hơn các dàn máy chủ, cho phép chia nhỏ các đoạn phim gửi đồng thời cho 40 nhân xử lý, tự động hóa được một số công việc trước đây phải làm thủ công, giảm thời gian quay vòng từ 4 giờ xuống còn vài phút.

Ứng dụng ảo hóa trong đám mây điện toán cũng cho phép DreamWorks xử lý tách biệt các công việc, đo lường được mức độ sử dụng tài nguyên tính toán và kiểm tra được trạng thái từng việc, do đó giảm thời gian dựng phim.

Cơ sở máy tính của DreamWorks là một mạng lưới máy chủ xây dựng đã 10 năm gồm hơn 20.000 nhân vi xử lý phân bổ trong 4 trung tâm dữ liệu nối với nhau bằng hơn 20.000 km cáp đôi gigabit (trừ trung tâm đặt tại Bangalor, Ấn độ). Mặc dù vậy, DreamWorks luôn phải đối mặt với những “thách thức khó chịu” về thiếu băng thông và mật độ I/O cao khi chuyển dữ liệu vào ra mạng lưới điện toán của họ.

Red Hat đã giải quyết được các khó khăn đó bằng việc ảo hóa nhân hệ điều hành, quản lý ảo hóa, phối hợp các ứng dụng và tạo các lớp đám mây trừu tượng (kernel virtualization, virtualization management, the application orchestration and cloud abstraction layers).

Hệ điều hành Google Chrome, một bước tiến dần đến điện toán đám mây

Ngày 7/7/2009, Google công bố trên blog chính thức của hãng về kế hoạch xây dựng hệ điều hành nguồn mở Google Chrome OS trước mắt dành cho netbook vào cuối năm 2010. Tin này lập tức gây nên một trận động đất trên các phương tiện truyền thông vì đây là lần đầu tiên một người khổng lồ tin học công khai lấn sân của Microsoft trong lĩnh vực hệ điều hành. Mới có 3 hôm nhưng gúc cụm từ “Chrome OS” cho 21 triệu kết quả!

Ngoài khía cạnh kinh doanh nói trên, đây là một bước nữa tiến dần đến thời đại điện toán đám mây đã được trình bày trong một post trước. Dưới đây điểm qua vài nét, tất cả đều xoay quanh việc vào Internet không chỉ để “lướt web” mà để kết nối vào một rừng máy chủ, làm việc thật sự.

Theo công bố trong blog nói trên, Google Chrome OS là một hệ điều hành nguồn mở, nhẹ (lightweigh) sẽ có mặt trên các netbook vào nửa sau năm 2010 và sau này là trên các máy PC. Ba đặc điểm chính là nhanh, đơn giản và an toàn (Speed, simplicity and security).

Đơn giản bởi vì nền tảng chạy ứng dụng đã chuyển chỗ. Cho đến hiện nay, các ứng dụng chạy trên nền hệ điều hành của máy trạm. Vì vậy, hệ điều hành càng ngày càng phức tạp để có thể cung cấp được nhiều dịch vụ cho các ứng dụng. Trong tương lai, các ứng dụng chạy trên các máy chủ Internet và giao diện với người dùng qua trình duyệt (web-based), hệ điều hành trên máy trạm chỉ còn cần chủ yếu để chạy trình duyệt và các công nghệ bên dưới nó. Phần ứng dụng chạy trên máy trạm là chạy trên nền web. Những giao diện đẹp và nặng nề hiện nay cũng không còn cần thiết nữa vì giao diện của ứng dụng sẽ được cung cấp từ Internet. Giao diện của hệ điều hành bây giờ sẽ là trình duyệt web. Google Chrome OS không phải để cài các bộ Office nặng nề, những bộ Office đó đã có sẵn trên Internet (Google Docs, Zoho Office, Thinkfree Office, v.v…). Điều đó cũng sẽ đúng cho các ứng dụng khác: Chỉnh sửa ảnh, Quản lý dự án, Kế toán, v.v..

Cũng vì đơn giản nên tất nhiên là sẽ nhanh. Thời gian khởi động và tắt hệ điều hành chỉ còn vài giây như bật tắt Tivi.

Với một công dụng mới như vậy, đương nhiên hệ điều hành cần phải được thiết kế lại từ đầu. Google nói rằng khi thiết kế mới, họ sẽ chú ý đến kiến trúc an ninh nền tảng bên dưới. Ta có thể hy vọng rằng trước mắt, số lượng khổng lồ các malware chạy trên Windows sẽ không còn đất dụng võ. Còn về lâu dài, cái gì con người làm ra, con người cũng phá được. Nhưng có lẽ sẽ khó hơn và không tồi tệ như đại dịch virus hiện nay.

Google nói rằng họ lắng nghe và đáp ứng ý kiến người dùng. Người dùng muốn:

  • Bật máy tính lên là có email ngay, không phải chờ khởi động lâu: Điều này dĩ nhiên vì với hệ điều hành khởi động chỉ có vài giây, giao diện là trình duyệt lại đặt trang chủ là Gmail chẳng hạn thì không khó khăn gì.
  • Máy tính lúc nào cũng chạy nhanh như lúc mới mua: Điều này cũng hiển nhiên vì mọi thứ đều lưu trên máy chủ Internet, hầu như chẳng có dữ liệu gì lưu lại trên ổ cứng. Ổ sẽ không bị phân mảnh, không có hàng đống file rác, không có các registries ngày càng phình to, tìm kiếm mất thì giờ. Chỉ còn cache trình duyệt tự động xóa sau mỗi lần tắt máy và một số nội dung offline.
  • Dữ liệu có thể truy cập được từ bất cứ đâu, không phải lo lắng mất máy tính, hỏng ổ cứng hoặc quên backup: Dữ liệu lưu trên các máy chủ Internet đáp ứng yêu cầu đó.
  • Không mất thì giờ cấu hình máy và cập nhật phần mềm.

Thực ra ý tưởng hệ điều hành web không phải mới. Trong post này có giới thiệu một sản phẩm của Asus đi theo hướng đó dùng công nghệ Splashtop. Google gây được tiếng vang lớn vì cái tầm vóc khổng lồ của họ.

Nhưng Google Chrome OS không thể thành công riêng lẻ. Nó chỉ là một khâu trong điện toán đám mây. Thành công của nó còn phụ thuộc vào:

  • Hạ tầng Internet: các công nghệ truyền dẫn mới tốc độ cao, các điểm truy cập Internet nhanh, ổn định, giá rẻ hoặc miễn phí có ở khắp nơi.
  • Các công nghệ nền và công cụ để phát triển ứng dụng web nhanh, dễ. Số lượng các ứng dụng web lớn và có tính năng đủ đáp ứng người dùng thay thế được cho các ứng dụng chạy trên PC hiện tại.
  • Thói quen và niềm tin của người dùng khi “dựa” toàn bộ vào Internet. Ví dụ: soạn văn bản là nghĩ ngay tới Zoho Writer.

Với hiện trạng của ba yếu tố trên, Chrome OS chưa thể thành công trong một vài năm tới.

Điện toán đám mây (cloud computing)

Định viết một bài về ổ cứng ảo, nghĩ lan man sang cái này.

Có một quy luật triết học nói rằng mọi sự trên đời phát triển theo vòng xoáy trôn ốc. Sự việc phát triển đến một mức nào đó thì lặp lại những cái trước đó nhưng ở một trình độ cao hơn. Điều đó cũng đúng với máy tính.
Thời kỳ bình minh của điện toán, mọi thứ xoay quanh vài cái mainframe (bây giờ dịch là siêu máy tính). Tất cả mọi thứ: bộ xử lý, bộ nhớ, ổ cứng, phần mềm đều nằm trên đó. Xung quanh mỗi mainframe có hàng chục cái gọi là terminal chỉ gồm màn hình, bàn phím (chưa có cả chuột). Mỗi user dùng bàn phím màn hình đó truy cập vào mainframe, chạy các phần mềm trên đó cho công việc của mình, dùng chung bộ xử lý, bộ nhớ, phần mềm, … và mọi thứ khác từ một nơi cấp phát tập trung.
Bây giờ mọi thứ có vẻ sắp quay về thời kỳ đó. Internet đã tạo nên một cái mainframe khổng lồ gồm hàng ngàn máy chủ kết nối với nhau chứa đựng sức mạnh xử lý, bộ nhớ, ổ cứng và phần mềm. Các máy tính cá nhân rồi ra sẽ chỉ còn dùng để chạy trình duyệt, cài phần mềm tối thiểu và ổ cứng cũng tối thiểu. Nối máy vào Internet, mở trình duyệt ra là có thể soạn văn bản, bảng tính (bằng Google Docs và Zoho Writer chẳng hạn), soạn xong lưu ngay vào ổ cứng máy chủ, yên tâm rằng mọi việc quét virus, sao lưu, bảo trì cho phần mềm luôn luôn sẵn sàng có người khác lo. Mua bán cũng qua trình duyệt, thậm chí ngồi nhà làm việc qua trình duyệt luôn. Còn mỗi một cái phải quan tâm là Bookmarks (hoặc Favorites).
Hiện tại thì tốc độ Internet còn chập chờn và chưa đủ nhanh, điểm kết nối còn chưa đủ rộng, phần mềm trên Internet cũng chưa có tính năng bằng phần mềm cài trên máy để bàn. Nhưng cứ theo đà này, máy tính cá nhân rồi sẽ teo lại chỉ còn là bàn phím, màn hình, chuột với một cái case bé xíu lắp ngay sau lưng màn hình là đủ để chạy trình duyệt web. Giống cái terminal ngày xưa nhưng hiện đại hơn. Các nhà sản xuất phần mềm sẽ không còn bán các bộ phần mềm đóng gói cho từng cá nhân mà cài lên máy chủ Internet rồi bán dịch vụ sử dụng cho người dùng. Game online là một dạng dịch vụ như thế.

Một xu hướng rõ ràng là không cưỡng lại được, chỉ có điều nó đến nhanh hay chậm mà thôi.

Nhưng lúc đó, dân tin học làm gì? Máy tính chỉ còn như cái TV, ít hỏng và cũng chẳng cần cài đặt. Phần mềm “tây” đầy trên Internet, mua thẻ rồi dùng như học ngoại ngữ online bây giờ, học sử dụng cũng qua web. Cái thị trường rộng lớn mà vố số “kỹ sư tin học” với trình độ cao nhất là biết cài Windows, MS Office hiện đang lĩnh lương sống được sẽ không còn nữa.

Nghĩ cho cùng nó cũng giống như chuyện sát nhập tỉnh, thừa ra khối thứ từ lãnh đạo đến ôtô. Đáng lo không?

Nhưng có nhanh chắc cũng phải 10-20 năm nữa. Khi nào thấy Internet wifi cao tốc miễn phí khắp hang cùng ngõ hẻm lo cũng vừa.