Phát triển nền tảng dựa trên tính toán cận biên cho các ứng dụng IoT thông minh

Development of a framework based on edge computing for smart IoT applications

Trong thời đại hiện tại, sự phát triển nhanh chóng của công nghệ, phần cứng và phần mềm đã thúc đẩy sự phát triển của các ứng dụng thông minh dựa trên tính toán cận biên (edge computing). Để đáp ứng nhu cầu thiết yếu của con người, nhóm của chúng tôi đã quyết định xây dựng một hệ thống cận biên thông minh, tích hợp công nghệ trí tuệ nhân tạo vào quá trình nhận diện. Hệ thống này được thiết kế dựa trên kiến trúc microservices, giúp giải quyết các vấn đề liên quan đến việc sử dụng tài nguyên nhiều hơn trên điện toán đám mây, đồng thời giảm chi phí hoạt động và đảm bảo thời gian thực. Đồng thời, chúng tôi sẽ tích hợp quy trình triển khai CI/CD tự động tích hợp với Kubernetes (K8s) để đảm bảo việc triển khai và quản lý ứng dụng một cách hiệu quả.

TÁC GIẢ

NGÔ VŨ MINH ĐẠT, NGUYỄN ĐOÀN KHẮC HUY

GIẢNG VIÊN HƯỚNG DẪN

NGÀNH

Năm:

Tổng quan đồ án

Trong thời đại hiện tại, sự phát triển nhanh chóng của công nghệ, phần cứng và phần mềm đã thúc đẩy sự phát triển của các ứng dụng thông minh dựa trên tính toán cận biên (edge computing). Để đáp ứng nhu cầu thiết yếu của con người, nhóm của chúng tôi đã quyết định xây dựng một hệ thống cận biên thông minh, tích hợp công nghệ trí tuệ nhân tạo vào quá trình nhận diện. Hệ thống này được thiết kế dựa trên kiến trúc microservices, giúp giải quyết các vấn đề liên quan đến việc sử dụng tài nguyên nhiều hơn trên điện toán đám mây, đồng thời giảm chi phí hoạt động và đảm bảo thời gian thực. Đồng thời, chúng tôi sẽ tích hợp quy trình triển khai CI/CD tự động tích hợp với Kubernetes (K8s) để đảm bảo việc triển khai và quản lý ứng dụng một cách hiệu quả.

Mục tiêu

  • Áp dụng kiến thức đã học vào đề tài nhóm thực hiện.
  • Xây dựng được sản phẩm hoàn chỉnh bao gồm backend và frontend.
  • Tạo nên một sản phẩm hoàn chỉnh có thể phục vụ cộng đồng qua các dịch vụ thiết thực, giao diện thân thiện và dễ thao tác.
  • Xây dựng quy trình Devops CICI Pipeline và Kubernetes.
  • Có hệ thống thông báo, logging, đánh giá khi phát hiện vi phạm sử dụng AI.

Đối tượng nghiên cứu và kết quả mong muốn

  • Đối tượng nghiên cứu: Mô hình deep learning sử dụng Yolo, Thiết bị nhúng jetson Nano và camera.
  • Kết quả mong muốn đạt được: Giải quyết được bài toán nhận diện người đeo khẩu trang trong thời gian thực.

Nội dung đồ án

Cơ sở lý thuyết

ĐIỆN TOÁN BIÊN (EDGE COMPUTING )

Điện toán biên (Edge Computing) là một mô hình điện toán phân tán mang tính đột phá, trong đó việc xử lý dữ liệu và lưu trữ thông tin được thực hiện tại “rìa” của mạng, gần với nguồn dữ liệu được tạo ra. Mô hình này khác biệt so với mô hình điện toán đám mây truyền thống, nơi dữ liệu được tập trung xử lý tại các trung tâm dữ liệu lớn và xa xôi.

image 119

KIẾN TRÚC MICROSERVICS

image 120
image 121

SONARQUBE

Sonarqube là công cụ kiểm tra chất lượng mã nguồn trong môi trường phát triển phần mềm,Sonarqube hỗ trợ nhiều loại ngôn ngữ, có thể quét và phát hiện các lỗ hỏng, bugs lỗi logic và đưa báo cáo đến cho người dùng.Công cụ này có thể cấu hình để tích hợp vào quy trình CI của dự án, giúp đảm bảo code chất lượng nhất trước khi đưa đến cho người dùng cuối.

DOCKER

Docker là nền tảng cho phép đóng gói ứng dụng và môi trường vào một container, giúp việc triển khai trở nên nhất quán trên mọi môi trường. Dễ dàng tích hợp với quy trình CI.

image 122

KUBERNETES

Kubernetes là một hệ thống orchestration container mã nguồn mở để tự động hóa việc triển khai, mở rộng và quản lý phần mềm. Được thiết kế ban đầu bởi Google, dự án hiện do một cộng đồng những người đóng góp trên toàn thế giới bảo trì và thương hiệu được nắm giữ bởi Cloud Native Computing Foundation.

image 123
image 124

ARGOCD

ArgoCD là một mã nguồn mở container-native workflow engine phục vụ việc deploy service trên Kubernetes.

  • ArgoCD được triển khai trên Kubernetes như một Kubernetes CRD (Custom Resource Definition)
  • ArgoCD là một công cụ dễ sử dụng cho phép các nhóm phát triển triển khai và quản lý các ứng dụng mà không cần phải tìm hiểu nhiều về Kubernetes và không cần toàn quyền truy cập vào hệ thống Kubernetes.
image 125
image 126

SƠ ĐỒ HỆ THỐNG

image 127

Link demo
https://drive.google.com/drive/folders/1SckzC1HGs78unueHxmfAbmtKDf3eR4Cc?usp=sharing