Quản lý các dịch vụ ứng dụng bằng các mẫu ứng dụng ảo

Các mẫu ứng dụng ảo nắm giữ tri thức chuyên gia nhiều năm về quản lý các dịch vụ ứng dụng đám mây

Trong môi trường Hệ thống PureApplication của IBM (IBM® PureApplication™ System) một mẫu ứng dụng ảo là yếu tố quan trọng cho phép người dùng nhanh chóng thiết lập và quản lý cơ sở hạ tầng ứng dụng đám mây; một mẫu ứng dụng ảo mô tả một ứng dụng và sử dụng các công cụ để xây dựng cơ sở hạ tầng thích hợp cho ứng dụng đó, rồi triển khai ứng dụng vào cơ sở hạ tầng đó. Các mẫu ứng dụng ảo của Hệ thống PureApplication của IBM là điều cốt lõi thu được trong nhiều năm kinh nghiệm và các cách thực hành tốt nhất về triển khai-cơ sở hạ tầng-ứng dụng. Các mẫu ứng dụng ảo gói gọn các giải pháp tối ưu hóa của nhiều thành phần phần mềm trung gian để lưu trữ các kiểu đặc trưng của các tải làm việc của ứng dụng trên máy chủ. Trong bài này, các tác giả giới thiệu cho bạn các mẫu ứng dụng ảo và vị trí của chúng trong hệ sinh thái, mô tả các thành phần và các chức năng của chúng và xem xét cơ bản về cách tạo và sử dụng một mẫu ứng dụng ảo.

Joseph Bohn, Kiến trúc sư phần mềm cao cấp, IBM

Joseph Bohn là một kiến trúc sư phần mềm cao cấp tại IBM. Ông hiện đang là một nhà truyền bá kỹ thuật. Trước khi trở thành một nhà truyền bá kỹ thuật, ông đại diện cho IBM về các đặc tả và các dự án nguồn mở tại OSGi Alliance gồm cả Apache Aries và Apache Geronimo. Trước khi làm các công việc nói trên, ông đã làm về một số lĩnh vực sản phẩm trong phạm vi IBM với tư cách là kiến trúc sư, nhà thiết kế, lãnh đạo nhóm và nhà phát triển về một loạt các sản phẩm của IBM gồm Integrated Solutions Console (Giao diện điều khiển Các giải pháp tích hợp), Tivoli Presentation Services (Các dịch vụ trình bày Tivoli) và nhiều giải pháp Tivoli.



Bobby McChesney, Kỹ sư tư vấn phần mềm, IBM

Bobby McChesney là một kỹ sư tư vấn phần mềm ở Tập đoàn Phần mềm IBM với 23 năm kinh nghiệm tại IBM. Trọng tâm hiện nay của ông là ứng dụng và phần mềm trung gian tích hợp và IBM Workload Deployer (Bộ triển khai tải làm việc của IBM).



James Kochuba, Kiến trúc sư thử nghiệm bảo mật, IBM

James Kochuba là kiến trúc sư về các dịch vụ chia sẻ đám mây WebSphere và là người lãnh đạo dịch vụ tiện ích chuyên về Workload Deployer và PureScale Application System (Hệ thống ứng dụng PureScale). Vai trò trước đây của ông tại IBM là kiến trúc sư thử nghiệm bảo mật của WebSphere Application Server (Máy chủ ứng dụng WebSphere), nhóm hỗ trợ chất lượng cao AIM và nhóm hỗ trợ WebSphere Application Server. Ông là người lãnh đạo kỹ thuật cho các dịch vụ chia sẻ (như các dịch vụ ghi nhật ký, giám sát và lưu trữ trong bộ nhớ đệm) và các dịch vụ (xử lý sự cố) cho các sản phẩm Nền tảng là một Dịch vụ của IBM. Khi sử dụng nền tảng kỹ thuật và khách hàng trước đây của mình, Jim giúp tạo ra các dịch vụ chất lượng cao hơn để phù hợp với các nhu cầu sử dụng của khách hàng.



28 08 2012

Việc giới thiệu ra thị trường họ sản phẩm IBM® PureSystems™ đưa điện toán đám mây lên những tầm cao mới. IBM PureSystems — dưới dạng của Hệ thống IBM PureApplication và Hệ thống IBM PureFlex™— là một hệ thống đám mây chuyên gia, tích hợp có chứa các ứng dụng, các dịch vụ, phần cứng và thậm chí cả tri thức chuyên gia — được chuyển giao dưới dạng các mẫu thực hành tốt nhất — để tích hợp, triển khai và bảo trì một môi trường đám mây mức doanh nghiệp.

Kiến trúc của Hệ thống IBM PureApplication hỗ trợ ba mô hình các mảng phần mềm trung gian, ba kiểu tải làm việc khác nhau được sử dụng để phân phối các giải pháp đám mây là những trụ đỡ quan trọng của hệ thống:

  • Sử dụng các mẫu ứng dụng ảo thông qua các dịch vụ nền tảng tải làm việc. Một ứng dụng ảo là một bộ sưu tập của các thành phần ứng dụng, các chính sách hành vi và các liên kết của chúng. Sử dụng định nghĩa tải làm việc lấy ứng dụng là trung tâm này, Hệ thống IBM PureApplication sẽ tự động xây dựng cơ sở hạ tầng và tài nguyên phần mềm trung gian cần thiết để cung cấp và tiếp tục quản lý ứng dụng ảo này.
  • Sử dụng các mẫu hệ thống ảo thông qua các dịch vụ phần mềm trung gian ảo hóa. Các mẫu hệ thống ảo là một biểu diễn logic của một cấu trúc liên kết lặp lại cho một tập các yêu cầu triển khai cụ thể. Ví dụ: Một mẫu WebSphere® Application Server Cluster (Cụm Máy chủ ứng dụng WebSphere) có chứa IBM Deployment Manager (Trình quản lý triển khai của IBM), một hoặc nhiều nút tùy chỉnh, IBM Http Server và các kịch bản lệnh cấu hình để cài đặt các ứng dụng vào cấu trúc liên kết đó. Khi sử dụng cách tiếp cận này, cấu hình phần mềm trung gian chi tiết được xác định rõ và Hệ thống IBM PureApplication sẽ cung cấp một hệ thống chính xác như được định nghĩa trong mẫu hệ thống ảo này.
  • Sử dụng các thiết bị ảo, thông qua các dịch vụ cơ sở hạ tầng ảo hóa. Một thiết bị ảo là một cá thể "tải làm việc của một máy chủ đơn lẻ" của một tệp ảnh máy ảo, gồm có một môi trường hệ điều hành được cấu hình sẵn kèm theo phần mềm trung gian và các thành phần ứng dụng cần thiết được cài đặt sẵn trong một ảnh và ứng dụng OVF (Định dạng ảo hóa mở).

