Giới thiệu về nền tảng IBM Bluemix

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giao thức MQTT(Message queue telemetry transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (Trang 60 - 67)

IBM Bluemix: Là sản phẩm được tạo ra bởi IBM sử dụng nền tảng điện toán đám mây kết hợp nền tảng như một dịch vụ (platform as a service - PaaS) với cơ sở hạ tầng như một dịch vụ (infrastructure as a service - IaaS). Ngoài ra, Bluemix có một danh mục phong phú các dịch vụ điện toán đám mây có thể dễ dàng tích hợp với PaaS và IaaS để xây dựng các ứng dụng kinh doanh nhanh chóng [11].

Bluemix có triển khai điện toán đám mây phù hợp với nhu cầu của mọi người cho dù là một doanh nghiệp nh có kế hoạch mở rộng quy mô, hoặc một doanh nghiệp lớn đòi h i phải có thêm sự riêng biệt. Chúng ta có thể phát triển trong một đám mây mà không có phân biệt biên giới, nơi chúng ta có thể kết nối giữa dịch vụ tư nhân của chúng ta với các dịch vụ công cộng Bluemix sẵn có từ IBM. Chúng ta có thể truy cập các ứng dụng, dịch vụ và cơ sở hạ tầng trong Bluemix và sử dụng dữ liệu, hệ thống, quy trình, các công cụ PaaS và công cụ IaaS hiện có. Các nhà phát triển có thể đưa vào các hệ sinh thái phát triển nhanh chóng của các dịch vụ có sẵn và khung thời gian chạy để xây dựng các ứng dụng sử dụng các phương pháp lập trình có nhiều thứ tiếng.

Với Bluemix, chúng ta không còn phải đầu tư lớn trong phần cứng để kiểm tra hoặc chạy một ứng dụng mới. Thay vào đó, chúng quản lý tất cả cho những gì chúng ta sử dụng. Bluemix cung cấp mô hình triển khai tích hợp như công cộng (public), dành riêng, và theo địa phương [11].

IBM cho phép chúng ta:

 Triển khai tính toán hiệu suất cao và cơ sở hạ tầng lưu trữ an toàn tại trung tâm dữ liệu đám mây của IBM trên thế giới.

 Kiểm tra và thông qua một loạt các dịch vụ điện toán đám mây và khả năng từ IBM, cộng đồng nguồn mở, và các nhà phát triển bên thứ ba.

 Kết nối với tất cả các hệ thống cũ và ứng dụng từ một nền tảng điện toán đám mây mở rộng duy nhất thông qua khả năng của mạng và các API riêng.

 Tăng lên và hạ xuống giảm nguồn tài nguyên trong thời gian thực như nhu cầu kinh doanh của chúng ta hoặc khối lượng công việc đòi h i sự thay đổi.

Hình 2. 1: Các dịch vụ Bluemix cung cấp [11]

IBM Bluemix cung cấp rất nhiều tính năng hiệu quả đó là:

 “Ứng dụng”: Các bảng điều khiển cung cấp tất cả mọi thứ cần thiết cho chúng ta để thực thi một ứng dụng

 “Dịch vụ”: Bảng điều khiển cho phép truy cập vào các dịch vụ của IBM và của các nhà cung cấp thứ ba bao gồm: Watson, Internet of Things, Analytics, Mobile, và DevOps.

 “Hạ tầng”: Các bảng điều khiển cơ sở hạ tầng cung cấp dịch vụ khác nhau để đáp ứng nhu cầu cơ sở hạ tầng điện toán đám mây.

Hình 3. 2 Kiến trúc Bluemix Cloud Foundry [11]

Chúng có thể triển khai các ứng dụng với các khu vực khác nhau Bluemix. Chúng ta có thể chọn để triển khai tại một khu vực hoặc trên nhiều khu vực:

Hình 3. 3: Mô hình triển khai ứng dụng nhiều vùng địa lý của IBM Bluemix [11]

Các thức làm việc của Bluemix Cloud Foundry:

Khi chúng ta triển khai một ứng dụng với Bluemix Cloud Foundry, ta phải cấu hình Bluemix với đầy đủ thông tin để hỗ trợ các ứng dụng.

 Đối với một ứng dụng di động, Bluemix chứa một vật đại diện tại ứng dụng di động, chẳng hạn như các dịch vụ mà các ứng dụng điện thoại di động sử dụng để giao tiếp với một máy chủ.

 Đối với một ứng dụng web, chúng ta phải đảm bảo rằng thông tin về thời gian chạy và khung được truyền đạt tới Bluemix, để Bluemix có thể thiết lập các môi trường thực thi thích hợp để chạy các ứng dụng. Mỗi môi trường thực thi, bao gồm cả ứng dụng điện thoại di động và web được tách biệt từ môi trường thực thi của các ứng dụng khác. Các môi trường thực hiện đang bị tách biệt mặc dù các ứng dụng đang ở trên một máy vật lý [11].

Hình 3. 4: Triển khai một ứng dụng [11]

Khi chúng ta tạo một ứng dụng và triển khai nó đến Bluemix Cloud Foundry, môi trường Bluemix xác định một máy chủ ảo thích hợp để gửi các ứng dụng. Đối với một ứng dụng điện thoại di động, một back-end di động được tạo ra trên Bluemix. Bất kỳ mã cho các ứng dụng điện thoại di động chạy trong đám mây cũng chạy trong môi trường Bluemix. Đối với một ứng dụng web, mã chạy trong đám mây là các ứng dụng riêng của mình mà các nhà phát triển để triển khai Bluemix. Việc xác định các máy chủ ảo được dựa trên một số yếu tố, bao gồm:

 Các tải hiện tải có trên máy tính

 Môi trường thực thi và nền tảng được hỗ trợ bởi các máy ảo

Sau khi một máy chủ ảo được chọn, một ứng dụng quản lý ứng dụng trên mỗi máy chủ ảo cài đặt các nền tảng và thời gian thực thi thích hợp cho các ứng

dụng. Sau đó, các ứng dụng có thể được triển khai vào các nền tảng đó. Khi triển khai hoàn tất, các hiện vật ứng dụng được bắt đầu [11].

Hình 3. 5: Thiết kế của một máy chủ ảo [11]

Trong mỗi máy chủ ảo, một ứng dụng quản lý giao tiếp với phần còn lại của cơ sở hạ tầng Bluemix, và quản lý các ứng dụng được triển khai đến các máy chủ ảo.

Mỗi máy chủ ảo có vùng chứa để tách và bảo vệ các ứng dụng. Trong mỗi thành phần, Bluemix cài đặt các nền tảng và thời gian chạy thích hợp được yêu cầu cho mỗi ứng dụng.

Khi ứng dụng được triển khai, nếu nó có một giao diện web (như đối với một ứng dụng web Java), hoặc các dịch vụ dựa trên REST khác (chẳng hạn như dịch vụ điện thoại di động tiếp xúc công khai cho các ứng dụng điện thoại di động), người sử dụng các ứng dụng có thể giao tiếp với nó bằng cách sử dụng các yêu cầu HTTP bình thường.

Hình 3. 6: Triển khai một ứng dụng trên IBM Cloud Foundry [11]

Mỗi ứng dụng có thể có một hoặc nhiều URL liên kết với nó, nhưng họ phải tất cả các điểm đến điểm cuối Bluemix. Khi có một request đến, Bluemix xem xét các yêu cầu, xác định ứng dụng nào đó được dành cho, sau đó chọn một thể hiện của ứng dụng nhận yêu cầu.

Với việc sử dụng Bluemix chúng ta có thể:

 Triển khai các ứng dụng trong vài giây chỉ với vài cú click chuột đơn giản

 Tùy chọn công cụ phát triển ứng dụng: Dùng bất kỳ công cụ phát triển nào chúng ta ưa thích!

 Tạo ứng dụng nhanh chóng với các dịch vụ xây dựng sẵn: cung cấp một loạt các khả năng tích hợp cho mọi ý tưởng.

 Tích hợp với các ứng dụng nội bộ của doanh nghiệp

 Giám sát, phân tích trạng thái các ứng dụng theo thời gian thực

Chúng ta có thể triển khai ứng dụng trên Bluemix bằng giao diện hoặc bằng công cụ command line của nền tảng Cloud Foundry [11].

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giao thức MQTT(Message queue telemetry transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (Trang 60 - 67)

Tải bản đầy đủ (PDF)

(78 trang)