
DỰ ÁN CUỐI KHÓA
Đồ án tốt nghiệp là học phần tổng kết quan trọng trong chương trình đào tạo Kỹ sư DevOps, nơi học viên vận dụng toàn bộ kiến thức và kỹ năng đã học để giải quyết một bài toán thực tế. Đây không chỉ là một yêu cầu học thuật, mà còn là cơ hội để chứng minh năng lực thông qua việc thiết kế, triển khai và vận hành một hệ thống hoàn chỉnh, từ khâu hình thành ý tưởng cho đến chạy trên môi trường thực tế.
Trọng tâm của dự án nằm ở việc xây dựng pipeline CI/CD tự động, tích hợp các nguyên lý cốt lõi của DevOps như Hạ tầng dưới dạng mã (Infrastructure as Code), giám sát hệ thống và bảo mật. Học viên sẽ làm việc với những công cụ hiện đại và phổ biến nhất trong ngành, qua đó tạo ra một sản phẩm mang giá trị thực tiễn cao, vừa đảm bảo hiệu quả vừa duy trì sự ổn định và an toàn trong toàn bộ vòng đời ứng dụng.
Đây không chỉ là bài kiểm tra năng lực cuối cùng mà còn là sản phẩm portfolio ấn tượng trong hồ sơ nghề nghiệp. Việc hoàn thành đồ án tốt nghiệp khẳng định học viên đã sẵn sàng đảm nhận vai trò Kỹ sư DevOps chuyên nghiệp, đáp ứng yêu cầu khắt khe của môi trường làm việc hiện đại.
Thời lượng: 30h

KẾT QUẢ ĐẠT ĐƯỢC

Xây dựng hệ thống CI/CD tự động hoàn chỉnh
Vận hành pipeline tự động hóa toàn diện từ build, test đến deploy ứng dụng, đảm bảo quy trình phát triển phần mềm liền mạch và hiệu quả.

Vận hành hạ tầng linh hoạt với IaC
Sử dụng Terraform và Ansible để tự động hóa việc cấp phát, quản lý và cấu hình toàn bộ hạ tầng, tăng tốc độ triển khai và giảm thiểu lỗi.

Giám sát chủ động và tối ưu hiệu suất
Xây dựng dashboard và hệ thống cảnh báo để chủ động theo dõi sức khỏe, hiệu suất ứng dụng, đảm bảo hệ thống hoạt động ổn định và tin cậy.

Tích hợp bảo mật liền mạch vào quy trình
Áp dụng các nguyên tắc DevSecOps, tích hợp công cụ quét bảo mật tự động và quản lý an toàn thông tin nhạy cảm trong suốt vòng đời phát triển.

Hoàn thiện dự án portfolio chuyên nghiệp
Xây dựng tài liệu kiến trúc rõ ràng, tự tin trình bày và demo hệ thống, chứng minh năng lực và kinh nghiệm thực chiến với nhà tuyển dụng.


