NGHIÊN CỨU VÀ TRIỂN KHAI CÔNG NGHỆ AUTOSCALING TRÊN NỀN TẢNG KUBERNETES

82 83 2
NGHIÊN CỨU VÀ TRIỂN KHAI CÔNG NGHỆ  AUTOSCALING TRÊN NỀN TẢNG KUBERNETES

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đồ Án Tốt Nghiệp về NGHIÊN CỨU VÀ TRIỂN KHAI CÔNG NGHỆ AUTOSCALING TRÊN NỀN TẢNG KUBERNETES Chương này sẽ trình bày về kiến trúc, chức năng của Kubernetes và các khái niệm trong Kubernetes. Đây là các kiến thức nền tảng của Kubernetes, giúp chúng ta hiểu các bộ phận cấu thành và cách làm việc của Kubernetes.

BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ NÔNG NGHIỆP VÀ PTNT TRƯỜNG ĐẠI HỌC THỦY LỢI HỌ VÀ TÊN: NGHIÊN CỨU VÀ TRIỂN KHAI CÔNG NGHỆ AUTOSCALING TRÊN NỀN TẢNG KUBERNETES ĐỒ ÁN TỐT NGHIỆP HÀ NỘI, NĂM 2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ NÔNG NGHIỆP VÀ PTNT TRƯỜNG ĐẠI HỌC THỦY LỢI HỌ VÀ TÊN: NGHIÊN CỨU VÀ TRIỂN KHAI CÔNG NGHỆ AUTOSCALING TRÊN NỀN TẢNG KUBERNETES Ngành : Công nghệ thông tin Mã số: 7480201 NGƯỜI HƯỚNG DẪN TS HÀ NỘI, NĂM 2023 LỜI CAM ĐOAN Tác giả xin cam đoan Đồ án tốt nghiệp/ Khóa luận tốt nghiệp thân tác giả Các kết Đồ án tốt nghiệp/Khóa luận tốt nghiệp trung thực, không chép từ nguồn hình thức Việc tham khảo nguồn tài liệu (nếu có) thực trích dẫn ghi nguồn tài liệu tham khảo quy định Tác giả ĐATN/KLTN i LỜI CÁM ƠN Sau năm học tập khoa Công nghệ thông tin trường Đại học Thủy Lợi, em nhận bảo giúp đỡ thầy cô giáo bạn nhiều lĩnh vực học tập sống Đầu tiên, em xin chân thành cảm ơn thầy cô giáo Trường Đại học Thủy Lợi đặc biệt thầy cô giáo khoa Công nghệ thông tin dạy cho em có kiến thức để phục vụ cho việc thực đồ án Đặc biệt, 14 tuần làm đồ án, em hướng dẫn nhiệt tình Tiến sĩ, Giảng viên BM Kỹ thuật Máy tính Mạng Đỗ Trường Xuân, với thầy cô giáo Khoa Công Nghệ thông tin Tiến sĩ Em xin gửi lời cảm ơn chân thành tới thầy cô giúp đỡ, bổ sung cho em kiến thức, cho em lời khuyên góp ý để em hồn thành đồ án cách nhanh chóng hiệu Trong suốt thời gian học tập hoàn thành đồ án em may mắn thầy bảo, dìu dắt gia đình bạn bè quan tâm, động viên bên cạnh tạo điều kiện thuận lợi em hồn thành đồ án Trong suốt trình làm đồ án với đề tài “Nghiên cứu triển khai công nghệ autoscaling tảng kubernetes”, em cố gắng để xây dựng hồn thiện cơng cụ cách tốt nhất, kiến thức hạn chế, thời gian làm đồ án có hạn kinh nghiệm thực tế chưa có nên khơng thể tránh sai sót Vì em mong nhận thơng cảm thầy cô giáo bạn Em mong nhận góp ý thầy cô bạn để ứng dụng em trở nên hoàn thiện Một lần nữa, em xin chân thành cảm ơn thầy cô giáo, bạn bè gia đình giúp đỡ em suốt thời gian qua Em xin chân thành cảm ơn! ii MỤC LỤC DANH MỤC CÁC HÌNH ẢNH v DANH MỤC BẢNG BIỂU vi DANH MỤC CÁC TỪ VIẾT TẮT VÀ GIẢI THÍCH CÁC THUẬT NGỮ vii CHƯƠNG GIỚI THIỆU 1.1 Tổng quan điện toán đám mây 1.1.1 Điện tốn đám mây gì? .1 1.1.2 Những lợi ích “Điện tốn đám mây 1.1.3 Các công nghệ ảo hóa .3 1.2 Sự khác biệt VM(Virtual machine) Container 1.2.1 Virtual machine gì? 1.2.2 Container gì? 1.2.3 So sánh VM Container .7 1.3 Các tảng quản lý container .8 1.3.1 Kubernetes 1.3.2 Docker 1.3.3 Mesos 1.4 Tổng quan Autoscaling 10 1.4.1 Auto Scaling gì? .10 1.4.2 Lợi ích Autoscaling 10 1.4.3 Các phương thức Scaling 11 1.4.4 Những tham số đầu vào để thực AutoScaling 13 CHƯƠNG KIẾN TRÚC KUBERNETES 14 2.1 Chức Kubernetes 14 2.2 Kiến trúc Kubernetes 18 2.2.1 Master Node 19 2.2.2 Worker Node 20 2.3 Các khái niệm Kubernetes 21 2.3.1 Pod 21 2.3.2 Node 22 2.3.3 Service (svc) 23 iii 2.3.4 Deployment ReplicaSet 25 2.3.5 Label Selector Kubernetes 26 2.3.6 NameSpace 26 CHƯƠNG GIẢI PHÁP AUTOSCALING 27 3.1 Horizontal Autoscaling 27 3.1.1 Quá trình Autoscaling 28 3.1.2 Thu thập metrics 28 3.1.3 Tính tốn số lượng Pod cần thiết 29 3.1.4 Cập nhật trường replicas .31 3.1.5 Scale theo số .32 3.1.6 Quản lý Pod Autoscaling 38 3.2 Vertical Autoscaling 52 3.2.1 Các thành phần VPA 53 3.2.2 Update Policy 54 3.2.3 Thuật toán .55 3.3 Multidimensional Autoscaling 56 CHƯƠNG CẤU HÌNH VÀ DEMO 59 4.1 Kịch triển khai 59 4.2 Triển khai hạ tầng 64 4.2.1 Triển khai cụm 64 4.2.2 Triển khai ứng dụng .64 4.3 Triển khai giải pháp Autoscaling 65 4.3.1 Triển khai Horizontal Pod Autoscaling 65 4.3.2 Triển khai Vertical Pod Autoscaling 68 iv DANH MỤC CÁC HÌNH ẢNH Hình 2.1: Các Load Balancing thực tăng giảm số lượng Replicas .14 Hình 2.2: Các container điều phối tự động 15 Hình 2.3: K8s tự động phân tỷ lệ Kubernetes cluster .16 Hình 2.4: Self-healing giúp tự động khơi phục service node xảy lỗi 17 Hình 2.5: Sử dụng container image kiến trúc microservices 18 Hình 2.6: Kiến trúc Kubernetes .18 Hình 2.7: Pod Kubernetes 22 Hình 2.8: Node Kubernetes 23 Hình 2.9: Service Pod Kubernetes 24 Hình 2.10: Mơ hình Deployment ReplicaSet 25 Hình 2.11: Mối quan hệ Deployment, ReplicaSet Pod Kubernetes 26 Hình 2.12: Cơ chế lựa chọn Label Selector 26 Hình 2.13: NameSpace Kubernrtes 27 Hình 3.1: Mơ hình Horizontal Pod Autoscaler 27 Hình 3.2: Quy trình thu thập Metrics 29 Hình 3.3: Horizontal Pod Autoscaling tính tốn với nhiều metric 31 Hình 3.4: Horizontal Pod Autoscaling cập nhật trường replicas 32 Hình 3.5: Node Affinity 42 Hình 3.6: Preferred Node affinity 46 Hình 3.7: Pod affinity 49 Hình 3.8:Kiến trúc Vertical Autoscaling .52 Hình 3.9: Quy trình Update Policy 54 Hình 3.10: Biểu đồ trình VPA 56 Hình 4.1: Màn hình đăng nhập 59 Hình 4.2: Màn hình đăng ký 60 Hình 4.3: Màn hình nạp tiền 61 Hình 4.4: Màn hình rút tiền 62 Hình 4.5: Kịch triển khai 63 Hình 4.6: Trước scaling 67 Hình 4.7: Sau scaling 67 Hình 4.8: Các pod tạo để giảm tải cho pod tồn 68 v DANH MỤC BẢNG BIỂU Bảng 3.1: Cơng thức tính số replicas đơn giản 30 Bảng 3.2: Công thức lựa chọn số replicas với nhiều metric 30 Bảng 3.3: Deployment.yaml scale theo CPU 32 Bảng 3.4: HPA.yaml scale theo CPU 33 Bảng 3.5: Kết HPA chưa thu thập liệu 34 Bảng 3.6: Kết HPA thu thập liệu 35 Bảng 3.7: Kiểm tra liệu deployment 35 Bảng 3.8: Deployment.yaml scale theo memory 36 Bảng 3.9: Deployment.yaml scale theo pqs 37 Bảng 3.10: Cấu hình VPA theo số lượng request 38 Bảng 3.11: Cấu hình pod sử dụng Node Selector 39 Bảng 3.12: Câu lệnh để đánh label node .40 Bảng 3.13: Cấu hình pod sử dụng Node Affinity 40 Bảng 3.14: Lấy thông tin node 43 Bảng 3.15: Tạo label cho node 43 Bảng 3.16: Cấu hình pod sử dụng Node Affinity chế độ preferred 44 Bảng 3.17: Câu lệnh để tạo pod database 47 Bảng 3.18: Cấu hình pod sử dụng Pod Affinity 47 Bảng 3.19: Trường TopologyKey 49 Bảng 3.20: Cấu hình pod sử dụng Pod anti-affinity 50 Bảng 3.21: File cấu hình VerticalPodAutoscaler 52 Bảng 3.22: File cấu hình Multidimensional Autoscaling 56 vi DANH MỤC CÁC TỪ VIẾT TẮT VÀ GIẢI THÍCH CÁC THUẬT NGỮ (Xếp theo thứ tự A, B, C… ) API Application Programming Interface CC Cloud computing CNCF Cloud Native Computing Foundation DNS Domain Name System DR Disaster Recovery ĐATN Đồ án tốt nghiệp HĐH Hệ điều hành HPA Horizontal Pod Autoscaling IEEE Institute of Electrical and Electronics Engineers IP Internet Protocol KLTN Khóa luận tốt nghiệp LVTN Luận văn tốt nghiệp OS Operating System PV Persistent Volume PVC Persisent Volume Claims QA Quality Assurance VM Virtual Machine VMM Virtual Machine Monitor VPA Vertical Pod Autoscaling VPS Virtual Private Server vii CHƯƠNG GIỚI THIỆU Chương trình bày tổng quan điện tốn đám mây, Autoscaling, Vitual Machine Container, tảng quản lý Container Giúp nắm rõ kiến thức 1.1 Tổng quan điện toán đám mây 1.1.1 Điện tốn đám mây gì? Điện tốn đám mây (cloud computing): hay cịn gọi điện tốn máy chủ ảo nơi tính tốn “định hướng dịch vụ” phát triển dựa vào Internet Cụ thể hơn, mơ hình điện tốn đám mây, tất tài nguyên, thông tin, phần mềm chia sẻ cung cấp cho máy tính, thiết bị, người dùng dạng dịch vụ tảng hạ tầng mạng công cộng (thường mạng Internet) Người dùng sử dụng dịch vụ sở liệu, website, lưu trữ, … mơ hình điện tốn đám mây khơng cần quan tâm đến vị trí địa lý thông tin khác hệ thống mạng đám mây - “điện toán đám mây suốt người dùng” Người dùng cuối truy cập sử dụng ứng dụng đám mây thông qua ứng dụng trình duyệt web, ứng dụng di động, máy tính cá nhân thơng thường Hiệu sử dụng phía người dùng cuối cải thiện phần mềm chuyên dụng, sở liệu lưu trữ cài đặt hệ thống máy chủ ảo mơi trường điện tốn đám mây “data center” “Data center” thuật ngữ khu vực chứa server thiết bị lưu trữ, bao gồm nguồn điện thiết bị khác rack, cables, …có khả sẵn sàng độ ổn định cao Ngồi cịn bao gồm tiêu chí khác như: tính module hóa cao, khả mở rộng dễ dàng, nguồn làm mát, hỗ trợ hợp server lưu trữ mật độ cao Có mơ hình triển khai điện tốn đám mây public (công cộng), private (riêng), hybrid (“lai” đám mây công cộng riêng) Đám mây công cộng mô hình đám mây mà đó, nhà cung cấp đám mây cung cấp dịch vụ tài nguyên, platform, hay ứng dụng lưu trữ đám mây public bên Các dịch vụ public cloud miễn phí có phí Đám mây riêng dịch vụ cung cấp nội thường dịch vụ kinh doanh, mục đích nhắm đến cung cấp dịch vụ cho nhóm người đứng đằng sau firewall Đám mây “lai” môi trường đám mây mà kết hợp cung cấp CHƯƠNG CẤU HÌNH VÀ DEMO Sau tìm hiểu kiến thức chương trước, chương áp dụng kiến thức ứng dụng cụ thế, giúp biết ưu nhược điểm phương pháp 4.1 Kịch triển khai 4.1.1 Mô tả ứng dụng Bank of Anthos ứng dụng web dựa HTTP mẫu mô mạng xử lý toán ngân hàng, cho phép người dùng tạo tài khoản ngân hàng hoàn tất giao dịch Các hình: - Màn hình đăng nhập: Hình 4.1: Màn hình đăng nhập - Màn hình đăng ký: 59 Hình 4.2: Màn hình đăng ký - Màn hình trang chủ: 60 - Màn hình nạp tiền: Hình 4.3: Màn hình nạp tiền 61 - Màn hình rút tiền: Hình 4.4: Màn hình rút tiền 62 4.1.2 Kịch triển khai Hình 4.5: Kịch triển khai Để thực triển khai autoscaling tảng kubernestes, cần trình Đầu tiên, cần khởi tạo cụm(cluster) bao gồm nodes Các node phiên máy ảo Compute Engine (VM) chạy quy trình Kubernetes cần thiết để biến chúng thành phần cụm Chúng ta triển khai ứng dụng đến cụm ứng dụng chạy node 63 Sau tạo cụm, triển khai ứng dụng Trong ví dụ này, triển khai ứng dụng Bank of Anthos Ứng dụng triển khai pod Đây ứng dụng thực tính tốn nhằm tác động đến tài ngun cụm, từ thấy cách hoạt động Autoscaling Kubernetes Cuối cùng, triển khai Horizontal Pod Autoscaling(sử dụng node selector), Vertical Pod Autoscaling ứng dụng máy chủ Bank of anthos quan sát, kiểm soát hoạt động chúng 4.2 Triển khai hạ tầng 4.2.1 Triển khai cụm Tạo cụm google cloud, ta sử dụng: gcloud container clusters create bank-of-anthos –-zone asia-southeast1-a num-nodes=4 Nếu không định, num-node mặc định Việc tạo cụm vài phút để hồn thành Sau tạo cụm mình, cần có thơng tin xác thực để tương tác với cụm: gcloud container clusters get-credentials bank-of-anthos zone asiasoutheast1-a project prj1-369709 4.2.2 Triển khai ứng dụng Sau tạo cụm, triển khai ứng dụng Trong ví dụ này, triển khai ứng dụng máy chủ Bank of Anthos Để chạy ứng dụng cụm, cần triển khai ứng dụng cách chạy lệnh: git clone https://github.com/GoogleCloudPlatform/bank-of-anthos.git cd bank-of-anthos/ 64 kubectl apply -f /extras/jwt/jwt-secret.yaml kubectl apply -f /kubernetes-manifests Sau khởi tạo thành cơng, kiểm tra xem ứng dụng mình: Để kiểm tra Pods hoạt động, ta sử dụng: kubectl get pods Để kiểm tra Service, sử dụng: kubectl get service Để truy cập giao diện web trình duyệt cách sử dụng IP bên ngồi giao diện người dung, sử dụng kubectl get service frontend | awk '{print $4}' Truy cập http://34.124.150.77/ để vào trình duyệt 4.3 Triển khai giải pháp Autoscaling 4.3.1 Triển khai Horizontal Pod Autoscaling Để triển khai Horizontal Autoscaling, phải tạo cơng việc để giám sát Các ví dụ riêng biệt cho thấy Horizontal Autoscaling hoạt động dựa việc sử dụng tài nguyên, số liệu tùy chỉnh, số liệu bên dựa nhiều số khác Trong ví dụ này, triển khai Horizontal Pod Autoscaling ứng dụng máy chủ Bank of anthos tạo từ trước với số pod ban đầu Sau cấu hình pod, tiến hành triển khai Horizontal Pod Autoscaling.Để triển khai Horizontal Autoscaling, sử dụng kubectl apply kubectl apply: - Tạo file kê khai YAML có tên hpa.yaml: apiVersion: autoscaling/v1 kind: HorizontalPodAutoscaler 65 metadata: name: hpa-app spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: balancereader minReplicas: maxReplicas: 10 targetCPUUtilizationPercentage: 10 - Sau tạo file, để triển khai, áp dụng lệnh sau: kubectl apply -f hpa.yaml - Sau triển khai, nhận danh sách Horizontal Autoscaler lệnh: kubectl get hpa Chúng ta thấy danh sách Horizontal Autoscaler triển khai Để biết thơng tin chi tiết Horizontal Autoscaler, sử dụng câu lệnh: kubectl get hpa hpa-app -o yaml Horizontal Autoscaler dựa nhiều số: Sau cấu hình Horizontal Pod Autoscaling, chạy ứng dụng để theo dõi trình hoạt động Để chạy ứng dụng, sử dụng lệnh: 66 kubectl run -i tty load-generator rm image=busybox restart=Never /bin/sh -c "while sleep 0.01; wget -q -O- http://34.124.150.77/; done" Sau ứng dụng khởi chạy, truy cập kubernetes dashboard để theo dõi Khi CPU vượt giới hạn pod, hệ thống tự động tạo pod để giảm tải cho pod tồn Hình 4.6: Trước scaling Trước sử dụng Horizontal Autoscaling ta thấy mức sử dụng CPU 10% hình 4.6 Hình 4.7: Sau scaling Sau thực Horizontal Autoscaling ta thấy mức sử dụng CPU giảm xuống 10% hình 4.7 ta thấy pod tạo để giảm tải cho pod tồn 67 Hình 4.8: Các pod tạo để giảm tải cho pod tồn Để xóa Horizontal Autoscaler, sử dụng lệnh: kubectl delete hpa hpa-app Sau xóa Horizontal Autoscaler, ứng dụng triển khai quy mơ có khơng trở số lượng replicas ban đầu Để chia tỷ lệ trở lại ban đầu, sử dụng lệnh: kubectl scale deployment balancereader replicas=1 4.3.2 Triển khai Vertical Pod Autoscaling Chúng ta triển khai Vertical Pod Autoscaling ứng dụng Bank of Anthos tạo từ trước với số pod ban đầu Để sử dụng tính Vertical Pod Autoscaler, trước tiên cần: Bật tính Vertical Pod Autoscaler: Để bật tính Vertical Pod Autoscaler cluster, ta thực lệnh gcloud container clusters update bank-of-anthos zone asia-southeast1-a project prj1-369709 enable-vertical-pod-autoscaling min-nodes=3 -max-nodes=5 68 Chúng ta thực bước sau để cài đặt kiểm tra VPA: - Triển khai file deployment có CPU: 100m định cấu hình VPA - Cho phép VPA chạy phút kiểm tra mức sử dụng CPU - Kiểm tra thơng tin VPA - Cập nhật CPU lên 200m - Áp dụng thay đổi - Kiểm tra trạng thái Pod Triển khai file deployment có CPU 100m: kubectl apply -f /kubernetes-manifests deployment.apps/balancereader configured Ta chia lại tỉ lệ replicas lên kubectl scale deployment balancereader replicas=2 Tạo file kê khai YAML có tên vpa.yaml: apiVersion: autoscaling.k8s.io/v1 kind: VerticalPodAutoscaler metadata: name: vpa-app spec: targetRef: apiVersion: "apps/v1" kind: Deployment name: balancereader updatePolicy: 69 updateMode: "Off" - Sau triển Vertical Pod Autoscaler khai lệnh kubectl create -f vpa.yaml - Sau triển khai, ta lấy thông tin Vertical Pod Autoscaler lệnh kubectl get vpa - Ta lấy thông tin chi tiết Pod chạy lệnh kubectl get pod balancereader-74c7d46647-r52lm output yaml Ta thông tin sau: apiVersion: v1 kind: Pod metadata: … kind: ReplicaSet name: balancereader-74c7d46647 … spec: container: … resources: limits: cpu: 500m memory: 512Mi requests: 70 cpu: 100m memory: 256Mi … Ta cập nhật CPU requests từ 100m lên 200m Áp dụng thay đổi: kubectl apply -f /kubernetes-manifests deployment.apps/balancereader configured Kiểm tra trạng thái pod Khi ta thay đổi số liệu CPU, pod balancereader cũ bị chấm dứt pod cung cấp giá trị CPU khai báo Để xóa Vertical Autoscaler, sử dụng lệnh: kubectl delete vpa vpa-app Để tắt tính Vertical Pod Autoscaler cluster, ta thực lệnh: gcloud container clusters update bank-of-anthos zone asia-southeast1-a project prj1-369709 –-no-enable-vertical-pod-autoscaling min-nodes=3 max-nodes=5 Để chia tỷ lệ trở lại ban đầu, sử dụng lệnh: kubectl scale deployment balancereader replicas=1 71 TÀI LIỆU THAM KHẢO [1] "uetacad.com," [Online] Available: https://uetacad.com/ao-hoa-va-dien-toandam-may/ [2] "news.bnn.vn," [Online] Available: https://news.bnn.vn/su-khac-nhau-giua-aohoa-container-va-virtual-machine/ [3] "codeschool.vn," [Online] Available: https://codeschool.vn/portal/so-sanhdocker-container-va-may-ao-virtual-machine/ [4] "cloudfun.vn," [Online] Available: https://cloudfun.vn/threads/di-tim-cau-traloi-dau-la-nen-tang-quan-ly-container-pho-bien-nhat.451/ [5] "infotechz.vn," [Online] Available: https://infotechz.vn/auto-scaling-la-gi/ [6] "lagi.wiki," [Online] Available: https://lagi.wiki/auto-scaling [7] "uetacad.com," [Online] Available: https://uetacad.com/cac-phuong-thucscaling-trong-aws/ [8] "uetacad.com," [Online] Available: https://uetacad.com/aws-auto-scaling-la-gicau-tao-cach-thuc-hoat-dong-cua-auto-scaling/ [9] "bizflycloud.vn," [Online] Available: https://bizflycloud.vn/tin-tuc/kubernetesla-gi-vai-tro-cua-kubernetes-la-gi-20181015094513924.htm [10] "bantincongnghe.net," [Online] Available: https://bantincongnghe.net/kien-truccua-kubernetes/#Master_Node [11] "hocdevops.com," [Online] Available: https://hocdevops.com/kubernetes/kientruc-cua-kubernetes/ [12] "Kubernetes," [Online] Available: https://kubernetes.io [13] "viblo.asia," [Online] Available: https://viblo.asia/p/kubernetes-tim-hieu-vekubernetes-service-types-L4x5xrgaZBM [14] "blogd.net," [Online] Available: https://blogd.net/kubernetes/kien-truckubernetes/ [15] "viblo.asia," [Online] Available: https://viblo.asia/p/kubernetes-series-bai-16automatic-scaling-pod-va-cluster-YWOZrGyRlQ0 [16] "viblo.asia," [Online] Available: https://viblo.asia/p/kubernetes-series-bai-18advanced-scheduling-node-affinity-and-pod-affinity-gAm5y7jqZdb 72 [17] Povilas, "povilasv.me," [Online] Available: https://povilasv.me/vertical-podautoscaling-the-definitive-guide/# [18] T WANG, "Predictive vertical CPU autoscaling in Kubernetes based on time" [19] "cloud.google.com," [Online] Available: https://cloud.google.com/kubernetesengine [20] "lordlikely.com," [Online] Available: https://www.lordlikely.com/news/9-congc-giam-sat-ma-ngun-m-hang-u-cho-kubernetes/ [21] "hocviencanboxd.edu.vn," [Online] Available: https://hocviencanboxd.edu.vn/scaling-la-gi-nghia-cua-tu-scaling/ [22] "bizflycloud.vn," [Online] Available: https://bizflycloud.vn/tin-tuc/auto-scalingla-gi-su-dung-auto-scaling-dem-lai-nhung-ich-loi-quan-trong-gi2018100411065843.htm [23] "viettelidc.com.vn," [Online] Available: https://www.viettelidc.com.vn/tintuc/ao-hoa-container-va-virtual-machine-khac-nhau-nhu-the-nao 73

Ngày đăng: 04/02/2023, 15:03