Tổng quan nghiên cứu

Trong bối cảnh phát triển mạnh mẽ của công nghệ điện toán đám mây, việc quản lý và phân bổ tài nguyên hiệu quả cho các ứng dụng web trở thành một thách thức quan trọng. Theo ước tính, số lượng requests đến các hệ thống web có thể lên đến hàng tỷ trong một khoảng thời gian ngắn, đòi hỏi các giải pháp tự động điều chỉnh tài nguyên phải đáp ứng kịp thời và chính xác. Kubernetes, một nền tảng quản lý container phổ biến, hiện đang sử dụng phương pháp reactive autoscaling, dựa trên các ngưỡng tài nguyên đã được thiết lập để điều chỉnh CPU và Memory. Tuy nhiên, phương pháp này có hạn chế khi chỉ phản ứng sau khi tải tăng cao, dẫn đến nguy cơ thiếu hụt tài nguyên và giảm hiệu suất hệ thống.

Mục tiêu nghiên cứu của luận văn là xây dựng một hệ thống đề xuất tài nguyên Kubernetes dựa trên mô hình học sâu Bi-directional Long Short-Term Memory (Bi-LSTM), nhằm dự đoán chủ động lưu lượng truy cập và nhu cầu tài nguyên trong tương lai gần. Nghiên cứu tập trung vào việc thu thập và xử lý dữ liệu log từ tập dữ liệu World Cup 1998 với hơn 1,3 tỷ requests trong 88 ngày, sử dụng các công cụ như Prometheus và Istio Service Mesh để thu thập metrics chi tiết từ các microservices chạy trên Kubernetes và nền tảng Amazon Web Services (AWS).

Phạm vi nghiên cứu bao gồm việc xây dựng mô hình dự đoán lưu lượng requests, CPU và Memory, đánh giá hiệu quả so sánh giữa phương pháp proactive autoscaler sử dụng Bi-LSTM và phương pháp reactive autoscaling truyền thống. Kết quả nghiên cứu có ý nghĩa quan trọng trong việc nâng cao hiệu suất sử dụng tài nguyên, giảm chi phí vận hành và đảm bảo các tiêu chuẩn Service-Level Agreements (SLAs) trong môi trường điện toán đám mây.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Luận văn dựa trên hai lý thuyết và mô hình chính:

  1. Mô hình ARIMA (Autoregressive Integrated Moving Average): Đây là mô hình thống kê dự báo chuỗi thời gian, sử dụng các biến trễ và trung bình trượt để dự đoán giá trị tương lai dựa trên dữ liệu quá khứ. Mô hình này phù hợp với các chuỗi dữ liệu có tính ổn định và biến động thấp, tuy nhiên tốc độ dự đoán chậm và giảm chính xác khi dự báo nhiều bước thời gian.

  2. Mô hình Bi-directional Long Short-Term Memory (Bi-LSTM): Là một dạng mạng nơ-ron hồi tiếp (RNN) cải tiến, Bi-LSTM xử lý dữ liệu theo hai chiều (quá khứ và tương lai), giúp giữ lại thông tin quan trọng trong chuỗi thời gian dài và giảm thiểu hiện tượng vanishing gradient. Mô hình này đặc biệt hiệu quả với dữ liệu phi tuyến tính và biến động cao, như lưu lượng truy cập hệ thống.

Các khái niệm chuyên ngành được sử dụng bao gồm:

  • Reactive Autoscaling: Phương pháp tự động điều chỉnh tài nguyên dựa trên ngưỡng đã định sẵn, phản ứng sau khi tải tăng.
  • Proactive Autoscaling: Phương pháp dự đoán trước nhu cầu tài nguyên dựa trên dữ liệu lịch sử và mô hình học máy.
  • Horizontal Pod Autoscaler (HPA): Cơ chế tăng giảm số lượng pods trong Kubernetes dựa trên metrics như CPU, Memory hoặc số lượng requests.
  • Time Series Data: Dữ liệu được thu thập theo chuỗi thời gian, đặc trưng bởi các biến động và xu hướng theo thời gian.
  • Metrics: Các chỉ số đo lường hiệu suất và tải của hệ thống như số lượng requests, CPU usage, Memory usage.

