GKE là một nền tảng mạnh mẽ, cho phép triển khai và quản lý các ứng dụng được xây dựng trên các container trên Google Cloud Platform (GCP). Tuy nhiên, với nhiều DN, việc tận dụng tối đa tiềm năng của GKE nhằm duy trì sự hiệu quả trong việc quản lý chi phí vẫn luôn là bài toán khó.
Theo ông Ngô Quốc Thái - Giám đốc Trung tâm Tư vấn và Triển khai dịch vụ MultiCloud của CMC Telecom: Việc xảy ra tình trạng dư thừa tài nguyên trong GKE là do nhiều DN chưa có kinh nghiệm triển khai và vận hành trên GCP; hoặc thường gặp các vấn đề như: thiết kế kiến trúc không tối ưu, cấu hình không được điều chỉnh hiệu quả cho các Pod (mặc định), thiếu hệ thống giám sát hệ thống, không quản lý tài nguyên cũ…Ví dụ: DN chạy nhiều ứng dụng trên cùng một cluster, có thể dẫn đến việc cấp phát quá nhiều tài nguyên cho từng ứng dụng.
Ông Ngô Quốc Thái đã đưa 4 phương pháp nhằm tối ưu tài nguyên và chi phí trên GKE.
Bật tính năng autoscaling “optimize utilization” trên GKE
Việc thiết lập đúng lượng vCPU và RAM luôn là một trong những phương pháp chủ chốt giúp giảm chi phí sử dụng GKE. Tuy nhiên, việc này hết sức khó khăn nếu người dùng thực hiện bằng cách giám sát và tinh chỉnh thủ công. Do đó, GKE đã tích hợp tính năng hỗ trợ người dùng giải quyết vấn đề này là “optimize utilization”.
Ngoài ra, theo thống kê trung bình trên toàn bộ hệ thống, Google cũng chỉ ra rằng các cluster của người dùng khi kích hoạt optimize utilization có thể giảm vCPU và RAM xuống 20% so với mức trung bình. Việc này thực hiện đơn giản nhưng mang lại hiệu suất cao, chúng ta có thể kích hoạt nó ngay khi tạo cluster hoặc chỉnh sửa trên chính cluster đang hoạt động như bên dưới.
Tận dụng Cost Optimization Insights
Trong quá trình vận hành một workload trên GKE, người dùng có thể tận dụng tính năng “Cost Optimization Insights” trực tiếp từ GKE console. Điều này giúp thuận tiện theo dõi và phân tích lượng CPU và Memory (GB) trên các clusters và workloads. Từ đó, dễ dàng xác định được các cơ hội để tối ưu hóa việc phân bổ tài nguyên.
Để tận dụng tốt tính năng trên, người dùng có thể xem danh sách các độ đo được thống kê bên dưới đây.
Phân chia và đóng gói ứng dụng: Từ giao diện Insights, chúng ta có thể tận dụng thanh "used" (xám nhạt) trong chế độ "cluster view" để xem lượng tài nguyên đã dùng. Từ đó, người dùng cần phân chia đúng lượng tài nguyên cần thiết cho cluster và giảm kích thước cho các gói ứng dụng, giúp tiết kiệm chi phí tốt hơn.
Điều chỉnh kích thước ứng dụng: Người dùng thực hiện bằng cách quan sát thanh “requested” (màu xanh) trong chế độ cluster/workload views để đặt đúng lượng tài nguyên cần cho các pod và ngưỡng cho phần autoscaling. Điều này giúp giải phóng thêm không gian trong cluster.
Sử dụng GKE Autopilot
Thực tế, việc giảm chi phí hạ tầng là vấn đề dễ dàng. Nhưng vừa giảm chi phí và vừa tiết kiệm thời gian của nhân sự trong việc vận hành mà vẫn đảm bảo độ ổn định của hệ thống là điều không hề đơn giản. Đó là lý do dịch vụ GKE Autopilot ra đời. Dịch vụ này giúp vận hành, tính giá dựa trên số pod yêu cầu sử dụng sau đó hệ thông sẽ tính toán số lượng tài nguyên mà ứng dụng cần để cấp và loại bỏ ngay các khoản chi phí hạ tầng dư thừa.
Mặc khác, GKE Autopilot được vận hành dựa trên các best practices từ Google, giúp những người dùng mới tiếp cận Google và sử dụng GKE thiết lập môi trường chính xác và an toàn.
Tận dụng preemptible VMs
Preemptible VMs là các máy ảo có giá rẻ hơn nhiều so với máy ảo thông thường (có thể lên đến 80%) nhưng chúng có thể bị chấm dứt bất kỳ lúc nào thường từ 1 đến 24 giờ (nếu nhu cầu tài nguyên cao). Preemptible VMs thường phù hợp cho các tác vụ ngắn hạn như: Batch/data processing, load testing… Do đó, người dùng phải cẩn thận lưu trữ ngay khi các tác vụ hoàn thành và đảm bảo rằng chúng có thể khởi động lại bất kỳ lúc nào.
Ông Ngô Quốc Thái cho biết, CMC Telecom là đối tác cao cấp của Google, hiện đã cung cấp thông tin chuyên sâu về 4 phương pháp giúp tối ưu hóa chi phí khi sử dụng GKE. Từ thực tế cho thấy, hiện GCP đã phát triển và giới thiệu nhiều tính năng, công cụ mới giúp giảm lượng tài nguyên cũng như tiết kiệm thời gian vận hành.
“Ngoài ra, nếu người dùng kết hợp liên tục các biện pháp tối ưu hóa tài nguyên với việc tối ưu hóa mã nguồn, thư viện và framework từ gốc thì có thể đảm bảo hệ thống luôn hoạt động hiệu quả mà vẫn tiết kiệm nhất”, chuyên gia giải pháp GCP của CMC Telecom nhấn mạnh.
Thúy Ngà