Kinh Nghiệm Đầu Tiên Với GKE: Hackathon Kỷ Niệm 10 Năm
Đây là bài viết về việc tạo một dự án cho Hackathon Kỷ Niệm 10 Năm GKE. Trong sự kiện này, tôi đã quyết định mở rộng dự án Bank of Anthos với một bảng điều khiển kế hoạch nghỉ hưu. (Bank of Anthos là một dự án sandbox mà bạn có thể chạy trên GKE.) Ý tưởng là cung cấp cho người dùng một cách để kiểm tra mục tiêu tiết kiệm của họ, nhận lời khuyên từ AI thông qua Google Gemini và thậm chí tìm kiếm công việc phụ thông qua API Adzuna. Và tôi đã thực hiện điều đó!
Các Bước Đã Đi Qua
Một số vấn đề mà tôi đã gặp phải trong quá trình phát triển:
- Thiếu bí mật: Ứng dụng của tôi không thể khởi động vì tôi đã quên áp dụng bí mật JWT. Điều này đã được ghi trong file
readme.md
ở thư mục gốc. Tôi đã bỏ lỡ nó. - Cụm máy quá nhỏ: Một số dịch vụ đã ở trạng thái Pending cho đến khi tôi mở rộng cụm máy. Tôi không nghĩ rằng dịch vụ sẽ ngừng hoạt động khi tôi giảm yêu cầu CPU trong các file YAML vì chi phí GKE cao hơn tôi dự kiến..!
- Không tương thích hình ảnh Docker: Tôi đã xây dựng ứng dụng trên Mac (ARM) nhưng các node GKE lại sử dụng AMD64. Giải pháp nhanh chóng ở đây.
- Nhầm lẫn về việc phơi bày dịch vụ: Bảng điều khiển của tôi hoạt động nội bộ, nhưng tôi không thể truy cập cho đến khi tôi chuyển loại dịch vụ từ ClusterIP sang LoadBalancer. Ngay cả khi là một người mới, tôi cũng nhận ra đây có thể là một sai lầm phổ biến.
Mỗi vấn đề đều gây khó chịu trong khoảnh khắc, nhưng chúng đã giúp tôi hiểu rõ hơn về GKE.
Kết Quả Cuối Cùng
Cuối cùng, tôi đã xây dựng thành công một bảng điều khiển mà:
- Kết nối trực tiếp với giao diện người dùng của Bank of Anthos
- Cung cấp lời khuyên nghỉ hưu cá nhân hóa từ AI
- Hiển thị danh sách công việc để tăng thu nhập
- Chạy ổn định trên GKE (GKE thật sự đắt đối với một nhà phát triển đơn lẻ, tôi phải nói vậy. May mắn là tôi nhận được $100 tín dụng từ hackathon nhưng nó đang hết rất nhanh)
Suy Nghĩ Cuối Cùng
Tôi nhận thấy GKE và Kubernetes rất cần thiết cho các dự án lớn. Là một nhà phát triển đơn lẻ, tôi chủ yếu sử dụng những thứ như Firebase và có thể là Cloudflare. Tôi cảm thấy mình cần nâng cao khả năng của mình để trở thành một nhà phát triển và người sáng lập tốt hơn. Tôi vẫn còn quá mới mẻ. Vẫn đang từng bước một:)
Thực Hành Tốt Nhất
- Đọc tài liệu: Hãy chắc chắn rằng bạn đã đọc kỹ tài liệu GKE trước khi bắt đầu.
- Kiểm tra các cấu hình: Đảm bảo rằng các bí mật và cấu hình dịch vụ của bạn được thiết lập đúng cách.
- Tối ưu hóa chi phí: Theo dõi chi phí GKE để không bị bất ngờ.
Những Cạm Bẫy Thường Gặp
- Quên áp dụng các bí mật cần thiết.
- Không mở rộng cụm khi cần thiết.
- Nhầm lẫn giữa các loại dịch vụ.
Mẹo Tăng Hiệu Suất
- Sử dụng các dịch vụ tận dụng tài nguyên một cách hiệu quả.
- Theo dõi hiệu suất ứng dụng thường xuyên.
Giải Quyết Vấn Đề
Nếu bạn gặp phải sự cố:
- Kiểm tra nhật ký của ứng dụng để tìm hiểu nguyên nhân.
- Sử dụng lệnh
kubectl
để theo dõi tình trạng của các pod.
Câu Hỏi Thường Gặp
- GKE là gì?
GKE (Google Kubernetes Engine) là dịch vụ quản lý Kubernetes trên Google Cloud. - Tôi cần gì để bắt đầu với GKE?
Bạn cần một tài khoản Google Cloud và một số kiến thức cơ bản về Kubernetes. - Làm thế nào để tối ưu hóa chi phí GKE?
Theo dõi sử dụng tài nguyên và điều chỉnh các cấu hình dịch vụ cho phù hợp.
Bài viết này được tạo ra nhằm mục đích tham gia Hackathon Kỷ Niệm 10 Năm GKE.