ĐẠI HC KINH T QUC DÂN
TRƯỜNG CÔNG NGH
----------------
KHÓA LUN TT NGHIP
ĐỀ TÀI: NGHIÊN CU VÀ XÂY DNG GII PHÁP DEVOPS
TRONG PHÁT TRIN PHN MM: ÁP DNG VI BÀI
TOÁN CÂN BNG TI VÀ TÍCH HP TRIN KHAI T
ĐỘNG CI/CD CA H THNG QUN LÝ KT NI GIA SƯ
TUTOR-CONNECT
Tên sinh viên
:
Nguyn Huy Bách
Giảng viên hướng dn
:
ThS. Tng Th Minh Ngc
Hà Ni, 11/2024
2024.1 KHOA HC MÁY TÍNH NGUYN HUY BÁCH 11218390
ĐẠI HC KINH T QUC DÂN
TRƯỜNG CÔNG NGH
----------------
KHÓA LUN TT NGHIP
ĐỀ TÀI: NGHIÊN CU VÀ XÂY DNG GII PHÁP DEVOPS
TRONG PHÁT TRIN PHN MM: ÁP DNG VI BÀI TOÁN
CÂN BNG TI VÀ TÍCH HP TRIN KHAI T ĐỘNG CI/CD
CA H THNG QUN LÝ KT NI GIA SƯ TUTOR-CONNECT
Tên sinh viên
:
Nguyn Huy Bách
Mã sinh viên
:
11218390
Lp
:
Khoa hc máy tính 63
Ngành
:
Khoa hc máy tính
Khoa
:
Công ngh thông tin
Giảng viên hướng dn
:
ThS. Tng Th Minh Ngc
(Ch ký GVHD)
Hà Ni, 11/2024
MC LC
MC LC .............................................................................................................. i
LỜI CAM ĐOAN ................................................................................................ iii
DANH MC CÁC T VIT TT .................................................................... iv
DANH MC CÁC THUT NG ..................................................................... vi
DANH MC BNG ............................................................................................ ix
DANH MC HÌNH .............................................................................................. x
LI M ĐẦU ....................................................................................................... 1
CHƯƠNG 1. GII THIU TNG QUAN V ĐỀ TÀI .................................. 2
1.1. Gii thiu tng quan v đề tài ...................................................................... 2
1.2. Gii pháp nghiên cu và s dng ................................................................ 4
CHƯƠNG 2. CƠ S LÍ THUYT ................................................................... 17
2.1. Cụm có độ sn sàng cao ............................................................................. 17
2.2. Công c qun lí mã ngun và Git .............................................................. 19
2.3. H thng qun lý phiên bn phân tán Git .................................................. 20
2.4. Nn tng qun lí mã ngun Github ............................................................ 21
2.5. Kho lưu trữ image công cng DockerHub ................................................. 22
2.6. Công c điều phi container Kubernetes ................................................... 23
2.7. Công c GUI qun lý cm K8s Rancher ................................................... 36
2.8. Công c tích hp và trin khai liên tc Jenkins ......................................... 36
2.9. B công c giám sát Prometheus và Grafana ............................................ 38
2.10. Công c quét l hng mã ngun SonarQube ........................................... 41
2.11. Công c cân bng ti cm K8s MetalLB ................................................. 42
2.12. Nn tng qun lý dch v service mesh Istio ........................................... 42
CHƯƠNG 3. PHÂN TÍCH THIẾT K PHN MM KT NỐI GIA
TUTOR-CONNECT .......................................................................................... 44
3.1. Xác định và phân tích yêu cu phn mm ................................................. 44
ii
3.2. Kết qu mô hình hóa .................................................................................. 45
3.3. Thiết kế chương trình ................................................................................. 55
3.4. Thiết kế h thng ....................................................................................... 61
3.5. Trin khai phn mm ................................................................................. 78
CHƯƠNG 4. THIT K GII PHÁP DEVOPS TRONG PHÁT TRIN
PHN MM ....................................................................................................... 79
4.1. Bài toán đặt ra ............................................................................................ 79
4.2. Phân tích bài toán và đưa ra kiến trúc tng quan ca gii pháp ................ 79
4.3. Thành phn cu trúc h thng theo công ngh s dng ............................ 82
4.4. Quy trình làm vic tng quan ca c h thng .......................................... 83
4.5. Quy trình tích hp liên tc ......................................................................... 84
4.6. Quy trình trin khai liên tc ....................................................................... 85
4.7. Giám sát sau trin khai liên tc .................................................................. 86
4.8. Cân bng ti HPA cho cm K8s ................................................................ 87
CHƯƠNG 5. ÁP DỤNG GII PHÁP DEVOPS H TR PHÁT TRIN
PHN MM WEBSITE TUTOR-CONNECT ............................................... 90
5.1. Chun b h thng áp dng gii pháp DevOps .......................................... 90
5.2. Đặt ra bài toán thc tế trin khai ................................................................ 94
5.3. Áp dng gii pháp DevOps vi ng dng web qun lý kết nối gia tutor-
service ............................................................................................................... 95
5.4. So sánh gii pháp trin khai DevOps vi gii pháp truyn thng ........... 106
5.5. Đánh giá việc s dng gii pháp DevOps trong phát trin phn mm .... 107
KT LUN ....................................................................................................... 108
TÀI LIU THAM KHO ............................................................................... 109
iii
LỜI CAM ĐOAN
Tôi xin cam đoan đ tài: “Nghiên cu và xây dng gii pháp DevOps trong
phát trin phn mm: Áp dng vi bài toán cân bng ti và tích hp trin khai t
động CI/CD ca h thng qun kết nối gia Tutor-Connect” công trình
nghiên cứu độc lp ca nhân tôi trong thi gian qua chưa từng được công
b trong bt c công trình nghiên cu nào khác. Mi thông tin và s liu s dng
trong khoá luận đều được tôi tìm hiu, thu thp mt cách khách quan trung
thc.
Tôi xin hoàn toàn chu trách nhim v đề tài nghiên cu ca mình!
Ni, ngày tháng năm 2024
Sinh viên
(ký, ghi rõ hn)