Phương pháp nghiên cứu

Nguồn dữ liệu chính được sử dụng là tập dữ liệu World Cup 1998, bao gồm hơn 1,3 tỷ requests trong 88 ngày, được thu thập dưới dạng log server và chuyển đổi sang định dạng có cấu trúc phù hợp cho việc huấn luyện mô hình. Dữ liệu được xử lý qua các bước ETL (Extract, Transform, Load) nhằm làm sạch, loại bỏ nhiễu và chuẩn hóa.

Phương pháp phân tích sử dụng mô hình học sâu Bi-LSTM để dự đoán lưu lượng requests trong khoảng thời gian tiếp theo, từ đó xác định nhu cầu tài nguyên CPU và Memory. Dữ liệu metrics được thu thập từ các microservices chạy trên Kubernetes thông qua Prometheus và Istio Service Mesh, đảm bảo tính chính xác và chi tiết.

Quá trình nghiên cứu được thực hiện trong khoảng thời gian từ tháng 2 đến tháng 6 năm 2023, với việc triển khai mô hình trên nền tảng Amazon Web Services (AWS) và Kubernetes Elastic Kubernetes Service (EKS). Cỡ mẫu dữ liệu là toàn bộ tập dữ liệu World Cup 1998 với 124,464 điểm dữ liệu tổng hợp theo phút. Phương pháp chọn mẫu là toàn bộ dữ liệu lịch sử để đảm bảo tính đại diện và độ chính xác của mô hình.

Phân tích kết quả dựa trên so sánh tỷ lệ chính xác dự đoán giữa mô hình proactive autoscaler sử dụng Bi-LSTM và phương pháp reactive autoscaling truyền thống, đồng thời đánh giá hiệu quả của mô hình kết hợp giữa Bi-LSTM và các phương pháp toán học truyền thống.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  1. Hiệu suất dự đoán của Bi-LSTM vượt trội: Mô hình proactive autoscaler sử dụng Bi-LSTM đạt tỷ lệ chính xác dự đoán khoảng 57%, cao hơn đáng kể so với phương pháp reactive autoscaling truyền thống chỉ đạt 43%. Điều này chứng tỏ khả năng dự đoán chủ động giúp hệ thống phân bổ tài nguyên hiệu quả hơn.

  2. Mô hình kết hợp cải thiện hiệu quả: Việc kết hợp mô hình Bi-LSTM với các phương pháp truyền thống và toán học đã nâng cao hiệu suất dự đoán và điều khiển tài nguyên CPU, Memory, giúp giảm sai số và tăng độ ổn định của hệ thống.

  3. Dữ liệu time series và feature engineering quan trọng: Việc xử lý dữ liệu log server, loại bỏ nhiễu và bổ sung thông tin liên quan đến thời điểm diễn ra các trận đấu World Cup (ví dụ: số trận đấu trong khoảng thời gian) đã giúp mô hình học sâu nắm bắt được các biến động phức tạp trong lưu lượng truy cập.

  4. Thu thập dữ liệu chi tiết từ microservices: Sử dụng Prometheus và Istio Service Mesh để thu thập metrics từ từng microservice giúp tránh hiện tượng false positive khi chỉ đo đạc tại điểm cuối (proxy server), từ đó nâng cao độ chính xác trong việc phân bổ tài nguyên.

Thảo luận kết quả

Nguyên nhân chính dẫn đến hiệu quả vượt trội của mô hình Bi-LSTM là khả năng xử lý dữ liệu theo hai chiều, giúp giữ lại thông tin quan trọng từ cả quá khứ và tương lai trong chuỗi thời gian. So với các mô hình ARIMA hay LSTM đơn chiều, Bi-LSTM giảm thiểu hiện tượng mất mát thông tin và vanishing gradient, từ đó cải thiện độ chính xác dự đoán.