Cộng đồng developerWorks sẽ cung cấp tài nguyên giải thích các thành phần này. Bài này mô tả một trong những thành phần chủ chốt như vậy, đó là mẫu ứng dụng ảo và nó ảnh hưởng đến các chuyên gia Công nghệ thông tin như thế nào.

Bức tranh toàn cảnh

Về cơ bản, Hệ thống IBM PureApplication đã tích hợp phần cứng và phần mềm, kết hợp tải làm việc ảo hóa với cơ sở hạ tầng có thể mở rộng. Kèm theo đó là phần mềm trung gian hỗ trợ cho dữ liệu và thời gian chạy cùng với các khả năng triển khai và quản lý để sắp xếp trơn tru và tăng tốc các hoạt động này, làm cho chúng hiệu quả hơn.

Các mẫu ứng dụng ảo được xây dựng với thiết kế ứng dụng là trung tâm. Chúng cung cấp một cơ chế để biểu diễn ứng dụng phần mềm trung gian theo một mô hình đã đơn giản hóa để trừu tượng hóa cơ sở hạ tầng phần mềm trung gian bên dưới. Các mẫu này được thực hiện bằng cách sử dụng các kiểu mẫu ứng dụng ảo có tích hợp các khả năng của nhiều thành phần phần mềm trung gian thành một giải pháp được xây dựng có mục đích, gắn kết nhau, cho phép bạn biểu diễn toàn bộ môi trường khá phức tạp của mình như một đơn vị triển khai đơn lẻ.

Các mẫu ứng dụng ảo biểu diễn một mô hình triển khai đám mây mới và là một sự tiến hóa của các mẫu cấu trúc liên kết truyền thống được hỗ trợ trong các mẫu hệ thống ảo. Về cơ bản, các mẫu ứng dụng ảo đưa mức độ trừu tượng lên một mức cao hơn so với các mẫu (cấu trúc liên kết) hệ thống ảo và tập trung vào ứng dụng. Điều đó có nghĩa là, khi bạn sử dụng một mẫu ứng dụng ảo, thì trọng tâm là vào ứng dụng thay vì vào cơ sở hạ tầng ứng dụng.

Các mẫu ứng dụng ảo gói gọn cả phần cài đặt, cấu hình và tích hợp phần mềm trung gian, cũng như phần cài đặt và cấu hình của ứng dụng chạy trên phần mềm trung gian đó. Hầu hết những phần này là hoàn toàn bị giấu kín với bạn, là người dùng. Điều này có nghĩa là bạn có rất ít quyền điều khiển về cấu hình và tích hợp, nhưng bạn cũng đã được giảm đáng kể công lao động và được tăng thêm tự do và nhanh chóng. Bạn có thể tập trung vào sự phát triển ứng dụng và các thành phần của nó và để cho Hệ thống IBM PureApplication tạo ra và quản lý cơ sở hạ tầng phục vụ ứng dụng đó.

Việc làm giảm thời gian triển khai, tăng tính nhất quán và tăng cường tính nhanh nhẹn là những lợi ích mà bạn có thể hy vọng khi khám phá các cách tiếp cận dựa trên đám mây cho các môi trường ứng dụng phần mềm trung gian của bạn. Giải pháp của Hệ thống IBM PureApplication xử lý những vấn đề này, làm cho việc triển khai các môi trường phần mềm trung gian đám mây trở nên nhanh chóng, có thể lặp lại và hiệu quả.

Cách tiếp cận dựa trên mẫu là nền tảng của Hệ thống IBM PureApplication; nó nhất quán cho cả các mẫu ứng dụng ảo lẫn các mẫu hệ thống ảo. Khi sử dụng thiết bị đám mây, bạn xây dựng và triển khai các mẫu để biểu diễn các môi trường ứng dụng được cấu hình đầy đủ của mình. Khi bạn đã sẵn sàng sử dụng một môi trường ứng dụng cụ thể, bạn chỉ cần chọn một mẫu và triển khai nó. Hệ thống IBM PureApplication sẽ tự động hóa việc triển khai, cấu hình và tích hợp các máy ảo khác nhau tạo nên môi trường của bạn và phân phối các sản phẩm đã hoàn thành trong chừng vài phút.


Các phần tử và các chức năng của một mẫu ứng dụng ảo

Hệ thống IBM PureApplication có một tập dựng sẵn của các ảnh ảo, các mẫu hệ thống ảo và các kiểu mẫu ứng dụng ảo có thể được triển khai ngay lập tức. Tuy nhiên, việc tạo ra các mẫu tùy chỉnh riêng của bạn từ những ảnh và các kiểu mẫu như vậy sẽ làm tăng thêm giá trị mà bạn nhận được từ cách tiếp cận này. Về vấn đề đó, Hệ thống IBM PureApplication cung cấp các kỹ thuật tùy chỉnh toàn diện cho cả hai mô hình mẫu mà nó hỗ trợ.

