Hình 3.1: Kiến trúc đơn giản của mô hình
Hình 3.1 cho thấy tổng quan về nền tảng phân tích dữ liệu cho một trường hợp sử dụng. Mô hình này được xây dựng trong Docker và nó được tạo ra từ 3 nền tảng Elasticsearch, Logstash và Kibana. Mô hình này hoạt động theo nguyên tắc sau:
Bước 1: Logstash nhận dữ liệu từ vô số nguồn mạng IoT. Đối với trường hợp sử dụng này, tác giả chọn hai loại nguồn: (1) thiết bị IoT bên ngoài được kết nối qua giao thức TCP/IP (Port:5000), (2) nguồn nội bộ từ thiết bị tương tự có Docker. Đối với tài nguyên nội bộ, tác giả sử dụng log file của Openvswitch được kết nối với nhiều thiết bị mạng.
Openvswitch là một switch ảo đa cấp phép theo giấy phép mã nguồn mở Apache 2.0. Nó được thiết kế để cho phép tự động hóa mạng lưới khổng lồ thông qua mở rộng chương trình, trong khi vẫn hỗ trợ quản lý giao diện và các đa thức (ví dụ NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag…).
Kibana Elasticsearch Logstash
User
OVS log file
TCP/IP: 5000 Docker
Bên cạnh đó, nó được thiết kế để hỗ trợ phân phối trên nhiều máy chủ vật lý tương tự như Vnetwork switch của VMWare hoặc Nexus 1000v của Cisco. Openvswitch được lập trình một công tắc, nó được sử dụng trong một số nền tảng IoT và đó là lý do tác giả chọn nó sử dụng trong trường hợp của tác giả.
Bước 2: Logstash sau khi nhận được dữ liệu và xử lý hàng loạt dữ liệu khác nhau để lưu trữ dữ liệu trong các thư mục địa phương.
Bước 3: Elasticsearch thực hiện các chức năng của nó (ví dụ như tối ưu hóa cấu trúc dữ liệu, tạo chỉ số tìm kiếm, thông tin nhóm)
Bước 4: Kibana đọc Logstash cấu trúc dữ liệu và đọc dữ liệu từ Elasticsearch để trình bày chùng cho người sử dụng tùy chỉnh bố trí, biểu đồ và các bộ lọc.