Fundamentals
- DevOps là một phương pháp phát triển phần mềm và quản lý hệ thống, nhằm thúc đẩy sự hợp tác giữa các nhóm phát triển (Development) và quản lý / vận hành hệ thống (Operations). Tên gọi "'DevOps" là sự kết hợp của hai từ: "Dev" trong Development và "Ops" trong Operations.
- Mục tiêu của DevOps là cải thiện quy trình phát triển và triển khai phần mềm, để tạo ra các sản phẩm và dịch vụ có chất lượng cao, đáng tin cậy và có khả năng điều chỉnh nhanh chóng để đáp ứng nhu cầu thay đối của khách hàng.
- DevOps giúp giảm thời gian và rủi ro trong việc triển khai phân mêm, tăng cường sự linh hoạt và phản hồi nhanh chóng, và tạo ra môi trường làm việc tích hợp giữa các nhóm khác nhau để đạt được mục tiêu kinh doanh một cách hiệu quả hơn.

Các nguyên tắc của DevOps
- Tự động hóa quy trình phát triển, kiểm thử, triển khai, và quản lý hệ thống để giảm thiểu sự can thiệp thủ công và lỗi nhân tạo (human misstake).
- Tích hợp liên tục (Continuous Integration - CI): Tích hợp liên tục mã nguồn từ nhiều nguồn khác nhau và test tự động để đảm bảo tính ổn định của ứng dụng. 3.Triển khai liên tục (Continuous Deployment - CD): Tự động triển khai các phiên bản mới của ứng dụng vào môi trường một cách tự động và an toàn.
- Theo dõi và phản hồi (Monitoring and Feedback): Theo dõi sự hoạt động của ứng dụng và hệ thống thời gian thực để phát hiện và khắc phục lỗi nhanh chóng.
- Tự phục vụ (Self-service): Cung cấp các công cụ cho các nhóm phát triển (Dev) và vận hành (Operation) để họ có thể làm việc một cách độc lập và hiệu quả.
CI/CD là viết tắt của Continuous Integration và Continuous Deployment (Hoặc Continuous Delivery), đây là một phương pháp quy trình phát triển phần mềm để tạo và triển khai ứng dụng một cách tự động và liên tục. Đây là một trong những phần quan trọng của quy trình phát triển phần mềm hiện đại và giúp tối ưu hóa quy trình phát triển, kiểm tra, và triển khai phần mềm.


Vai trò của DevOps và DevOps engineer trong dự án
- Tự động hóa quy trình: chịu trách nhiệm thiết lập và duy trì các công cụ và quy trình tự động hóa. Bao gôm việc xây dựng infra tự động (laC), Automation test, CI/CD pipelines.
- Quán lý hệ thống và môi trường: DevOps engineer giám sát, quán lý và tối ưu hóa hệ thông và môi trường làm việc. Điều này bao gôm việc cầu hình và triên khai Server, DB, và đám báo tính săn sàng và bảo mật của hệ thống.
- Tich hir ion te và cuttimatus tetse rá dam, xào đing nà dịn trừ hệng dig lite gration liên tục để kiếm
- Triển khai liên tục (Continuous Deployment): xây dựng và duy trì quy trình tự động để triển khai phiên bản mới của ứng dụng vào các môi trường (Test, Staging, Production).
- Bảo mật và giám sát: DevOps engineer thực hiện các biện pháp bảo mật để bảo vệ hệ thống và dữ liệu. Họ cũng xây dựng hệ thông Monitoring đê theo dõi hiệu suất và sự hoạt động cúa ứng dụng, đồng thời cảnh báo về các sự cố.
- Hỗ trợ và sửa lỗi: Khi có sự cố hoặc lỗi xảy ra trong quá trình triển khai hoặc vận hành, DevOps engineer thường chịu trách nhiệm tìm ra nguyên nhân và sửa chữa chúng một cách nhanh chóng.


Trang bị kiến thức thành Devops.
• Cloud Computing (AWS, Azure, GCP...) • Operating System (Windows Server, Linux, Redhat, CentOS) • Version Control System (Github, Gitlab, Bitbucket) • Project management tool (Jira, Trello) • Networking, Database, Security & other Cloud's managed services • Automation and CICD tools (Terraform, Ansigle, Jenkins, GitlabCl, Github Cl, Code Pipeline, CircleCl...) • Framework (Angular, Nodejs, Spring Boot, NET, ...) • Docker and Kubernetes • Monitoring, Alert and Notification tools (Prometheus, Grafana, ELK, Splunk, ...)







monitoring