Các khả năng ứng dụng ảo trong Hệ thống IBM PureApplication dựa trên khái niệm về các giải pháp mẫu lấy ứng dụng là trung tâm được tiêu chuẩn hóa. Việc sử dụng các mẫu tiêu chuẩn cho phép các nhà phát triển các ứng dụng trong môi trường đám mây tập trung vào ứng dụng và các yêu cầu của nó thay vì vào cơ sở hạ tầng phần mềm trung gian và việc cấu hình khá phức tạp của các sản phẩm phần mềm trung gian cần thiết để triển khai chúng.

Các mẫu ứng dụng ảo định nghĩa tài nguyên cần thiết để hỗ trợ các ứng dụng ảo, gồm các ứng dụng web, các cơ sở dữ liệu, các đăng ký người dùng và nhiều hơn nữa. Các mẫu này là các đơn vị triển khai cho một ứng dụng ảo.

Ví dụ, kiểu mẫu ứng dụng web cung cấp các thành phần ứng dụng phổ biến như các ứng dụng web, các ứng dụng doanh nghiệp, các cơ sở dữ liệu và các đăng ký người dùng. Cùng với các thành phần phổ biến ấy, bạn có thể định nghĩa mối quan hệ giữa các thành phần và các chính sách để xác định cả các yêu cầu chức năng lẫn không chức năng cho ứng dụng. Các thành phần ứng dụng, các chính sách và các liên kết này sau đó được Hệ thống IBM PureApplication diễn giải cùng với chức năng do kiểu mẫu ứng dụng web cung cấp để xây dựng và quản lý một giải pháp cho ứng dụng này.

Hình 1. Bức tranh lớn: Mẫu ứng dụng ảo cho cá thể ứng dụng ảo
Bức tranh lớn: Mẫu ứng dụng ảo cho cá thể ứng dụng ảo

Các kiểu mẫu và các trình cắm thêm

Cấu trúc bên dưới cho các mẫu ứng dụng ảo là các kiểu mẫu. Các kiểu mẫu là các thùng chứa tài nguyên đặc trưng cho giải pháp và đặc trưng cho cấu trúc liên kết cần thiết cho các kiểu khác nhau của các ứng dụng ảo. Các kiểu mẫu cũng cung cấp các dịch vụ chia sẻ chung có kết hợp các dịch vụ thời gian chạy, chẳng hạn như dịch vụ lưu trữ trong bộ nhớ đệm và cân bằng tải co dãn. Các kiểu mẫu thực sự là sự ghép chung các khả năng khác nhau cho một kiểu ứng dụng cụ thể. Khả năng thông minh đặc trưng cho giải pháp thực tế được phân phối thông qua các trình cắm thêm. Một trình cắm thêm có thể tham gia vào nhiều kiểu mẫu; tuy nhiên một trình cắm thêm sẽ luôn có một kiểu mẫu chính.

Các trình cắm thêm cung cấp tất cả các chức năng cần thiết để tạo và quản lý các thực thể thực mà chúng sẽ được thực hiện cho các thành phần, các liên kết, các chính sách, các dịch vụ và các tính năng khác. Trước tiên trình cắm thêm cung cấp các phần tử trực quan mà bạn thấy trong trình xây dựng ứng dụng ảo khi xây dựng mẫu ứng dụng ảo của bạn. Trình cắm thêm cũng chịu trách nhiệm đưa ra các chức năng cần thiết để xây dựng mô hình của hệ thống mà cuối cùng sẽ được triển khai vào đám mây. Trình cắm thêm đưa ra các kịch bản lệnh cần thiết để cung cấp và cấu hình các phần tử ứng dụng đặc biệt. Nó cũng bao gồm logic để liên hiệp các phần tử cần thiết, trang trí mặt ngoài và phản ứng với những thay đổi trong cấu hình và đưa ra xử lý động để hỗ trợ các chính sách.

Hệ thống IBM PureApplication cung cấp nhiều tiện ích để làm cho việc này dễ dàng và hòa phối mối tương tác với các trình cắm thêm để phân phối chức năng cần thiết trong khi hỗ trợ ứng dụng. Tất cả việc này đều được tối ưu hóa và tự động hóa bên trong mẫu để người dùng điển hình của mẫu đó không cần hiểu tất cả những điều rắc rối của phần mềm trung gian, mà thay vào đó có thể tập trung vào hành vi mong muốn của ứng dụng.

Ảnh ảo mặc định

Một ảnh ảo mặc định được sử dụng cho tất cả các thành phần mẫu ứng dụng ảo. Ảnh ảo mặc định được kèm theo trong danh mục ảnh ảo của Hệ thống IBM PureApplication cùng với các ảnh ảo khác được sử dụng với các mẫu hệ thống ảo. Tuy nhiên, ảnh ảo mặc định đặc biệt ở chỗ nó không bao gồm bất kỳ phần mềm trung gian cài đặt sẵn nào và là một ảnh ảo phổ biến, được sử dụng cho tất cả các việc triển khai ứng dụng ảo.

Bạn chỉ rõ ảnh ảo mặc định cho mỗi kiểu siêu giám sát trong Các thiết lập triển khai mặc định (Default Deploy Settings). Ảnh ảo mặc định có thể được tùy chỉnh để đáp ứng các yêu cầu cụ thể trong doanh nghiệp của bạn. Nó cung cấp môi trường chức năng để cho phép các mẫu ứng dụng ảo triển khai, chạy và do thiết bị quản lý. Môi trường này có chứa mã kích hoạt để thiết lập truyền thông với thiết bị trong các giai đoạn khác nhau của quá trình khởi động triển khai và quản lý các ứng dụng ảo. Ảnh này cũng chứa mã mà thiết bị cần đến để hỗ trợ tất cả các mẫu cho các dịch vụ chia sẻ, chẳng hạn như cân bằng tải và lưu trữ trong bộ nhớ đệm.