Yêu cầu tiên quyết:
-
- Kiến thức vững chắc về Git, CI/CD (Jenkins/GitHub Actions), Docker, và Kubernetes.
- Kinh nghiệm thực hành với IaC (Terraform và Ansible).
- Hiểu biết về các công cụ giám sát (Prometheus, Grafana) và quản lý log.
- Nắm vững các khái niệm bảo mật cơ bản và công cụ quét tự động trong DevSecOps.
- Có kiến thức về một nền tảng cloud (AWS) là một lợi thế.
Nội dung khóa học
1. Khởi tạo và Thiết kế Kiến trúc Dự án
-
- Phân tích yêu cầu và lựa chọn công nghệ:
- Xác định ứng dụng (Web/API) và các yêu cầu phi chức năng.
- Lựa chọn nền tảng triển khai (On-premise/Cloud – AWS, GCP, Azure).
- Phân tích và lựa chọn các công cụ phù hợp cho hệ thống.
- Thiết kế kiến trúc hệ thống:
- Vẽ sơ đồ kiến trúc tổng thể (High-Level Design).
- Thiết kế chi tiết hạ tầng mạng, máy chủ và luồng CI/CD.
- Lên kế hoạch tích hợp các thành phần giám sát và bảo mật.
- Lập kế hoạch và quản lý dự án
- Phân chia dự án thành các giai đoạn (milestones) và công việc cụ thể.
- Thiết lập môi trường làm việc và repository Git.
- Phân tích yêu cầu và lựa chọn công nghệ:
2. Tự động hóa Hạ tầng với Infrastructure as Code (IaC)
-
- Nguyên lý và kiến trúc của IaC:
- Tổng quan về IaC và vai trò trong quy trình DevOps.
- So sánh mô hình Khai báo (Declarative) và Mệnh lệnh (Imperative).
- Giới thiệu hệ sinh thái công cụ: Terraform, Ansible, CloudFormation.
- Triển khai tài nguyên hạ tầng với Terraform:
- Viết mã Terraform để cấp phát tài nguyên mạng (VPC, Subnet, Security Group).
- Tự động hóa việc tạo máy chủ (EC2, VM) và các dịch vụ liên quan.
- Quản lý trạng thái (state) và vòng đời của hạ tầng.
- Tự động hóa cấu hình với Ansible:
- Viết Playbook để cài đặt phần mềm (web server, database, runtime).
- Sử dụng Roles để tái sử dụng và quản lý cấu hình một cách hiệu quả.
- Cấu hình Load Balancer hoặc Reverse Proxy (Nginx, Traefik).
- Nguyên lý và kiến trúc của IaC:
3. Xây dựng Pipeline CI/CD Toàn diện
-
- Thiết lập và cấu hình máy chủ CI/CD:
- Lựa chọn công cụ: Jenkins, GitHub Actions, GitLab CI.
- Cài đặt và cấu hình agent, executor và các plugin cần thiết.
- Xây dựng pipeline Tích hợp Liên tục (CI):
- Viết mã pipeline (Jenkinsfile/GitHub Actions workflow).
- Tích hợp các giai đoạn: build source code, chạy unit test, phân tích mã tĩnh.
- Đóng gói ứng dụng thành Docker image và đẩy lên registry (Docker Hub, ECR).
- Tự động hóa Triển khai Liên tục (CD):
- Thiết kế chiến lược triển khai (Rolling, Blue-Green).
- Tự động hóa việc triển khai ứng dụng lên các môi trường (Dev, Staging, Prod).
- Tích hợp cơ chế rollback tự động khi có lỗi xảy ra.
- Thiết lập và cấu hình máy chủ CI/CD:
4. Giám sát, Quan sát và Quản lý Log
-
- Thu thập và giám sát metrics hệ thống:
- Triển khai Prometheus và các exporter cần thiết (Node Exporter, cAdvisor).
- Cấu hình thu thập metrics từ ứng dụng và hạ tầng.
- Xây dựng hệ thống quản lý log tập trung:
- Triển khai và cấu hình Loki, Promtail hoặc ELK Stack (Elasticsearch, Logstash, Kibana).
- Thiết lập luồng thu thập log từ ứng dụng và các thành phần hệ thống.
- Trực quan hóa dữ liệu và thiết lập cảnh báo
- Xây dựng dashboard trên Grafana/Kibana để trực quan hóa metrics và log.
- Cấu hình Alertmanager để gửi cảnh báo chủ động qua email, Slack.
- Thu thập và giám sát metrics hệ thống:
5. Tích hợp Bảo mật (DevSecOps)
-
- Nguyên tắc và công cụ bảo mật tự động:
- Tích hợp công cụ quét mã nguồn (SAST – SonarQube) vào pipeline.
- Tích hợp công cụ quét lỗ hổng thư viện (SCA – Trivy, Snyk).
- Tự động hóa việc quét bảo mật Docker image.
- Quản lý an toàn thông tin nhạy cảm:
- Sử dụng credentials manager (Jenkins Credentials, GitHub Secrets).
- Mã hóa dữ liệu nhạy cảm với Ansible Vault hoặc HashiCorp Vault.
- Cấu hình bảo mật hạ tầng
- Thiết lập và kiểm tra các quy tắc tường lửa (Security Groups, Firewall Rules).
- Áp dụng nguyên tắc đặc quyền tối thiểu (Least Privilege) cho các tài khoản dịch vụ.
- Nguyên tắc và công cụ bảo mật tự động:
6. Hoàn thiện Tài liệu và Báo cáo đồ án
-
- Xây dựng tài liệu kỹ thuật:
- Viết tài liệu README.md chi tiết về kiến trúc hệ thống.
- Cung cấp hướng dẫn từng bước để cài đặt và triển khai dự án.
- Chuẩn bị và thực hành demo:
- Xây dựng kịch bản demo các tính năng chính của hệ thống CI/CD.
- Chuẩn bị dữ liệu và môi trường để trình bày một cách suôn sẻ.
- Trình bày và bảo vệ đồ án cuối khóa:
- Trình bày tổng quan về dự án, kiến trúc và các quyết định kỹ thuật.
- Demo trực tiếp hệ thống và trả lời câu hỏi từ hội đồng.
- Xây dựng tài liệu kỹ thuật:

Bài viết liên quan
