Khóa Học Lên Trình BackEnd Dev Với Kỹ Năng DevOps
02 tháng 3
Published
01 tháng 9
Khoá học DevOps for Backend Developer được xây dựng dựa trên nhu cầu thiết thực từ các công ty lớn, sở hữu hệ thống microservices chịu tải cao.
Lộ trình khoá học được xây dựng trên một lộ trình tutorial từ các source code backend (Go và Node), frontend (React). Các học viên sẽ được trải nghiệm từng bước triển khai các công cụ thông dụng trong DevOps để triển khai và vận hành các service một cách hiệu quả nhất.
- Docker & Kubernetes (k8s) on AWS.
- Fluentd (Log collector).
- Monitoring (Grafana + Prometheus).
- CI & CD.
- Logging (Grafana Loki).
Nội dung khóa học
1. Giới thiệu khoá học và làm quen 1hr 40m
2. Giới thiệu Docker 1hr 38m
3. Thực hành Docker 1hr 55m
4. Thực hành Dockerfile (p1) 1hr 50m
5. Dockerfile (p2) & cách sử dụng Dockerfile hiệu quả 2hr 9m
6. Cấu hình Nginx và Host Docker Registry 1hr 49m
7. Tìm hiểu Docker Compose và thực hành (p1) 1hr 56m
8. Thực hành Docker Compose (p2) và Tìm hiểu về Kubernetes 1hr 47m
9. Thực hành setup Kubernetes Cluster 2hr
10. Tìm hiểu YAML trong Kubernetes 1hr 45m
11. Tìm hiểu và thực hành POD 1hr 43m
12. Tìm hiểu và thực hành Pod, Namespace, Label 1hr 50m
13. Thực hành ClusterIP Service 1hr 44m
14. Thực hành NodePort, Load Balancer và Headless Service 1hr 55m
15. Thực hành ExternalName và Ingress Service 1hr 58m
16. Tìm hiểu và thực hành Replication Controller, ReplicaSet, Deployment và HPA (p1) 1hr 51m
17. Thực hành Horizontal Pod Autoscaler (HPA) 1hr 32m
18. Thực hành StatefulSet, DaemonSet, Job và CronJob 1hr 55m
19. Thực hành Volume 1hr 36m
20. Thực hành RBAC và tìm hiểu về CI/CD 2hr 1m
21. Thực hành setup CI/CD 1hr 52m
22. Setup Monitoring và Logging 2hr 45m
23. Setup Kubernetes on Cloud (AWS) 1hr 2m
Đối tượng khoá học
- Bạn là Backend Developer muốn tiến lên vị trí DevOps.
- Bạn là sysadmin muốn tìm hiểu DevOps.
- Những bạn đang là Software Engineer, Developer ở các lĩnh vực khác.
Lưu ý: khoá học hiện tại không phù hợp với những bạn mới bắt đầu lập trình.
Chương trình học DevOps
TOPIC 1: ĐỊNH HƯỚNG & CHIA SẺ VỀ DEVOPS
- Tổng quan về DevOps.
- Định hướng, mục tiêu phát triển trong ngành.
- Các công việc hằng ngày của một DevOps.
- Cơ hội nghề nghiệp, tiềm năng phát triển hiện tại và tương lai.
- Chia sẻ kinh nghiệm thực tế khi làm DevOps.
TOPIC 2: DOCKER CƠ BẢN ĐẾN NÂNG CAO
- Tìm hiểu các thành phần quan trọng của Docker: Container, Image, Network, Volume, Docker Registry.
- Sử dụng Container để khởi tạo service.
- Tạo Image từ Container.
- Automation để tạo image từ Dockerfile.
- Backup và migrate data của service.
- Chia sẻ và dùng lại container image.
- Practice: Deploy source Backend (Golang, Nodejs) & Frontend (Reactjs).
- Practice: Thiết lập Network để Frontend và Backend có thể giao tiếp với nhau.
- Practice: Sử dụng volume để backup data.
- Practice: Từ Container Frontend và Backend đã thiết lập trước đó, tạo thành Image.
TOPIC 3: DOCKER COMPOSE
- Tìm hiểu về Docker Compose và các câu lệnh cơ bản.
- Thiết lập các service trong file Docker Compose.
- Sử dụng câu lệnh để build và run các service.
- Practice: Thiết lập file Docker Compose từ source Frontend và Backend đã có.
- Practice: Sử dụng câu lệnh Docker Compose để chạy nhiều Container cùng một thời điểm.
TOPIC 4: PROMETHEUS & GRAFANA: MONITORING & THEO DÕI METRIC
- Thiết lập và cài đặt Prometheus, Grafana.
- Cấu hình Scrape cho Prometheus để collect metrics từ các Node Exporter.
- Tìm hiểu các câu Query trong Grafana và sử dụng để Query Metrics từ Prometheus và build Dashboard để Monitor.
- Practice: sử dụng Docker để chạy Prometheus, Grafana và khởi tạo các file config.
- Practice: chạy Node Exporter, Database Exporter để tạo metrics service và database từ Docker.
- Practice: sử dụng Docker chạy Node Exporter, Database Exporter để tạo metrics cho service và database.
- Practice: cài đặt Prometheus để Collector Metrics từ các service đang expose.
- Practice: sử dụng Grafana để query metrics và hiển thị trên UI.
TOPIC 5: FLUENTD: LOG COLLECTOR
- Thiết lập và cài đặt EFK (Elasticsearch, Fluentd và Kibana).
- Sử dụng Fluentd để Collector Log từ các service và gửi về Elasticsearch.
- Query từ Elasticsearch và Data Visualization trên Kibana.
- Trace Log Real Time từ Kibana.
- Practice: Sử dụng Docker để tạo container: Fluentd, Elasticsearch và Kibana.
TOPIC 6: CI/CD - GITHUB ACTION
- Tìm hiểu về GitHooks.
- Thiết lập và cài đặt Jenkins.
- Kết nối Jenkins và GitHooks để thiết lập CI/CD
- Define Pipeline bằng Jenkinsfile.
- Thiết lập Agent và kết nối với Jenkins.
- Thiết lập Multiple Stages & Steps trong Pipeline.
- Run Build & Unit Test & Deploy source code.
- Practice: sử dụng Docker để setup Jenkins.
- Practice: thiết lập connection giữa Jenkins và Githook để trigger event.
- Practice: tạo script trên Jenkins để build và deploy sourcecode khi commit lên Git.
TOPIC 7: Kubernestes
- Kiến trúc và các thành phần quan trọng của Kubernestes: Node, Cluster, Pod, Service, Deployment, RBAC,…
- Thiết lập, phân quyền truy cập của User bằng RBAC.
- Sử dụng Docker để tạo Node, kết nối Cluster. Sử dụng Pod để tạo service.
- Automation Deployment & Scalability dựa trên traffic của service.
- Backup & Restore data hệ thống.
- Practice: cài đặt Minikube để sử dụng K8s trên local machine. Sử dụng Docker tạo Node và kết nối với Cluster.
- Practice: tạo và giả lập môi trường Dev, Staging.
- Practice: phân quyền truy cập môi trường và deploy.
- Practice: sử dụng Pod để khởi tạo service từ source FE và BE đã có.
- Practice: tìm hiểu và sử dụng YAML để run Pod, Deployment,... Thiết lập network để giao tiếp giữa FE và BE.
TOPIC 8: Kubernetes on Cloud
- Sử dụng IAM của AWS để phân quyền truy cập.
- Tìm hiểu các bước để thiết lập và sử dụng Kubernetes on Cloud.
- Sử dụng các công cụ Cloud hỗ trợ để Monitor hệ thống.
- Thiết lập Multiple Environment on Cloud.
- Build & Deploy service lên Cloud.
- Practice: tìm hiểu và sử dụng AWS.
- Practice: thiết lập IAM (Identity and Access Management) để phân quyền.
- Practice: thiết lập Kubernetes trên AWS.
- Practice: sử dụng CRUD bằng AWS CLI để thiết lập các thành phần cần thiết của Kubernetes (Cluster, Node, …)
- Practice: monitoring System thông qua Dashboard AWS cung cấp.
Bạn sẽ nhận được những gì?
- 44 giờ học qua video
- Slide, tài liệu, Ebook & demo trong khoá học.
- Các script, configuration files trong khoá học.