Một ví dụ, kiểu mẫu ứng dụng Web

Một trong các kiểu mẫu ứng dụng ảo ban đầu được cung cấp trong Hệ thống IBM PureApplication là một kiểu mẫu ứng dụng web được tạo ra cho các ứng dụng web xử lý giao dịch trực tuyến điển hình. Với mục đích trình diễn, phần còn lại của bài này sẽ sử dụng ví dụ này để thảo luận các khái niệm liên quan đến các ứng dụng ảo và các kiểu mẫu hỗ trợ các ứng dụng ảo này.

Kiểu mẫu ứng dụng Web này là một phần mở rộng của Hệ thống IBM PureApplication mà bạn có thể dùng để xây dựng các ứng dụng ảo mang phong cách-ứng dụng web-trực tuyến. Nó cung cấp một tập các thành phần điển hình cho các ứng dụng web, chẳng hạn như Java™ Enterprise Edition ((Java EE - Ấn bản Doanh nghiệp của Java), việc cung cấp của DB2®, kết nối JDBC của cơ sở dữ liệu, các đăng ký người dùng LDAP (LDAP Lightweight Directory Access Protocol - Giao thức truy cập thư mục gọn nhẹ) và tạo thông báo Java.

Kiểu mẫu ứng dụng Web này gồm có các trình cắm thêm cho WebSphere Application Server (Máy chủ ứng dụng WebSphere) để chạy các tệp lưu trữ web (WAR), các tệp lưu trữ doanh nghiệp (EAR) và các ứng dụng và các trình cắm thêm lưu trữ bó doanh nghiệp (OSGi EBA) dùng để cấu hình các kết nối từ các ứng dụng đã lưu trú trên WebSphere Application Server đến tài nguyên hiện có như các cơ sở dữ liệu, các dịch vụ web, các máy chủ MQ, CICS®, IMS™ hay LDAP. Mẫu này cũng kèm theo các chính sách để cấu hình động việc cung cấp máy chủ mở rộng, cân bằng tải và lưu trữ trong bộ nhớ đệm.

Kiểu mẫu ứng dụng Web này gồm có một số mẫu ứng dụng ví dụ đã sẵn sàng triển khai sao cho bạn có thể làm quen với các mẫu ứng dụng ảo và hành vi của chúng. Bạn có thể tìm thấy các ví dụ này trong khung nhìn mẫu ứng dụng ảo. Đây chính là nơi mà bạn có thể bắt đầu tạo ra các mẫu ứng dụng ảo tùy chỉnh của mình từ đầu hoặc bằng cách nhân bản các ví dụ được cung cấp. Hình 2 cho thấy khung nhìn mẫu ứng dụng ảo.

Hình 2. Khung nhìn mẫu ứng dụng ảo
Khung nhìn mẫu ứng dụng ảo

Trong khung nhìn này, bạn có thể thấy ba ứng dụng ảo ví dụ được phân phối bằng kiểu mẫu ứng dụng Web. Ví dụ được lựa chọn là ứng dụng web Secured Java EE (Java EE bảo mật) và bạn có thể xem các chi tiết của ví dụ đó trong khung bên phải. Mẫu Daytrader ở trên đầu danh sách không phải là một ví dụ mà là một mẫu tùy chỉnh được tạo ra bằng cách nhân bản ứng dụng web Simple Java EE (Java EE đơn giản) và thực hiện một số thay đổi nhỏ trong trình soạn thảo ứng dụng ảo.

Bạn có thể xem thông tin về mẫu ứng dụng ảo trong ô cửa sổ các chi tiết khi đã chọn nó. Để chỉnh sửa mẫu, bạn có thể chọn biểu tượng Open để vào trình xây dựng ứng dụng ảo và chỉnh sửa các thành phần, các liên kết, các chính sách và các thuộc tính của mẫu đó.

Trình xây dựng ứng dụng ảo

Có ba phần tử chính đóng góp các khả năng cho một kiểu mẫu ứng dụng ảo — đó là các thành phần, các liên kết và các chính sách. Hình 3 cho thấy một ảnh chụp màn hình về các thành phần, các liên kết và các chính sách trong một mẫu ví dụ.

Hình 3. Các thành phần, các liên kết và các chính sách trong một mẫu ví dụ
Các thành phần, các liên kết và các chính sách trong một mẫu ví dụ

Thành phần
Một thành phần biểu diễn một khả năng của phần mềm trung gian mà một cá thể ứng dụng ảo cần. Thông thường, một ứng dụng của phần mềm trung gian chứa các tạo phẩm như là các thành phần dựa trên web, các định nghĩa lược đồ cơ sở dữ liệu và các đặc tả đăng ký người dùng. Khi bạn kèm theo các thành phần này trong mẫu ứng dụng ảo của mình, nó sẽ thông báo cho hệ thống là các cá thể của các khả năng này phải được tạo ra khi triển khai mẫu ứng dụng ảo.

Ví dụ, một số thành phần phổ biến hơn mà bạn sẽ tìm thấy trong kiểu mẫu ứng dụng Web:

  • Ứng dụng doanh nghiệp, ví dụ như WebSphere Application Server.
  • Ứng dụng Web, ví dụ như WebSphere Application Server.
  • Tệp lưu trữ bổ sung.
  • Điểm cuối của nhà cung cấp dịch vụ Web hiện có.
  • Tập chính sách.
  • Một ứng dụng OSGi, ví dụ như WebSphere Application Server.
  • Kho lưu trữ gói OSGi ngoài.
  • Cơ sở dữ liệu, như là DB2.
  • Thành phần cơ sở dữ liệu hiện có.
  • Thành phần cơ sở dữ liệu từ xa.
  • Cơ sở dữ liệu IMS hiện có.
  • Đăng ký người dùng, ví dụ như một máy chủ thư mục.
  • Các dịch vụ thông báo.
  • Một cổng kết nối giao dịch CICS.
  • IMS TMRA hiện có.
  • Một đích chung.

Các liên kết
Các liên kết nối các thành phần. Các liên kết biểu diễn một số phụ thuộc hoặc tương tác giữa các thành phần. Ví dụ, các thành phần nào đó trong kiểu mẫu Web Application (Ứng dụng Web) hỗ trợ các liên kết đến các thành phần khác trong các kiểu mẫu khác, chẳng hạn như đến một thành phần Cơ sở dữ liệu trong kiểu Các mẫu cơ sở dữ liệu của IBM (IBM Database Patterns).

Một liên kết dùng cho nhiều mục đích:

  • Nó đảm bảo rằng cả hai các thành phần gốc và các thành phần đích đến của liên kết được cấu hình đúng để hỗ trợ kết nối đó.
  • Liên kết cũng đảm bảo rằng mạng và các tường lửa được cấu hình phù hợp để cho phép truyền thông.
  • Cuối cùng, liên kết bảo đảm các phụ thuộc được thực hiện đúng và được hỗ trợ sao cho các thành phần có thể phản ứng thích hợp với các thay đổi hay các lỗi của các phụ thuộc.

Các chính sách
Một chính sách biểu diễn cách cấu hình một dịch vụ của phần mềm trung gian trong quá trình triển khai. Ví dụ, bạn có thể đính kèm một chính sách Chất lượng của dịch vụ (QoS) tùy chọn cho ứng dụng ảo. Hai ứng dụng ảo có thể có các thành phần giống nhau, nhưng yêu cầu các chính sách khác nhau để đạt được các thỏa thuận mức dịch vụ khác nhau.

Khi các chính sách được thêm vào ứng dụng, bạn có thể mở rộng khả năng của ứng dụng. Ví dụ, nếu bạn muốn một ứng dụng web có khả năng sẵn sàng cao, bạn có thể thêm một chính sách mở rộng trong trình xây dựng ứng dụng ảo và Hệ thống IBM PureApplication tạo ứng dụng và cấu trúc liên kết để đạt được yêu cầu đó.

Các chính sách phổ biến mà bạn sẽ thấy với kiểu mẫu ứng dụng Web là:

  • Chính sách mở rộng quy mô.
  • Chính sách định tuyến.
  • Chính sách máy ảo Java (JVM).
  • Chính sách ghi nhật ký.

Các chính sách có thể ảnh hưởng đến số lượng các máy ảo được khởi động. Ví dụ, nếu bạn đính kèm một chính sách mở rộng, thì nhiều cá thể máy chủ ứng dụng được kết nối với nhau cùng với một bộ cân bằng tải và tùy chọn là, một máy chủ IBM WebSphere eXtreme Scale cho các phiên chia sẻ. Sau đó các tạo phẩm của ứng dụng được triển khai bằng cách khởi động các thành phần và cấu hình chúng một cách thích hợp.


Phát triển một mẫu ứng dụng ảo

Giả sử tổ chức của bạn có khá nhiều ứng dụng trong sản xuất và sớm xuất hiện. Quy trình điển hình với Công nghệ thông tin là tìm ra các yêu cầu phần cứng và phần mềm cho mỗi ứng dụng, lập yêu cầu mua sắm chúng, tiếp theo là một quá trình tẻ nhạt về thiết lập, cài đặt và cấu hình phần cứng và phần mềm.

Tiếp đến giai đoạn khi bạn cố gắng thiết lập giám sát và chuyển đổi dự phòng, cũng như tìm cách thu gom và theo dõi các bản ghi nhật ký. Bạn có thể đi đến chỗ phải viết các kịch bản lệnh tùy chỉnh cho mỗi ứng dụng sao cho lần sau mọi thứ dễ dàng hơn và đi đến chỗ xây dựng một bộ sưu tập đủ thứ rất lớn các phần cứng, phần mềm, các ứng dụng, các kịch bản lệnh, v.v..

Giả sử bạn có thể tiêu chuẩn hóa các nhu cầu của các ứng dụng và có đủ dự phòng để nhanh chóng tăng số lượng các ứng dụng, không chỉ trong sản xuất mà còn trong phát triển và thử nghiệm. Đây đúng là nơi cần Hệ thống IBM PureApplication xuất hiện.

Điều gì sẽ xảy ra nếu bạn đã có một cách để triển khai và quản lý một ứng dụng điển hình có một số mã đã triển khai trong một máy chủ ứng dụng J2EE với một số dữ liệu trong một cơ sở dữ liệu quan hệ và có một cách nhanh chóng và dễ dàng để thiết lập ghi nhật ký, theo dõi, chuyển đổi dự phòng, v.v..? Với Hệ thống IBM PureApplication bạn mới có giải pháp như vậy. Ta hãy mô tả một mẫu ứng dụng Web điển hình. Các tạo phẩm mà bạn thường thấy trong một ứng dụng ảo dựa trên mẫu ứng dụng web gồm có:

  • Các tệp lưu trữ EAR (Enterprise Archive - Lưu trữ doanh nghiệp) của J2EE hoặc WAR (Web Application Archive - Lưu trữ ứng dụng Web) của J2EE để triển khai trong một máy chủ ứng dụng.
  • Kịch bản lệnh để tạo ra các hàng/ bảng/ lược đồ cơ sở dữ liệu để khởi tạo một cơ sở dữ liệu.
  • Danh sách những người dùng và các nhóm như là một tệp LDIF (LDAP Data Interchange Format – Định dạng trao đổi dữ LDAP).

Như chúng ta đã thảo luận rồi, kiểu mẫu ứng dụng web này đã kèm theo tất cả các thành phần như vậy theo cách dễ sử dụng, được tối ưu hóa và được tích hợp đầy đủ. Bạn có thể chỉ cần xây dựng mẫu của mình bằng cách sử dụng trình xây dựng ứng dụng ảo với một giao diện người dùng kéo-và-thả đơn giản. Với một mẫu ứng dụng ảo hệ thống như vậy, bạn có thể nhanh chóng thiết kế một ứng dụng ảo, tải lên các tạo phẩm này, quy định các chính sách đối với việc ghi nhật ký, giám sát, mở rộng và triển khai ứng dụng ảo này trong đám mây riêng của mình.

Hệ thống IBM PureApplication có một cách dễ dàng để xây dựng và chỉnh sửa một mẫu ứng dụng ảo: đó là Trình xây dựng ứng dụng ảo (Virtual Application Builder). Đây là một trong các thành phần của một ứng dụng ảo được mô tả trong Hình 3.

Trình soạn thảo này rất dễ sử dụng. Nó hoạt động như sau: Bạn tạo một ứng dụng ảo mới, kéo và thả thành phần Enterprise Application (Ứng dụng doanh nghiệp) và một thành phần Database (Cơ sở dữ liệu) và liên kết chúng lại với nhau trên khung nền của Trình xây dựng ứng dụng ảo. Bạn tải lên một EAR hoặc WAR dựa vào JEE có chứa các tạo phẩm mã của bạn và một lược đồ cơ sở dữ liệu mô tả cấu trúc bảng mà mã dự kiến.

Vì mẫu này sử dụng các thành phần trong số các thành phần trong Các mẫu Ứng dụng web và cơ sở dữ liệu IBM (Web Application and IBM Database Patterns), nên Hệ thống IBM PureApplication sẽ sử dụng kiến thức kèm theo trong các thành phần đó khi sử dụng Các mẫu Ứng dụng web và cơ sở dữ liệu IBM theo cách tối ưu. Một trong những điểm khác biệt chính của các ứng dụng ảo so với các hệ thống ảo là ở chỗ bạn không quyết định hoặc cần phải biết chính xác có bao nhiêu máy ảo cuối cùng sẽ khởi động trên các siêu giám sát để xây dựng nên hệ thống đang chạy. Bạn có thể ủy thác trách nhiệm này cho Hệ thống IBM PureApplication, nó sẽ xem xét các thành phần, các liên kết giữa chúng và các chính sách có liên quan để tìm ra cách điều chỉnh phù hợp nhất về số lượng các máy ảo và chính xác cái gì chạy trên máy ảo nào.

Với một ứng dụng ảo, bạn chỉ cần quy định các chính sách để quản lý, ví dụ khía cạnh khả năng mở rộng của ứng dụng của mình khi các chính sách này thiết kế nên ứng dụng. Bạn không cần chọn thành phần phần mềm trung gian nào là cần thiết và mỗi thứ là bao nhiêu.

Sau khi đã triển khai, ứng dụng của bạn được quản lý tự động với tính sẵn sàng cao và sẽ thực hiện đúng các chính sách mà bạn đã quy định cho trạng thái đang chạy. Bạn nhìn vào ứng dụng này, được cung cấp qua một giao diện người dùng đã tối ưu hóa, được tích hợp đầy đủ. Không còn phải chuyển đổi qua lại nữa giữa các giao diện điều khiển quản trị khác nhau để quản lý và cấu hình hệ thống.


Sử dụng một mẫu ứng dụng ảo

Bạn có thể tự hỏi "những điều kiện nào phù hợp với việc sử dụng một mẫu ứng dụng ảo của Hệ thống IBM PureApplication trên một mẫu hệ thống ảo?" Trong trường hợp này, chúng ta hãy xác định rõ thêm các câu hỏi để cho nó có ý nghĩa hơn.

Về bản chất, các mẫu ứng dụng ảo tương tự như các mẫu hệ thống ảo ở chỗ cả hai đều là các mô hình của một ứng dụng ảo hóa để triển khai vào đám mây. Khi nói đến các mẫu trong bối cảnh của đám mây, chúng ta nói đến việc gói gọn các hoạt động cài đặt, cấu hình và tích hợp để làm cho việc triển khai và quản lý các môi trường trong một đám mây dễ dàng hơn nhiều. Bất kể loại mẫu nào mà cuối cùng bạn sử dụng, bạn được hưởng lợi từ việc coi môi trường cơ sở hạ tầng phần mềm trung gian có thể rất phức tạp hoặc ứng dụng phần mềm trung gian như một đơn vị nguyên tử đơn lẻ trong suốt vòng đời tạo, triển khai và quản lý của nó.

Hãy xem xét tính liên tục trao đổi trong đám mây để hiểu rõ các sự khác biệt giữa các triển khai ứng dụng và mẫu các hệ thống. (Một lần nữa, chúng tôi đã sử dụng IWD do nó là công nghệ có trước và chúng tôi có rất nhiều dữ liệu và kinh nghiệm sử dụng nó).

Hình 4. Tính liên tục trao đổi trong đám mây
Tính liên tục trao đổi trong đám mây
  • Trục-X biểu diễn mức độ bạn có quyền kiểm soát tùy chỉnh đối với môi trường kết quả. Mức độ kiểm soát ngày càng thấp hơn khi bạn di chuyển từ trái sang phải.
  • Trục-Y bên trái biểu diễn tổng chi phí sở hữu (TCO), sẽ giảm đi khi bạn di chuyển lên cao.
  • Trục-Y bên phải biểu diễn thời gian tới giá trị, cũng sẽ giảm đi khi bạn đi lên cao.

Đương nhiên là, các doanh nghiệp muốn di chuyển lên cao trên trục-Y, nhưng đôi khi họ không muốn từ bỏ nhiều quyền kiểm soát (di chuyển sang phía phải trên trục X) để làm được điều này.

Với các thứ mà hình này hiển thị làm một điểm tham chiếu, hãy bắt đầu suy nghĩ nhiều hơn một chút về hai cách tiếp cận dựa trên các mẫu.

Kịch bản: Sử dụng một mẫu hệ thống ảo

Hãy xem xét một ứng dụng dịch vụ web khá đơn giản mà bạn muốn triển khai vào đám mây. Nếu bạn sử dụng một mẫu hệ thống ảo để đạt được điều này, bạn sẽ có thể bắt đầu bằng cách sử dụng các phần của một ảnh Ấn bản Siêu giám sát (Hypervisor Edition) của WebSphere Application Server để bố trí cấu trúc liên kết. Bạn có thể kèm theo một trình quản lý triển khai, hai nút tùy chỉnh và một máy chủ web.

Sau khi thiết lập cấu trúc liên kết, bạn sẽ thêm các gói kịch bản lệnh tùy chỉnh để cài đặt ứng dụng dịch vụ web, rồi cấu hình bất kỳ tài nguyên nào mà ứng dụng phụ thuộc vào. Những người dùng, đã muốn triển khai mẫu hệ thống ảo sẽ truy cập nó, đưa ra các thông tin chi tiết về cấu hình chẳng hạn như tên ô WebSphere Server (Máy chủ WebSphere), các tên nút, phân bổ tài nguyên ảo và các tham số kịch bản lệnh tùy chỉnh rồi triển khai.

Sau khi đã triển khai, những người dùng có thể truy cập vào môi trường và cơ sở hạ tầng phần mềm trung gian như họ thường làm. Điều đó có nghĩa là họ có thể chạy các kịch bản lệnh quản trị, truy cập vào giao diện điều khiển quản trị do các phần mềm trung gian đã triển khai cung cấp và bất kỳ hoạt động cấu hình khác nào mà bình thường họ muốn thực hiện.

Kịch bản tương tự: Sử dụng một mẫu ứng dụng ảo

Sử dụng một mẫu ứng dụng ảo để hỗ trợ ứng dụng dịch vụ web tương tự sẽ dẫn đến một trải nghiệm khác nhau rõ rệt theo cả hai quan điểm triển khai và quản lý.

Trong khi sử dụng cách tiếp cận mẫu ứng dụng ảo, một người dùng sẽ bắt đầu bằng cách chọn một kiểu mẫu ứng dụng ảo phù hợp dựa trên kiểu của kiểu ứng dụng. Đây có thể là một kiểu mẫu được IBM cung cấp, ví dụ như IBM Workload Deployer Pattern for Web Applications (Mẫu của Bộ triển khai tải làm việc cho các ứng dụng Web của IBM) hoặc có thể là một kiểu mẫu do người dùng tạo ra thông qua các cơ chế có thể mở rộng được gắn trong thiết bị.

Sau khi lựa chọn mẫu thích hợp, người dùng sẽ cung cấp dịch vụ ứng dụng web, xác định các yêu cầu theo chức năng và yêu cầu không theo chức năng đối với ứng dụng đó thông qua các chính sách và sau đó triển khai.

Mẫu ứng dụng ảo và Hệ thống IBM PureApplication cung cấp kiến thức cần thiết để cài đặt, cấu hình và tích hợp cơ sở hạ tầng phần mềm trung gian và bản thân ứng dụng. Ngay khi được triển khai, người dùng sẽ quản lý môi trường ứng dụng kết quả thông qua một lăng kính được đơn giản hóa triệt để do Hệ thống PureApplication cung cấp. Nó cung cấp việc giám sát và quản lý liên tục môi trường trong một bối cảnh thích hợp với ứng dụng đó.

Điều này có nghĩa là thường không có các giao diện điều khiển quản trị và người dùng chỉ có thể thay đổi các mặt đã được định rõ của môi trường. Đây là một sự thay đổi đáng kể trong nhận thức về triển khai và quản lý các ứng dụng phần mềm trung gian.

Vì vậy, tôi sẽ quyết định thế nào?

Điểm chính là, khi bạn triển khai phần mềm bằng cách sử dụng một mẫu hệ thống ảo, phần lớn là bạn sẽ quản lý môi trường theo cách giống như bạn đã luôn quản lý nó với kiểu phần mềm đặc biệt này; thường là qua các giao diện điều khiển quản trị. Với các mẫu hệ thống ảo, bạn không tập trung vào việc thay đổi cách bạn vận hành hoặc quản lý phần mềm đó; thay vào đó, bạn chủ yếu tập trung vào cải thiện việc phân phối phần mềm đang nói đến.

Với các mẫu ứng dụng ảo, về cơ bản bạn thay đổi tất cả mọi thứ về các môi trường đó. Bạn đang làm việc với một giải pháp đã tối ưu hóa và đã tự động hóa cao. Gánh nặng của việc quản lý tính sẵn sàng cao và phản ứng năng động với các điều kiện thay đổi được xây dựng thành giải pháp kiểu mẫu, do đó bạn chỉ cần xác định các yêu cầu mức doanh nghiệp của mình. Việc quản lý và vận hành của môi trường đó được tích hợp hoàn toàn trong giao diện người dùng của Hệ thống IBM PureApplication. Tất cả mọi thứ được tích hợp và được chuyên môn hóa cao cho các kiểu ứng dụng cụ thể.

Một điều quan trọng cần lưu ý là IBM PureSystems hỗ trợ đồng thời cả hai mô hình này và có thể chủ động quản lý cả hai kiểu mẫu. Bạn cần quyết định dựa vào các yêu cầu và các nhu cầu quản lý của mình đối với ứng dụng cụ thể đang được xem xét.

Đối với mỗi ứng dụng, bạn cần quyết định xem bạn có thích cách tiếp cận dùng các mẫu hệ thống ảo lấy cơ sở hạ tầng phần mềm trung gian là trung tâm không hay liệu bạn có thích cách tiếp cận dùng các mẫu ứng dụng ảo lấy ứng dụng là trung tâm không. Bạn có thể bị thúc đẩy bởi nhu cầu hỗ trợ cấu hình rất đặc trưng, không dễ phù hợp với một kiểu mẫu ứng dụng ảo đã có sẵn. Trong trường hợp đó, bạn có thể chọn tạo kiểu mẫu ứng dụng ảo riêng của mình hoặc sử dụng một mẫu hệ thống ảo để tạo ra một cấu trúc liên kết chính xác như ứng dụng của bạn yêu cầu, thậm chí có thể tạo lại một môi trường vật lý mà trước đó bạn đã thực hiện. Trong trường hợp khác, bạn có thể thấy rằng ứng dụng của bạn hoàn toàn phù hợp với một trong các kiểu mẫu ứng dụng ảo đã được cung cấp.

Bất cứ khi nào có thể bạn nên cố gắng sử dụng sự tối ưu hóa và sự tiện lợi của một mẫu ứng dụng ảo bởi vì điều này sẽ luôn cung cấp tổng chi phí quyền sở hữu thấp nhất và thời gian tới giá trị ngắn nhất. Tuy nhiên, chắc chắn sẽ có các kịch bản ở đó bạn yêu cầu các cấu hình rất chi tiết và vì thế bạn quyết định nghiêng về quyền kiểm soát chi tiết có sẵn với các mẫu hệ thống ảo.

Điều quan trọng nhất là hiểu tất cả các tùy chọn và ra một quyết định chín chắn. Hãy xem xét trường hợp sử dụng của bạn, hiểu những gì có sẵn để giúp bạn thực hiện trường hợp sử dụng đó và cuối cùng, quyết định chọn những gì mà bạn muốn người dùng của mình sẽ được trải nghiệm.

Cuối cùng, một điều quan trọng cũng cần lưu ý là Hệ thống IBM PureApplication hỗ trợ đồng thời cả hai các mô hình này. Bạn có thể pha trộn tất cả các ứng dụng ảo, hệ thống ảo và thậm chí các thiết bị ảo đã triển khai vào cùng một nhóm các tài nguyên đám mây. Các khả năng mạnh mẽ được gắn trong Hệ thống IBM PureApplication cho phép các triển khai đa dạng này, cho phép bạn lựa chọn mô hình triển khai cho mỗi ứng dụng để đạt được lợi nhuận cao nhất.


Kết luận

Chúng tôi đã giới thiệu cho bạn các mẫu ứng dụng ảo và vị trí của chúng trong hệ sinh thái của Hệ thống IBM PureApplication (cũng như cách so sánh chúng và tương phản chúng với các mẫu hệ thống ảo và các thiết bị ảo); chúng tôi cũng đã mô tả các thành phần và các chức năng của mẫu ứng dụng ảo và đưa ra một cái nhìn cơ bản về cách tạo và sử dụng một mẫu ứng dụng ảo.

Để có thêm kinh nghiệm trong việc triển khai đám mây lấy mẫu làm trung tâm, hãy xem thêm các cộng đồng bè bạn, các diễn đàn và các bài viết trong phần Tài nguyên.

Tài nguyên

Học tập

Lấy sản phẩm và công nghệ

Thảo luận

Bình luận

developerWorks: Đăng nhập

Các trường được đánh dấu hoa thị là bắt buộc (*).


Bạn cần một ID của IBM?
Bạn quên định danh?


Bạn quên mật khẩu?
Đổi mật khẩu

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Ở lần bạn đăng nhập đầu tiên vào trang developerWorks, một hồ sơ cá nhân của bạn được tạo ra. Thông tin trong bản hồ sơ này (tên bạn, nước/vùng lãnh thổ, và tên cơ quan) sẽ được trưng ra cho mọi người và sẽ đi cùng các nội dung mà bạn đăng, trừ khi bạn chọn việc ẩn tên cơ quan của bạn. Bạn có thể cập nhật tài khoản trên trang IBM bất cứ khi nào.

Thông tin gửi đi được đảm bảo an toàn.

Chọn tên hiển thị của bạn



Lần đầu tiên bạn đăng nhập vào trang developerWorks, một bản trích ngang được tạo ra cho bạn, bạn cần phải chọn một tên để hiển thị. Tên hiển thị của bạn sẽ đi kèm theo các nội dung mà bạn đăng tải trên developerWorks.

Tên hiển thị cần có từ 3 đến 30 ký tự. Tên xuất hiện của bạn phải là duy nhất trên trang Cộng đồng developerWorks và vì lí do an ninh nó không phải là địa chỉ email của bạn.

Các trường được đánh dấu hoa thị là bắt buộc (*).

(Tên hiển thị cần có từ 3 đến 30 ký tự)

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Thông tin gửi đi được đảm bảo an toàn.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=70
Zone=Information Management, Công nghệ Java
ArticleID=832193
ArticleTitle=Quản lý các dịch vụ ứng dụng bằng các mẫu ứng dụng ảo
publish-date=08282012