Kết quả này phù hợp với các nghiên cứu trước đây trong lĩnh vực học máy và dự báo chuỗi thời gian, đồng thời khẳng định tính khả thi của việc áp dụng mô hình học sâu trong quản lý tài nguyên điện toán đám mây. Việc sử dụng dữ liệu chi tiết từ microservices cũng giúp mô hình phản ánh chính xác hơn đặc tính tiêu thụ tài nguyên thực tế của từng thành phần ứng dụng.

Dữ liệu được trình bày qua các biểu đồ thể hiện mối quan hệ giữa số lượng requests, tổng số bytes trả về và số trận đấu diễn ra theo thời gian, cho thấy rõ các biến động và xu hướng trong lưu lượng truy cập. Các biểu đồ loại bỏ nhiễu cũng minh chứng cho hiệu quả của quy trình xử lý dữ liệu đầu vào.

Tuy nhiên, mô hình vẫn còn một số hạn chế như tỷ lệ chính xác dự đoán chưa đạt mức tối ưu tuyệt đối, do ảnh hưởng của các yếu tố ngoại cảnh và dữ liệu nhiễu không thể loại bỏ hoàn toàn. Do đó, nghiên cứu đề xuất tiếp tục phát triển các kỹ thuật xử lý dữ liệu và cải tiến mô hình dự đoán trong tương lai.

Đề xuất và khuyến nghị

  1. Triển khai mô hình Bi-LSTM trong hệ thống sản xuất: Khuyến nghị các tổ chức sử dụng Kubernetes và AWS áp dụng mô hình proactive autoscaler dựa trên Bi-LSTM để nâng cao hiệu quả phân bổ tài nguyên, giảm thiểu chi phí vận hành và đảm bảo SLA. Thời gian triển khai dự kiến trong vòng 6 tháng.

  2. Tăng cường thu thập dữ liệu chi tiết từ microservices: Đề xuất sử dụng Prometheus kết hợp Istio Service Mesh để thu thập metrics đa chiều, giúp mô hình dự đoán chính xác hơn và tránh lãng phí tài nguyên do false positive. Chủ thể thực hiện là đội ngũ DevOps và kỹ sư hệ thống.

  3. Phát triển hệ thống xử lý dữ liệu tự động: Xây dựng pipeline ETL tự động để làm sạch, chuẩn hóa và loại bỏ nhiễu dữ liệu log server, đảm bảo dữ liệu đầu vào cho mô hình luôn chất lượng cao. Thời gian thực hiện trong 3-4 tháng, do nhóm phân tích dữ liệu đảm nhiệm.

  4. Nghiên cứu mở rộng mô hình kết hợp: Khuyến khích nghiên cứu tiếp tục phát triển mô hình kết hợp giữa Bi-LSTM, ARIMA và các kỹ thuật toán học khác nhằm cải thiện độ chính xác và khả năng dự đoán đa dạng các loại tải biến động. Chủ thể thực hiện là nhóm nghiên cứu học thuật và phát triển sản phẩm.

Đối tượng nên tham khảo luận văn

  1. Kỹ sư DevOps và quản trị hệ thống: Có thể áp dụng các giải pháp autoscaling chủ động để tối ưu hóa việc phân bổ tài nguyên, giảm thiểu downtime và chi phí vận hành trong môi trường Kubernetes và AWS.

  2. Nhà nghiên cứu và sinh viên ngành Khoa học Máy tính: Tài liệu cung cấp kiến thức chuyên sâu về ứng dụng mô hình học sâu Bi-LSTM trong dự báo chuỗi thời gian và quản lý tài nguyên điện toán đám mây.

  3. Các doanh nghiệp phát triển ứng dụng web quy mô lớn: Giúp hiểu rõ cách thức dự đoán và điều chỉnh tài nguyên hiệu quả, đảm bảo trải nghiệm người dùng và tuân thủ SLA trong môi trường có lưu lượng truy cập biến động cao.

  4. Nhà phát triển phần mềm và kiến trúc sư hệ thống: Tham khảo các phương pháp thu thập dữ liệu metrics chi tiết từ microservices và tích hợp với hệ thống autoscaling để thiết kế kiến trúc ứng dụng linh hoạt, hiệu quả.

