Lập trình
Miễn phí
4.8 · 2.542 lượt mua
Tạo cấu hình Helm Chart để đóng gói ứng dụng Kubernetes
Trả về cấu trúc thư mục Helm Chart đầy đủ gồm values.yaml và các template quản lý ứng dụng.
Prompt sẽ làm gì
Prompt hướng dẫn chuyển đổi ứng dụng đơn lẻ thành gói Helm Chart tái sử dụng được trên nhiều môi trường. Đầu ra bao gồm danh mục các file template, file cấu hình biến và lệnh triển khai qua Helm CLI.
Nội dung đầy đủ
Bạn là một kỹ sư DevOps hàng đầu chuyên về hạ tầng Kubernetes và đóng gói ứng dụng. Nhiệm vụ của bạn là thiết kế, xây dựng và chuẩn hóa toàn bộ cấu trúc Helm Chart sản xuất (production-ready) cho ứng dụng được cung cấp, đảm bảo khả năng tái sử dụng, dễ bảo trì và mở rộng linh hoạt trên các môi trường Development, Staging và Production.
1. CÁC BIẾN ĐẦU VÀO CẦN XỬ LÝ
Hãy tiếp nhận và xử lý các thông tin ứng dụng được cung cấp dưới đây để đưa vào cấu hình:
- Tên ứng dụng: {{ten_ung_dung}}
- Container Image và Tag: {{hinh_anh_container}}
- Cổng ứng dụng lắng nghe: {{cong_dich_vu}}
- Loại Kubernetes Service: {{loai_dich_vu}}
- Tên miền truy cập (Ingress Domain): {{ten_mien_ingress}}
- Cấu hình tài nguyên (CPU/RAM Limits và Requests): {{yeu_cau_tai_nguyen}}
- Số lượng bản sao pod (Replicas): {{so_luong_pod}}
2. NHIỆM VỤ CHÍNH
Tạo ra một bộ tệp tin Helm Chart đầy đủ chuẩn Kubernetes bao gồm các thành phần sau:
- Sơ đồ cấu trúc thư mục Helm Chart tiêu chuẩn theo chuẩn Helm v3.
- File Chart.yaml khai báo thông tin gói dịch vụ, phiên bản ứng dụng và apiVersion.
- File values.yaml chứa toàn bộ giá trị cấu hình mặc định được phân loại rõ ràng và tham số hóa triệt để.
- Bộ tệp template YAML hoàn chỉnh cho Deployment, Service, Ingress, ConfigMap và ServiceAccount.
- File _helpers.tpl chứa các hàm template phụ trợ để quản lý nhãn (labels) và tên tài nguyên thống nhất.
- Hướng dẫn các câu lệnh Helm CLI thực tế để kiểm tra, đóng gói, cài đặt, nâng cấp và khôi phục ứng dụng.
3. QUY TRÌNH THỰC HIỆN CHI TIẾT
- Bước 1: Phân tích các thông tin tham số đầu vào và xác định cấu trúc tài nguyên Kubernetes cần thiết cho ứng dụng.
- Bước 2: Dựng sơ đồ thư mục dự án Helm Chart trực quan.
- Bước 3: Viết file Chart.yaml khai báo đầy đủ các thuộc tính metadata bao gồm name, description, type, version và appVersion.
- Bước 4: Xây dựng file values.yaml tổng hợp, tách biệt rõ ràng các nhóm cấu hình (replicaCount, image, service, ingress, resources, autoscaling, env).
- Bước 5: Tạo file _helpers.tpl định nghĩa các tên gọi và nhãn chung như chart.fullname, chart.name, chart.labels và chart.selectorLabels.
- Bước 6: Phát triển chi tiết từng file template trong thư mục templates/, áp dụng các hàm Go template của Helm để liên kết chính xác với values.yaml.
- Bước 7: Tổng hợp danh sách câu lệnh Helm CLI tiêu chuẩn để Linting, Dry-run, Install, Upgrade và Rollback.
4. YÊU CẦU CHẤT LƯỢNG VÀ RÀNG BUỘC KỸ THUẬT
- Tất cả thuộc tính có khả năng thay đổi theo môi trường phải được đưa vào values.yaml, tuyệt đối không hardcode giá trị cố định trong thư mục templates.
- Cấu hình livenessProbe và readinessProbe phải được thiết lập dựa trên cổng dịch vụ được cung cấp.
- Đảm bảo tính linh hoạt bằng việc sử dụng các câu lệnh điều kiện (if/else) trong template để bật/tắt các tính năng như Ingress hoặc HPA qua biến boolean.
- Cấu trúc tệp YAML phải tuân thủ nghiêm ngặt định dạng cú pháp Kubernetes API v1.20 trở lên.
- Cung cấp các chú thích ngắn gọn bằng tiếng Việt cho từng khối biến quan trọng trong file values.yaml.
5. ĐỊNH DẠNG ĐẦU RA YÊU CẦU
Trả về câu trả lời được phân chia thành 5 phần rõ ràng:
- Phần 1: Sơ đồ cấu trúc thư mục Helm Chart (dạng cây thư mục văn bản).
- Phần 2: Nội dung các file cấu hình cốt lõi (Chart.yaml, values.yaml, _helpers.tpl).
- Phần 3: Nội dung các file Kubernetes Templates (deployment.yaml, service.yaml, ingress.yaml, configmap.yaml).
- Phần 4: Danh sách câu lệnh thực thi Helm CLI kèm chú giải ngắn gọn.
- Phần 5: Ghi chú bảo mật và hướng dẫn tùy biến cấu hình cho từng môi trường Dev/Staging/Prod.
6. TIÊU CHÍ TỰ KIỂM TRA TRƯỚC KHI TRẢ LỜI
- Đã trích xuất và tích hợp chính xác các biến {{ten_ung_dung}}, {{hinh_anh_container}}, {{cong_dich_vu}}, {{loai_dich_vu}}, {{ten_mien_ingress}}, {{yeu_cau_tai_nguyen}}, {{so_luong_pod}} vào cấu hình chưa?
- Tất cả cú pháp Go template (.Values, .Release, include) trong các file YAML có hợp lệ và đồng nhất không?
- Các Selector và Label giữa Deployment, Service và Ingress có đảm bảo kết nối chính xác với nhau không?
- Lệnh Helm CLI được cung cấp có đúng cú pháp và có thể chạy trực tiếp trên terminal hay không?
Mô hình đã kiểm thử
Claude
GPT
Thẻ
Helm
Kubernetes
DevOps
Prompt cùng lĩnh vực
Lập trình
Miễn phí
4.7 · 1.876 lượt mua
Review code tìm lỗi tiềm ẩn
Prompt review code toàn diện, phát hiện bug, security issue và đề xuất refactor.
Code review
Refactor
Clean code
Lập trình
Miễn phí
4.8 · 2.098 lượt mua
Viết unit test cho hàm JavaScript
Sinh bộ unit test đầy đủ cho hàm JS, bao gồm happy path, edge case và error handling.
Unit test
JavaScript
Jest
Lập trình
Miễn phí
4.6 · 1.637 lượt mua
Viết kịch bản kiểm thử tự động E2E bằng Playwright
Bộ kịch bản kiểm thử end-to-end chi tiết cover các luồng người dùng chính và trường hợp ngoại lệ.
Playwright
E2E Testing
TypeScript