Câu hỏi thường gặp

  1. Tại sao cần sử dụng mô hình Bi-LSTM thay vì các mô hình truyền thống?
    Bi-LSTM xử lý dữ liệu theo hai chiều, giữ lại thông tin quan trọng từ cả quá khứ và tương lai, giúp dự đoán chính xác hơn với dữ liệu phi tuyến và biến động cao, trong khi các mô hình truyền thống như ARIMA hay LSTM đơn chiều có hạn chế trong việc này.

  2. Dữ liệu nào được sử dụng để huấn luyện mô hình?
    Luận văn sử dụng tập dữ liệu World Cup 1998 với hơn 1,3 tỷ requests, được xử lý và tổng hợp theo phút, kết hợp với thông tin về thời điểm diễn ra các trận đấu để làm tăng tính chính xác của dự đoán.

  3. Làm thế nào để thu thập dữ liệu metrics từ các microservices?
    Sử dụng Prometheus kết hợp với Istio Service Mesh để thu thập các metrics như số lượng requests, CPU và Memory tiêu thụ từ từng microservice, đảm bảo dữ liệu chi tiết và chính xác cho mô hình dự đoán.

  4. Phương pháp proactive autoscaling có ưu điểm gì so với reactive?
    Proactive autoscaling dự đoán trước nhu cầu tài nguyên dựa trên dữ liệu lịch sử, giúp hệ thống chuẩn bị tài nguyên kịp thời, tránh tình trạng thiếu hụt hoặc dư thừa tài nguyên, trong khi reactive autoscaling chỉ phản ứng sau khi tải tăng cao.

  5. Mô hình kết hợp giữa Bi-LSTM và các phương pháp khác hoạt động như thế nào?
    Mô hình kết hợp tận dụng ưu điểm của Bi-LSTM trong xử lý dữ liệu phi tuyến và các phương pháp toán học truyền thống để cải thiện độ chính xác và ổn định của dự đoán, từ đó nâng cao hiệu quả điều khiển tài nguyên CPU và Memory.

Kết luận

  • Luận văn đã xây dựng thành công mô hình dự đoán tài nguyên Kubernetes sử dụng Bi-LSTM, đạt tỷ lệ chính xác dự đoán 57%, vượt trội so với phương pháp reactive truyền thống.
  • Phương pháp kết hợp giữa Bi-LSTM và các kỹ thuật toán học truyền thống giúp cải thiện hiệu suất dự đoán và điều khiển tài nguyên hiệu quả hơn.
  • Hệ thống thu thập dữ liệu metrics chi tiết từ microservices qua Prometheus và Istio Service Mesh đảm bảo dữ liệu đầu vào chất lượng, giảm thiểu sai số.
  • Quy trình xử lý dữ liệu log server, loại bỏ nhiễu và bổ sung thông tin liên quan đến sự kiện (trận đấu) đóng vai trò quan trọng trong việc nâng cao độ chính xác mô hình.
  • Hướng phát triển tiếp theo bao gồm mở rộng mô hình kết hợp, tự động hóa quy trình xử lý dữ liệu và triển khai thực tế trong môi trường sản xuất để tối ưu hóa quản lý tài nguyên điện toán đám mây.

Để tiếp tục phát triển nghiên cứu, các nhà quản lý và kỹ sư hệ thống được khuyến khích áp dụng mô hình này trong thực tế, đồng thời phối hợp với nhóm nghiên cứu để cải tiến và mở rộng giải pháp.