1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp An toàn thông tin: Nghiên cứu và phát triển hệ thống giả lập mạng không dây trên nền tảng Kubernetes

83 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nghien Cuu Va Phat Trien He Thong Gia Lap Mang Khong Day Tren Nen Tang Kubernetes
Tác giả Nguyen Hoang Long, Nguyen Tu Hai
Người hướng dẫn THS. Dang Le Bao Chuong, THS. Bui Thanh Binh
Trường học Truong Dai Hoc Cong Nghe Thong Tin
Chuyên ngành An Toan Thong Tin
Thể loại Khoa Luan Tot Nghiep
Năm xuất bản 2021
Thành phố TP. Ho Chi Minh
Định dạng
Số trang 83
Dung lượng 41,48 MB

Nội dung

TOM TAT KHÓA LUẬNVới xu hướng phát triển công nghệ thông tin, việc sử các dịch vụ từ internet đang ngàymột phổ biến kéo theo đó là nhu cầu truy cập internet mọi lúc mọi nơi cũng tăng the

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HỌC CÔNG NGHỆ THONG TIN

KHOA MANG MAY TINH VA TRUYEN THONG

NGUYEN HOANG LONG

NGUYEN TU HAI

KHOA LUAN TOT NGHIEP

NGHIEN CUU VA PHAT TRIEN HE THONG GIA

system based on Kubernetes container orchestration

KY SU NGANH AN TOAN THONG TIN

TP HO CHÍ MINH, 2021

Trang 2

ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG

NGUYEN HOANG LONG

Research and Development of a wireless network emulator

system based on Kubernetes container orchestration

KY SU NGANH AN TOAN THONG TIN

GIANG VIEN HUONG DAN THS DANG LE BAO CHUONG

THS BUI THANH BINH

TP HO CHÍ MINH, 2021

Trang 3

THONG TIN HOI DONG

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số 30 ngày 13 tháng 1

năm 2022 của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

I TS Nguyễn Ngọc Tự — Chủ tịch.

2 _ TK Nguyễn Khánh Thuật Thư ký.

3 UV Nguyễn Huỳnh Quốc Việt ~ Ủy viên.

Trang 4

LỜI CẢM ƠN

Nhóm tác giả xin bày tỏ lòng biết ơn chân thành, sâu sắc đến ThS Đặng Lê Bảo Chương

và ThS Bùi Thanh Bình - Giảng viên Khoa Mạng máy tính và Truyền thông Trường Đại

học Công nghệ Thông tin đã định hướng đề tài, động viên, giúp đỡ nhóm tác giả bằngtất cả sự tận tâm và nhiệt huyết trong suốt thời gian nghiên cứu, hoàn thành đề tài này

Nhóm tác giả xin chân thành cảm ơn quý Thầy Cô Trường Đại học Công nghệ Thôngtin đã tạo mọi điều kiện giúp đỡ nhóm tác giả trong quá trình học tập, nghiên cứu, thựcnghiệm và hoàn thành đề tài

Cuối cùng, nhóm tác giả xin bày tỏ lòng biết ơn đối với gia đình và bạn bè đã luôn giúp

đỡ, động viên nhóm tác giả hoàn thành đề tài

Do những điều kiện chủ quan và khách quan chắc chắn khóa luận không thể tránh khỏi

những thiếu sót, nhóm tác giả rất mong nhận được những ý kiến đóng góp của Thầy Cô

và các bạn Trân trọng cảm ơn!

TP Hồ Chí Minh, ngày tháng năm

Nhóm tác giả

Trang 5

MỤC LỤC

THONG TIN HỘI ĐÒNG 5-2 s22 s©s£©Ss£ss©ssexseEsstsserserssere 2

LOT CAM 0907 3

\) 10/909 5 4

DANH MỤC HÌNH << << s©Ss£Ss£Ss£SseEseEseEseEseEseEserserserserserserse 6 90:80 98:70 8

DANH MỤC TU VIET TAT cccsssssssssssssssssssssssssssssessscssssscsscsscsecsscescssesseesceees 10 TOM TAT KHOA LUAN -s-°- << << s£Ss£Ss£ se seEseEsexsersersevsersere 1 CHƯƠNG 1: MỞ ĐẦU ec2 5 2< SsS9928939SsEEsEESEEseEseEseEsetsetsetsessesssse 2 1 Ly do, mục tiêu, đối tượng, ý tưởng và phạm vi nghiên cứu, đóng góp của đề tài 2

"ân" n ếđ đ« ` ` 1 O Ả 2

I ANH) 000i) n6 2

1.3 Đối tượng 22 2222 2n H22 22122112rree 3 1.4 Ý tưởng, phạm vi nghiên cứu -:+2+++2E++2E+++EEE+SEEEtSEEEEEkrEEkerrkrerkrrrrkree 3 1.5 Những đóng góp của đề tài -222 22122221 2211221122711 2112211121112 ee 4 1.6 Các phần của báo cáo 2- 2k2 2222122112221 erree 5 CHƯƠNG 2: TONG QUAN a -

2 Phan tích các hướng tiếp cận 2.1 TestBed - Mô phỏng ( Simulation ) - Giả lập mạng ( Emulator) - - - 6

3 Hướng tiếp cận -©2<22k2 1 221 21122112712 21111.111.111 1.111 1111re 13 ca ÀA ae 14

5 nh 43 54 14

4.2 SDN -SDWN — 16

¬.®) " ẦẦ 18

“)' ố 19

TJ Kurbermetes ae e ố.ốố.ố.ố.ố 20

Trang 6

CHƯƠNG 4: PHAN TÍCH VÀ ĐÁNH GIA - 5 <<eseseseeeeee<esee 04

Trang 7

DANH MỤC HÌNH

Hình 1: Kiến trúc cơ bản đề tài 522cc tru 14

Hình 2: Mininet tao 1 mạng ảo với 2 máy CHU .- ¿5+ + *+*++e+evxeeeeeeseerssss 16

Hình 3: Mạng truyền thống va SDN - 2-2 2© +E+2E22E22EE2E122122122171 212121 17Hình 4: File câu hình yaml - - 2 ¿+ £+S£+SE+EE£EE£EEtEEEEEEEEE2E12E12212112171 212121 23Hình 5: Sơ đồ kiến trúc co bản Kubernetes -.: 2: 22 +¿22+2x+2E++zxzzxerxrzrxerxez 24

Hình 7: Tinh năng Scheduling and Affinity cece ceeesecneceeeeneceeeeseceeceaeeeeeseeneenes 26

Hình 8: Tính năng Management cccecceeeceeesceeceeeeeeeeeeceeeeeceaeeeeeceeeeeaeeeneeseeeeneenaes 27

Hình 9: Tính năng Auto Healing cece cececccccceseeseceseesecseceseeseceeeeaeceeesseceeceaeceeeeaeeneenas 28

Hình 10: Tính nang Service DisCOVery cccceecescesceeesesneessecneceseeeceeesseceeesaeeeeeseentense 29 Hình 11: Mô hình quản tri Kubernetes 20.00 eceeceseeseceeceneeneceeeeeceeeeaeceeceaeeneeeaeeneense 33

Hình 12: Mô hình hệ thống đề tai co cccccccccccsessceseessessessessessessessestsssesssssessessessessesseesees 35Hình 13: Cấu hình Kubernetes trong file config 2 2+2+2++++£x+zxerxerxerxerreee 38

Hình 14: Thêm địa chỉ may master va WOrK] - c2 + *++E++EE+eEE+eeseerreererkrs 38 Hinh 15: 0i09ì) oốn:ađia 39

Hình 16: Kiểm tra kết quả sau join €ÏUsfer - 2-22 s22£+x+2££+Ex+£E£+Extzzxerxezrserxee 39

Hình 17: Giao diện dashboard - - - + 2c 221122211 13221 8113811152111 111821111111 xxe 41 Hình 18: Sửa tag image trong quá trình cải đặt 0 eee eee eececeeneceeeeseeeeeeaeeneeeseeneenes 45 Hình 19: Sau khi chạy kịch bản thử nghiệm - - 2E SE *++£EE+eEEseesserseersrkes 49

Hình 20: Kiểm tra kết nồi - 2-22 + ++2+SE+2EE£EEt2EEE2E227121127121127121111211 1121 xe 50

Hình 21: Pod tạo khi chạy file thử nghiệm - 5c 33c E* +2 + EE+EEEsrrsrerrersres 53

Hình 22: Kết nối vào pod vừa tạO ¿- 2+ ©2++22+22EE22E12223122312231221211221 221 e2 xe 53

Hình 23: Kết quả thử kịch bản trên kubernetes c.ccscccssessessessessesseessssessessessessesseesees 54

Hình 24: Liệt kê các tiến trình Docker dang Chay c.cecccccessessessessesstessssessessessessesseesees 54

Hình 25: KBI - CPU usage (%) — 10 kết nối + 2 2 ++++EE+EE+EEtrEerxerxerrerrxee 55

Hình 26: KBI - CPU load (%) — 10 kết nối 5c 52+Se2Et2EE2EE2EE2EE2EEEEEeEEerrrrerree 55

Trang 8

Hình 27: KBI - Memory usage (%) — 10 kết nối 2 2 2+2 + x+£++£x+rxerxezzeee 56Hình 28: KBI - CPU usage (%) - 50 kết nồi 2 2 2+E£+E++EE+EEeEEerEerkrrerreee 56Hình 29: KBI - CPU load (%) - 50 kết nối -¿- + ©22x+22++Ex+2E++Exzz+zrxezzxsrxez 57Hình 30: KBI - Memory usage (%) - 50 kết nồi - 2 2+2 22 x+zx+£x+rxezxezzeee 57Hình 31: KB2 - Biéu đồ CPU usage — 10 kết nối 2 22222 ++£++£E+£xerxerxezreee 61Hình 32: KB2 - Biểu đồ CPU load — 10 kết nối -2:©2¿- +25+22x+2z++zxzzzsrxez 61Hình 33: KB2 - Biéu đồ memory usage — 10 kết Oi eeeesceseeseeseesessessessesseeseeaees 62Hình 34: KB2 - Biểu đồ CPU usage — 50 kết nồi - 2-22 ++2zz+£x+zzzzrxczzzsrxez 62Hình 35: KB2 - Biểu đồ CPU load — 50 kết nối 2- 2-22 ++2z£2£++2zz+£xvzzzsrxez 63Hình 36: KB2 - Biéu đồ memory usage — 50 kết nối 2-2 2 s+x+£x+£xezxzzzzez 63Hình 37: Thống kê số liệu sta 1 kết nối đến AP - 222 + E+£++£++rxerxzzzeez 64Hình 38: Thống kê số liệu sta 2 kết nối đến AP -2¿-¿++2+£+x+zxz+rxzxssrxez 65

Trang 9

DANH MỤC BANG

Bang 1: Một số hệ thống TestBED 2-22 29SE9SE9EEEEEEEEEEEEEE2E1211211221221221 22 xe 7Bang 2: Một số trình giả lập đã cĨ ¿- 2-52-5122 2E EE2E2E2211211221221221 71112121 xe 10

Bang 3: So sánh Kubernetes va Docker Swarm -.- 5c +23 E+vsetEeeeseesrrree 30

Bang 4: Cau hình máy Master 2-5252 SE‡SE‡EE‡EEEEEE2E21121121122121111 11111121 36

Bảng 5: Lệnh cài đặt docker va cƠng CỤ - c2 31121121111 SEEEEEsrkrrkrrke 37 Bang 6: Lệnh cài đặt Kubeadm, kubelet, kubectÏ - - ¿55+ + x++s++ex+eeseexsersss 37 Bảng 7: Chỉnh sửa file /docker/daeImon.JSOTI - 5 5c 3223321323 +EE+EEseEerrererrrree 38 Bang 8: Lệnh khởi tao €ÏUSẮ€T - c2 2213212231351 1331351151 15 1111111111111 1 1 ke 39

Bang 10: Cấu hình network cho cluster ccccsccsscsccsscecsessesseesessesseessssseseessessessessesseeseaees 40

Bang 11: Cài dat giao diện dashboard oe ec eceeeeeeesecneeeseeeececeeseceeeeseeeeeeaeeneseaeentense 40

Bảng 12: Tao user đăng nhập - - - G0 2211211211151 1231511 12111 110111 11111 11 11 g1 rệt 40 Bảng 13: Khởi chạy proxy c3 2112112211211 11111 21111111111 111111 H1 HH nhà rệt 40

Bang 14: Clone containernet PS “caaA 41 Bảng 15: Tao dockerFile trong thử mục containernet - «+ «+sx+sex+seeseesees 42 Bang 16: s3ii8 0ì 1n 44 Bảng 17: Lệnh chạy 1maØe - c1 1121121191191 11 11 11 01T nh HH Hà HH 45

Bảng 18: Kịch bản thử nghiỆm - - 2c 622212511211 351E511 2 119111 11 11 1 11 vn rưệt 45

Bảng 19: Lệnh chạy kịch bản -c c6 2+ 3321115111531 1111 191119 1191111111 HH1 TH ng Hkt 48

Bang 20: Chuyên sang containernet CLI sau khi chạy kịch bản - 48Bảng 21: Lệnh kiểm tra kết nồi 2-22 %+SE£+EE£EESEEEEEE2E19211271221271221271 22 xe 49Bảng 22: File YAML cau hình thử nghiệm - 2-22 222 ©2+2++2E++2Ex+zzxzerseees 51

Bang 23: Lệnh chạy file thử nghiỆm - - 2c E3 21131E2113 1151111511111 Ekrrke 53 Bang 24: Chạy thử kịch ban trên kubernetes 200.0 ec ececceeeseeseceseeeeceeeeseceeeeseeneeeseentenss 53 Bảng 25: Lệnh chạy file kịch ban eceecceeseeseeseeeseeeeeseeseceeeeseceeeeaeceeeeaeeeeeeaeeneenae 54

Bảng 26: Thực hiện 10 kết nối đến sta l -2¿-©2¿2252222£22E++2EEt2EEt2EEzEErsrxrerrrees 54

Trang 10

Bảng 27: Lệnh thực hiện 50 kết nối đến sta Ì ¿- 5c Sx+sEx‡EEESEEEEEEEEEkerrrksrrrkerrre 56

Bang 28: File yaml kịch bản 2 - c2 22 3211331351 1231351 151151111111 111 11 11 1 1 ke 57

Bảng 29: thực hiện 10 kết nối đến stad 5s ckcsExSEEESEEEEEESEEEESEEEESEEEkrkrrrkrrrree 60Bảng 30: Thực hiện 50 kết nối đến sta Ì -¿- 5s St EEEEEEEEEEEEEEEEEEEEEkrkerrrkerrree 62Bang 31: So sánh hiệu năng khi có 10 kết nối - 2 2 2+2+2£2££+£E+£E+£Eezxzxezzeee 65Bang 32: So sánh hiệu năng khi có 50 kết nối - 2 2 2+52+22£E+£E+£E+£Ee£EzEezreee 66

Trang 11

DANH MỤC TU VIET TAT

WMN Wireless Mesh Network

WSN Wireless Sensor Network

NS3 Net Simulation 3

GNS3 Graphical Network Simulator

SDN Software-Define Network

SDWN Software-Define Wireless Network

Docker CFS Docker Container Freight Station

AT Adaptive Traffic

Trang 12

TOM TAT KHÓA LUẬN

Với xu hướng phát triển công nghệ thông tin, việc sử các dịch vụ từ internet đang ngàymột phổ biến kéo theo đó là nhu cầu truy cập internet mọi lúc mọi nơi cũng tăng theo, vivậy việc triển khai các hệ thong mạng không dây đang dan trở nên quan trọng và tất yếu.Chính vì thế công việc của các kỹ sư công nghệ thông tin trong quá trình khảo sát, lên

kế hoạch, triển khai dự án cũng cần đạt được sự chính xác cao dé đáp ứng nhu cầu kháchhàng Việc triển khai một hệ thống hoạt động ôn định, chi phí hợp lý, hiệu suất cao cũngchính là chìa khóa cạnh tranh của các kỹ sư trong quá trình lên thiết kế và triển khai Dù

đã có kiến thức tốt, làm việc kỹ lưỡng nhưng đôi khi các kỹ sư cũng có thể vướng phảinhững rủi ro về lỗi trong quá trình sử dụng của khách hàng Do đó, phạm vi khóa luậnnày, nhóm tác giả đã nghiên cứu và triển khai mô hình ảo hóa mạng không dây phục vụ

công việc đo lường trước một số khả năng của hệ thống do kỹ sư thiết kế, chạy thử

nghiệm mô hình ảo giúp cho các kỹ sư có thể đo lường cũng như chỉnh sửa hệ thốngnhằm đạt hiệu quả tốt nhất Mô hình ứng dụng công nghệ ảo hóa, sử dụng các container

và công cụ quản lý để dựng lên một hệ thống giúp kỹ sư có thể thiết kế hệ thống mạng

không dây tự do theo nhu cầu Sau khi đã thiết kế được mô hình hệ thống theo ý muốn,

kỹ sư có thé chạy thử nghiệm mô hình của mình trên ảo hóa

Trang 13

bị, tính ồn định, giao thức truyền tai, la những vấn đề luôn được các kỹ sư quan tâm,

tính toán và giải quyết trước khi đưa ra sử dụng cho người dùng cuối Có thể đưa ra một

hệ thống hoạt động én định, chính xác với nhu cầu của khách hang, chi phí tối ưu nhất

là một điểm cạnh tranh của các kỹ sư thiết kế hệ thống

Vì lẽ đó nên trên thế giới hiện nay đã có rất nhiều những giải pháp được đưa ra đề giải

quyết vấn đề này Có những hệ thống nghiên cứu được dựng lên với hàng ngàn nhữngthiết bị vật lý, cơ sở hạ tầng không lồ, những giải pháp như vậy thì rất thực tế nhưng lạitốn kém rất nhiều về mặt chỉ phí và không gian; ngoài ra cũng có những giải pháp sửdụng công nghệ ảo hóa, xây dựng một hệ thống với những thiết bị ảo chạy trên môitrường ảo hỏa, giải pháp này thì giảm thiểu rất nhiều chi phí nhưng ngược lại thì khó cóthé đáp ứng được hết những sự cố có thê xảy ra trong thực tế, kèm theo đó là những thuật

Trang 14

- Mô hình triển khai hệ thống ảo hóa mạng không dây.

- Xây dựng hệ thống ảo hóa mạng không dây

- Triển khai và đánh giá hệ thống mạng không dây ảo

1.3 Đối tượng

- Mô hình mạng không dây ảo.

- Các công cụ hỗ trợ triển khai và quản lý container

- Các công cụ tích hợp giao thức, thiết bị không dây

- Các mã nguồn mở liên quan đến mạng không dây.

1.4 Ý tưởng, phạm vi nghiên cứu

Hiện nay việc áp dụng container vào các chương trình kiểm thử, triển khai doanh nghiệpdang rất phố biến Nhóm em cũng áp dụng những điểm lợi của container vào đề tài này,

theo đó là sử dụng Kubernetes với khả năng tự động hóa cao và nhiều tính năng dé quan

lý và triển khai các container trong môi trường ảo của VMware, kết hợp với MininetWifi dé có thé giả lập một môi trường mạng không day và thực hiện các khảo sát Hệthống sẽ có các container được triển khai như một thành phan của mạng không dây thực:access point, client, controller, dé thực hiện mô phỏng và được quan lý bởi Kubernetes

Tuy trên thế giới đã có rất nhiều hệ thống giả lập mạng, nhưng kết hợp với công cụ quản

lý Kubernetes là một ý tưởng còn mới và chưa được ứng dụng Chính vì thế phạm vi của

đề tài này nhóm tác giả quyết định sử dụng Mininet Wifi triển khai một môi trường mạnggiả lập chạy Docker container và kết hợp với công cụ quản lý là Kubernetes Nhận thấy

Đây là một ý tưởng mới và có tiêm năng với việc có thê mở rộng lên đên hàng trăm node.

Trang 15

1.5 Những đóng góp của đề tài

1.5.1 Tính mới của đề tài

Cho tới hiện tại, đã có rất nhiều những nghiên cứu về mô hình mạng không dây ảo sửdụng cho mục đích thử nghiệm hệ thống Tuy nhiên một hệ thống ảo hóa mạng khôngdây với sử kết hợp của các thành phần Kubernetes — Mininet Wifi thì vẫn dang là mới

mẻ Chính vì vậy đề tài này sẽ mang đến thêm một sự lựa chọn mới mẻ cho những kỹ

su.

Phan lớn các hệ thống sử dụng Kubernetes giả lập mạng tốc độ cao, nhiều loại hình mạng

khác nhau dé sử dụng trong thực tế cũng như là trong môi trường thử nghiệm Tuy nhiên

việc sử dụng Kubernetes trong giả lập mạng không dây vẫn chưa có, vậy nên việc làm

một dé tài như vậy sẽ có tiềm năng mở thêm một hướng đi mới trong ngành

1.5.2 Khả năng ứng dụng

Nhu cầu sử dụng mạng không dây ngày càng tang, kéo theo là sự phát triển của mạnglưới mạng không dây Hơn bao giờ hết, yêu cầu về chất lượng của những hệ thống mộtkhông dây đang ngày một cao và khắt khe hơn Nếu một hệ thống không đạt đủ yêu cầu

sẽ dẫn đến trải nghiệm sử dụng của người dùng bị ảnh hưởng xấu, theo đó sẽ là nhữngthan phiền từ phía người dùng, có thể là cả hoạt động của doanh nghiệp bị ảnh hưởng

Do đó hệ thống thử nghiệm mạng không dây trên môi trường ảo đã được nhóm tác giả

chọn đê giải quyét van dé này.

Với một hệ thống ảo hóa, các kỹ sư có thể thoải mái chạy thử nghiệm mô hình do họ thiết kế, có thé thay đổi, chỉnh sửa tùy ý theo đúng nhu cầu, có thé kiểm tra một số rủi

ro trước khi triển khai, đây là những thứ mà khi đã triển khai thực tế rất khó có thé thay

đôi khi có sai sót.

Trang 16

Ngoài ra, dé tài con có khả năng ứng dụng cao nhờ việc không sử dụng môi trường cốđịnh dé thử nghiệm, có thé thực hiện việc chạy chương trình ở bat kì đâu, bat kì khi nào

người kỹ sư mong muôn.

1.6 Các phân của báo cáo

1.6.1 Chương 1: Mở đầu

Trình bày lý do chọn đề tài, mục tiêu nghiên cứu, đối tượng nghiên cứu, phạm vi nghiên

cứu và đóng góp của khóa luận.

1.6.2 Cơ sở lý thuyết

Bao gồm nội dung liên quan đến các khái niệm, công nghệ, mô hình mà nhóm tác giả đãtìm hiểu và nghiên cứu trong quá trình thực hiện khóa luận Những kiến thức được trìnhbày trong chương này là cơ sở đề thực hiện thiết kế và trién khai hệ thống ảo hóa mạngkhông dây Ngoài ra trong chương này còn có dé cập đến một số công nghệ đã có trướcđây dé hiểu hơn về ý nghĩa cũng như mục đích xây dựng hệ thống

1.6.3 Phân tích và thiết kế mô hình

Trình bày ý tưởng của nhóm tác giả khi thiết kế mô hình Bao gồm mô hình của hệ thống,giải thích các thành phần có trong hệ thống, mô tả chức năng của các thành phần, liệt kê

các bước cần thiết dé triển khai mô hình.

1.6.4 Đánh giá kết quả

Đánh giá ưu và nhược điểm của mô hình trong kịch bản thử nghiệm

1.6.5 Kết luận và hướng phát triểnTổng kết quá trình thực hiện khóa luận và đề xuất hướng phát triển trong tương lai

Trang 17

CHƯƠNG 2: TONG QUAN

1 Sơ lược

Sự phát triển của các giao thức mạng không dây và công cụ kiểm tra các hệ thống đãphát triển dé xác minh chức năng, giao thức, khả năng, của chúng Hơn nữa trước khitriển khai trong mô hình quan trọng, các đặc điểm hiệu suất các giao thức mạng hiện có

và các ứng dụng cũng phải được đánh giá trong các trường hợp cụ thé khác nhau Déthực hiện những kiểm tra này trên thế giới đã xuất hiện rất nhiều cách thức khác nhaunhư: hệ thống thiết bị thực Testbed, các trình mô phỏng, trình giả lập

Trong phần này nhóm tác giả sẽ diễn đạt về một số khái niệm, giới thiệu và trình bàykhái quát một số công nghệ của 3 cách tiếp cận trên trước đây cho đến hiện nay đã được

đưa ra dé giải quyết những van đề được nhóm tác giả đề cập ở chương trước Nhóm tác

giả liệt kê ra các mục sẽ trình bày cụ thê như sau:

- Phân tích các hướng tiếp cận: trình bày về Testbed — trình mô phỏng - trình gia lập

- Hướng xây dựng đề tài

- Mininet Wifi.

- Containernet.

- Docker.

- Kubernetes.

2 Phân tích các hướng tiếp cận

2.1 TestBed - Mô phỏng ( Simulation ) - Giả lập mạng ( Emulator)

Trang 18

liên tục nghiên cứu, phát triển và triển khai ở nhiều nước trên thế giới Testbed là hệthống những mạng máy tính gồm các thiết bị thực sử dụng hỗ trợ thử nghiệm các hệthống mạng không dây với quy mô từ nhỏ đến lớn.

2.1.1.2 Một số hệ thống TestBed

Trên thực tế có rất nhiều hệ thống testbed với nhiều quy mô, nhưng ở đây nhóm tác giả

chỉ giới thiệu một số hệ thống testbed tiêu biểu gồm: SensLAB, Des-Testbed, StartBED.

Bang 1: Một số hệ thong TestBEDSTT TÊN THÔNG TIN

Testbed với quy mô lớn được xây dựng đề phục vụ thử nghiệm,

nghiên cứu và đánh giá các giao thức va ứng dụng mang cam

biến không dây Mục tiêu của testbed này là cung cấp một cáchchính xác những công cụ truy cập mở khoa học dành cho nhiều

1 SensLAB [1] người dùng dé hỗ trợ thiết kế, phát triển va thử nghiệm cam

biên quy mô lớn.

Quy mô: gồm 1024 node trên 4 địa điểm khác nhau tại Pháp [

INRIA Grenoble, INRIA Lille, INRIA Rennes và trường đại

hoc Strasbourg ] Mỗi dia điểm lưu trữ 256 node cảm biến

Distributed Embedded System testbed được xây dựng nhăm hỗ

trợ nghiên cứu mạng không dây nhiều node Hệ thống gồm có

DesTestbed

-2 -2] mang không day Mesh (WMN) va mang cảm biên không day

(WSN) phục vu việc nghiên cứu lâu dài va ứng dung cho hệ

thống mạng không dây sau này

Trang 19

Quy mô: 95 node, 95 MSB A2, indoor and outdoor.

Được xây dựng tại Trung tâm nghiên cứu Hokuriku NICT Nhật

Bản, với quy mô lớn của cơ sở hạ tầng thiết bi sử dụng dé hỗ

trợ giả lập, đánh giá giao thức và ứng dụng trong hệ thống mạng

không dây Các công cụ hỗ trợ liên quan được sử dụng

3 StarBED [5] SpringOS, RUNE Hệ thống sử dụng bộ công cụ QOMET dé

giả lập thiết bị và các giao thức mạng không dây trong môi

trường mạng có dây.

Quy mô: hơn 1000 PC.

Trên đây nhóm tác giả đã giới thiệu qua 3 hệ thống testbed nồi bật đã được triển khai vàcông bố khắp thé giới Bên cạnh các testbed này, nhiều tổ chức nghiên cứu cũng đã triểnkhai nhiều hệ thống tương tự với quy mô lớn nhỏ khác nhau Phần lớn các testbed phục

vụ cho mục đích làm việc và nghiên cứu với quy mô lớn.

2.1.1.3 Ưu - nhược điểm

- Ưu điểm: đối với phương pháp tiếp cận xây dựng một hệ thống testbed với những trangthiết bị thật thì sẽ đảm bảo tốt hơn về mặt gần gũi thực tế, những tình huống có thể xảy

ra, những rủi ro, số liệu đo đạc cho ra kết quả tương đương với thực tế nhất, tính tin cậy

cao.

- Nhược điểm: bên cạnh ưu điểm thì những nhược điểm của phương pháp này cũng rất

lớn Đó chính là việc triển khai một số lượng lớn các thiết bị thực sẽ dẫn đến chi phí

mua, bảo trì và triển khai thiết bị rất lớn Ngoài ra, việc thử nghiệm trên hệ thống thực

Trang 20

cũng mang lại sự bất tiện về quá trình bảo dưỡng, sửa chữa, quản ly, và thay đôi kịch

như bộ định tuyến, thiết bị chuyền mạch, node mạng, điểm truy cập, Có thể nói đây là

một bản sao các hành vi của các thiết bị thực bằng một chương trình phần mềm Đây

cũng là một cách tiếp cận khác dé thử nghiệm mạng không dây

2.1.2.2 Một số trình mô phỏng

Trên thị trường hiện nay có thê kề đến một số ông lớn trong lĩnh vực như: NS3, OPNET

Modeler, OMNET++, Qualnet, Cisco Packet Tracer, Trong các trình mô phỏng thì

thường được biết đến nhiều nhất là trong môi trường giáo dục như NS3, Cisco PacketTracer Nhu Cisco Packet Tracer hỗ trợ người dùng làm quen với việc cấu hình các thiết

bị của Cisco băng giao diện dòng lệnh, thực hiện tạo mô hình mạng, kiểm tra kết nối,routing, Còn NS3 là trình mô phỏng thực hiện những chức năng sâu hơn như kiểm soátcác thông số bên trong: tăng giảm băng thông mạng, làm thế nào đề gói tin rơi ít nhất,giao thức truyền nào hiệu quả hơn Mỗi trình mô phỏng đều có những chức năng nổi

trội riêng của nó.

2.1.2.3 Ưu - nhược điểm

- Ưu điểm: ngược lại với hệ thống thực testbed, các công cụ mô phỏng hỗ trợ tốt cho cácthử nghiệm có số lượng node lớn, chi phí thấp, ít công sức triển khai, bảo trì, vận hành,

có thể điều chỉnh, thay đổi kịch bản thử nghiệm nhanh chóng đơn giản

Trang 21

- Nhược điểm: tuy nhiên, với cách tiếp cận này sẽ phụ thuộc vao thuật toán nên đòi hỏi

độ phức tạp cao, tính tin cậy của kết quả thu được thấp hơn so với các hệ thống testbed

2.1.3.2 Một số trình giả lập

Những năm gần đây cách tiếp cận với hệ thống giả lập này đang thu hút sự chú ý, đượcxem là tiềm năng và có tính ứng dụng cao Trong đó các hệ thống thử nghiệm dựa trênnền tảng container, có thê kê đến như: QOMET, Mininet wifi, dummynet dựa trêncông nghệ OpenStack có thê được xem như là những đại diện cho trình giả lập Những

hệ thống này đã cho thấy được ưu điểm quan trong như: hỗ trợ khả năng thực thi thờigian thực, kết quả thử nghiệm có độ tin cậy cao hơn so với trình mô phỏng trong khi chỉphí thấp hơn các hệ thống testbed

Bảng 2: Một số trình giả lập đã có

STT TÊN THÔNG TIN

Là một công cụ mô phỏng mạng trực tiếp, ban đầu được thiếtDummynet kế dé thử nghiệm các giao thức mạng và từ đó được sử dụng

[4] cho nhiêu ứng dung khác nhau bao gôm quan lý bang thông.

Nó mô phỏng, thực thi các giới hạn về hàng đợi va bang thông,

sự chậm trê, mat gói và hiệu ứng đa đường Nó cũng thực hiện

10

Trang 22

các thuật toán lập kế hoạch khác nhau Dummynet có thể sử

dụng trên máy chạy ứng dụng của người dùng hoặc hoạt động

như bộ định tuyến

Thuộc loại testbed: emulation tools.

Kiến trúc: phân tán

QOMET [5]

QOMET là trình gia lập mạng không dây sử dụng hai giai đoạn

phương pháp tiếp cận dé chuyển đổi một kịch bản do ngườidùng xác định sửa lại thành các tham số suy giảm mạng sau đóđược sử dụng để định cấu hình trình giả lập cấp liên kết nhưDummynet, do đó tái tạo trong mạng có dây các điều kiệntruyền thông của mạng lưới không dây mô phỏng

Quy trình sử dụng QOMET cho các thí nghiệm mô phỏng bao

Trang 23

trên nên tảng Linux và các thiệt bị chuyên mạch của nó hồ trợ

OpenFlow đề định tuy tùy chỉnh linh hoạt

GNS3 được sử dụng đề mô phỏng, cau hình, kiểm tra dé khắc

phục sự cố mạng ảo và mạng thực GNS3 cho phép bạn chạy

4 GNS3 [7] một cấu trúc liên kết nhỏ chỉ bao gồm một số thiết bị trên máy

tính xách tay, đến những thiết bị có nhiều thiết bị được lưu trữ

trên nhiêu máy chủ

Đã có rât nhiêu công trình nghiên cứu sử dụng các công cụ được giới thiệu bên trên đê triên khai, có thê kê đên như:

QOMB sử dụng bộ công cụ QOMET dé gia lập lai mang không dây trong môi trường

mạng có dây Cơ sở hạ tầng của QOMB là StarBED ( một hệ thống gồm hàng trăm máy

tính và thiết bị chuyên mạch) phục vụ cho thử nghiệm mạng quy mô lớn được đặt tạiViện Thông tin Quốc gia và Công nghệ Truyền thông, Trung tâm Nghiên cứu Hokuriku,

ở Ishikawa, Nhật Bản Mô phỏng mạng không dây đa bước kết quả thử nghiệm liên quanđến phân tích hiệu suất OLSR trong mạng lưới và MANET minh họa các tính năng chính

và khả năng sử dụng của QOMB.

AEROMAN được thiết kế và triển khai để đánh giá định tuyến giao thức cho mạng không dây

đa bước AEROMAN sử dụng QOMET để tính toán các thông số của các liên kết không dây,chang hạn như băng thông, độ trễ, tỷ lệ mat gói, trong điều kiện không có tranh chấp Đề tính đến

thuộc tính của quyên truy cập phương tiện dựa trên tranh chấp cho kênh không dây, AEROMAN

sử dụng mô hình lưu lượng thích ứng (AT) đề mô phỏng tính năng chia sẻ của cơ chế CSMA CA

trong IEEE 802.11 Các đánh giá cho thấy mô hình AEROMAN với AT hiệu quả nắm bắt cácđặc điểm của truyền thông không dây Vài thử nghiệm sử dụng OLSR làm giao thức định tuyến

12

Trang 24

với các các chỉ số định tuyến được thực hiện đề minh họa chính các tính năng và khả năng sửdụng của AEROMAN.

2.1.3.3 Ưu - nhược điểm

Hai cách tiếp cận trước đều có ưu và nhược điểm riêng, với giả lập mạng thì có thé kếthợp một cách tương đối những ưu điểm của testbed và trình mô phỏng Về chi phí triểnkhai thì trình giả lập không cao như một hệ thống testbed, về tính linh hoạt thì nó tậndụng được sự linh hoạt của trình mô phỏng, ở đây nó là trung bình cả ưu và nhược điểm

của hai cách trước, vì vậy cũng có thê nói những điêm này vừa là ưu vừa là nhược điêm.

3 Hướng tiép cận

Sau khi tìm hiểu về cách phương pháp đã có trước đây và hiện nay, biết được ưu nhược

điểm của từng loại, xét đến khả năng hiện tại nhóm tác giả đã chọn trình giả lập là phươngpháp dé xây dựng và triển Với sự trung hòa các ưu nhược điểm của trình mô phỏng vàtestbed đây là một phương pháp tốt đề xây dựng đề tài và phù hợp với xu hướng hiện

nay.

Trong dé tài nhóm tác giả kết hợp hai công nghệ hiện đại là OpenStack và DockerContainer dé xay dung hé thong dé thực thi các kịch ban thử nghiệm đa dạng của chuẩnkết nối mạng không dây phô biến hiện nay 802.11(wifi) đáp ứng yêu cầu và khả năngcủa tác giả về chỉ phí và tính linh động

Hiện tại mô hình này đã có trên thế giới với nhiều sự kết hợp khác nhau từ các công cụ

triển khai và quản lý đa dạng Tuy nhiên, trong đề tài nhóm tác giả sẽ kết hợp giữa

Docker Container — Mininet Wifi và công cụ quản lý Kubernetes dé triển khai dé tài Mô

hình như sau:

13

Trang 25

Mininet Wifi

Kubernetes (K8S) controller

Š Physical Physical

hysicatnode Masts Node Worker Node Worker

Hình 1: Kiến trúc cơ bản dé tàiTrong kiến trúc này, các các máy ảo sẽ chạy theo mô hình Master Node — Worker Nodetheo kiến trúc của Kubernete Trên những node này sẽ triển khai các container và chạygiả lập bằng cách viết các file thiết kế hệ thống mạng không dây gồm các: host,controller, access point, cho mininet wifi dé thé hién lai hé thong mang wifi Với việc

sử dung file thiết kế và kiến trúc như vậy chúng ta có thé dé dang thao tác thay đổi trên

file câu hình và triển khai lại nhanh chóng, ngoài ra việc đo lường, kiểm tra các tính năng

và khó khăn Những thách thức này là tiền đề cho các phần mềm, công cụ giả lập thử

14

Trang 26

nghiệm các môi trường không dây ra đời Và Mininet-Wifi là một trình giả lập đáp ứng được những nhu câu đó.

Mininet-WiFi như một công cụ dé mô phỏng các kịch bản OpenFlow / SDN không dây

cho phép các thử nghiệm có độ trung thực cao tái tạo môi trường làm việc mạng thực.

Mininet-Wifi cung cấp một trình giả lập hệ thống mạng ảo không dây, thiết lập một hệthống mạng không dây ảo bằng file cấu hình, điều nay cho phép người sử dung dé dàngthiết kế hệ thống tùy ý, dé dàng sửa đổi cau hình cũng như kiến trúc của hệ thống, đo

lường các thử nghiệm, tính linh động cao.

Trình giả lập Mininet-Wifi với các trạm không dây ảo và điểm truy cập trong khi vẫn

giữ các khả năng ban đâu của SDN và kiên trúc phân mêm ảo hóa.

Mininet-Wifi là một nhánh của Mininet được phat triển dé hỗ trợ cho các thử nghiệm

không dây wifi bằng cách thêm các trạm (STA) và điểm truy cập (AP) không day dựatrên trình điều khiển không dây Linux phổ biến như: mac80211/SoftMac3, hỗ trợ hầuhết các tính năng của NIC cho phép Mininet-Wifi thực hiện kiểm soát chỉ tiết với góimạng không dây ở lớp thấp

15

Trang 27

SDN là kiến trúc được xây dựng nhằm mục đích làm cho mạng trở nên linh hoạt, mục

tiêu của SDN là cho phép các kỹ sư và người quản trị mạng nhanh chóng đáp ứng các

nhu cầu thay đôi qua một bộ điều khiến tập trung Trong SDN người quản trị có thé địnhhình lưu lượng truy cập từ bộ điều khiển tập trung mà không cần đi đến các thiết bị riêng

lẻ Bộ điều khiển SDN tập trung quản lý các thiết bị cung cấp dịch vụ mạng bất cứ khi

nào can, bat kê loại kết nối nào giữa Server và thiết bi SDN gồm nhiều công nghệ mạng

được thiết kế để giúp mang trở nên linh hoạt hơn hỗ trợ ảo hóa và cơ sở hạ tầng lưu trữ

của trung tâm dữ liệu hiện đại.

16

Trang 28

Traditional Network Software-Defined Network

Switch

\ “kg Controller

wee Plane *% Machine^

«— Data Plane

Hình 3: Mang truyền thong va SDN

SDN tách riêng các control plane phân tan (distributed) từ các forwarding plane va đưa (offload) các chức nang cua control plane vào trong control plane tập trung (centralized).

Control plane va forwarding plane là 2 dang tiến trình mà các thiết bi mạng đều thựchiện Có một số phiên bản của SDN nhưng tat cả các giải pháp SDN đều bao gồm balớp: lớp ứng dụng, lớp điều khién và lớp cơ sở hạ tang

- Lớp ứng dụng chứa các ứng dụng hoặc chức năng mạng điển hình mà các tô chức sử dụng, có thể bao gồm các hệ thống phát hiện xâm nhập, cân bằng tải hoặc tường lửa.

Trong một mạng truyền thống sẽ sử dụng các thiết bị chuyên dụng, như tường lửa hoặccân bang tai, SDN sẽ thay thế thiết bi đó bằng một ứng dụng sử dụng bộ điều khiển dé

quản lý “hành vi” của data plane.

- Lớp điều khiển đại điện cho phần mềm điều khiển SDN tập trung hoạt động như bộ

não của SDN Bộ điều khiển này nằm trên một máy chủ và quản lý các chính sách vàluồng lưu lượng trên toàn mạng

- Lớp cơ sở hạ tầng được tạo thành từ các thiết bị vật lý trong mạng

17

Trang 29

4.2.2 SDWN

Với tinh than tương tự SDN, SDWN nhằm cung cấp điều khién tập trung có lập trìnhcủa mạng không dây với các hướng dẫn đã nhận và chịu trách nhiệm về việc truyền vànhận lưu lượng truy cập qua liên kết không dây

Như ngày nay, cách thực tế duy nhất để dùng thử WiFi và Open Flow cùng nhau là sửdụng phần mềm nguồn mở và các giải pháp hệ điều hành như OpenWRT cho phép

chuyên các bộ định tuyến không dây vào các công tắc hỗ trợ OpenFlow Tuy nhiên, ngay

cả OpenWRT cũng bị hạn chế trong một tập hợp tài nguyên hạn chế và giống như bat kỳ

đã được thử nghiệm, cách tiếp cận này phải đối mặt với những thách thức trên quy môcác thử nghiệm, các tùy chọn kiểm soát và tái lập cũng như thời gian thiết lập cao

Mặt khác, trình giả lập SDN không dây sẽ là một tùy chọn thú vị đề làm việc với nhiềuthiết bị (cả AP và STA) ở quy mô hợp lý trên môi trường do người thử nghiệm xác định,cho phép nghiên cứu thêm các tính năng SDWN mới đến việc tạo mẫu nhanh và các lợiích thử nghiệm phong phú đã biết bởi cộng đồng người dùng Mininet lớn

5 Containernet

Containernet là một nhánh cua Mininet cho phép sử dung Docker container làm may chu

Mininet cũng như các trạm Mininet-WiFi Điều nay cho phép các chức năng thú vị chomạng thử nghiệm / đám mây được xây dựng Việc tích hợp được thực hiện bằng cách

phân lớp con của các lớp Máy chủ / Trạm ban đâu.

Cac tính năng của containernet:

- Thêm, xóa vùng chứa Docker vào câu trúc liên kêt Mininet.

- Kêt nôi vùng chứa Docker với câu trúc liên kêt (với thiệt bị chuyên mach, vùng chứa

khác hoặc máy chủ Mininet cũ).

18

Trang 30

- Thực thi các lệnh bên trong vùng chứa bằng cách sử dung Mininet CLI.

- Thay đổi cấu trúc liên kết động

- Thêm máy chủ / vùng chứa vào cấu trúc liên kết Mininet đang chạy

- Kết nối máy chủ / bộ chứa docker với cau trúc liên kết Mininet đang chạy

- Xóa máy chủ / vùng chứa Docker / liên kết khỏi cau trúc liên kết Mininet đang chạy.

- Giới hạn tài nguyên của vùng chứa Docker.

- Giới hạn CPU với tùy chọn chia sẻ CPU Docker.

- Giới hạn CPU với các tùy chọn thời hạn / hạn ngạch Docker CFS.

- Giới hạn bộ nhớ / hoán đồi

- Thay đổi giới hạn CPU / mem trong thời gian chạy!

- Hién thị các công vùng chứa và đặt các biến môi trường của vùng chứa thông qua API

Python.

- Liên kết kiểm soát lưu lượng (chậm trễ, bw, mat mát, chập chòn)

- Cài đặt tự động dựa trên Ansible playbook

6 Docker

Docker là một nền tang dé cung cấp cách dé building, deploying và running ứng dung

dễ dàng hơn bằng cách sử dụng các containers (trên nền tảng ảo hóa) Ban đầu viết bằng

Python, hiện tại đã chuyên sang Golang

19

Trang 31

Các containers cho phép lập trình viên đóng gói một ứng dụng với tat cả các phần cầnthiết, chăng hạn như thư viện và các phụ thuộc khác, và gói tất cả ra dưới dạng một

package.

Docker khá giống với virtual machine Một số lợi ích của docker:

- Tinh dé ứng dụng: Docker rất dé cho mọi người sử dụng từ lập trình viên, sys admin

nó tận dụng lợi thé của container dé build, test nhanh chóng Có thé đóng gói ứng dụng

trên laptop của họ và chạy trên public cloud, private cloud Câu thần chú là “Build

once, run anywhere”.

- Toc độ: Docker container rat nhẹ và nhanh, ban có thé tao va chạy docker container trong vai giây.

- Môi trường chạy và khả năng mở rộng: Bạn có thé chia nhỏ những chức năng của ứng

dụng thành các container riêng lẻ Vi dung Database chạy trên một container và Redis

cache có thể chạy trên một container khác trong khi ứng dụng Node.js lại chạy trên mộtcái khác nữa Với Docker, rất dé đề liên kết các container với nhau dé tạo thành một ứngdụng, làm cho nó đễ dàng scale, update các thành phần độc lập với nhau

Với xu hướng dịch chuyển sang microservices của các hệ thống lớn, Docker đang làm

một thành phần cực kỳ quan trọng, làm cho nó trở thành một phần của nhiều công cụDevOps Hiện tại thé giới bắt đầu sử dụng thêm một công cụ quản lý container tiên tiễnkhác là Kubernetes Tiếp theo nhóm tác giả sẽ giới thiệu về Kubernetes

Trang 32

có thé cau hình dé chạy các ứng dụng, dich vụ sao cho phù hợp nhất khi chúng tương tácvới nhau cũng như với bên ngoài Bạn có thê điều chỉnh tăng giảm tài nguyên, bản chạy

phục vụ cho dịch vụ (scale), bạn có thể cập nhật (update), thu hồi update khi có van đề

và triển khai ứng dụng dưới dạng container hay còn gọi là Container orchestrationengine Kubernetes là một công cụ mạnh mẽ, mềm dẻo, dễ mở rộng khi so sánh nó với

công cụ tương tự là Docker Swarm.

Kubernetes orchestration cho phép bạn xây dựng các dịch vụ ứng dụng mở rộng nhiêu containers Nó lên lịch các containers đó trên một cụm, mở rộng các containers và quản

lý tinh trạng của các containers theo thời gian.

Các ứng dụng production thực tế mở rộng nhiều containers Các containers đó phải đượctriển khai trên nhiều server hosts Kubernetes cung cấp khả năng phối hợp và quản lý

cân thiệt đê triên khai các containers theo quy mô cho các workloads đó.

Bằng việc sử dụng docker, trên 1 host bạn có thé tạo ra nhiều container Tuy nhiên nếubạn có ý định sử dụng trên môi trường production thì phải bắt buộc phải nghĩ đến nhữngvấn đề dưới đây:

- Việc quan lý hàng loạt docker host.

- Container Scheduling.

- Rolling update.

- Scaling/Auto Scaling.

- Monitor vòng đời va tình trạng sống chết của container

- Self-healing trong trường hợp có lỗi xảy ra (Có khả năng phát hiện và tự correct lỗi).

- Service discovery.

21

Trang 34

name

Hình 4: File cấu hình yaml

Sơ đồ cơ bản kiến trúc Kubernetes:

23

Trang 35

Controller Manager

etcd

Hình 5: So đồ kiến trúc co bản Kubernetes

7.2 Tính năng

Sau khái niệm kubernetes là gì chúng ta hãy đến với chức năng của nó Kubernetes quản

ly các docker host và cấu trúc container cluster Ngoài ra, khi thực thi các container trên K8s, bằng cách thực hiện replicas (tạo ra nhiều container giống nhau) làm cho hệ thống

có sức chịu lỗi cao và tự động thực hiện load balancing Thông qua cơ chế load balancing, chúng ta có thé tăng giảm số lượng container replica (auto scaling).

24

Trang 36

Scaling / Auto Scaling

Hình 6: Tĩnh năng Scaling/Auto Scaling

Khi thực hiện phan chia container vào các Node (docker host), dựa trên các loại docker

host kiểu như “Disk SSD” hay “số lượng clock của CPU cao” Hoặc dựa trên loạiWorkload kiểu như “Disk I/O quá nhiều”, “Băng thông đến một container chỉ định quá

nhiều” K8s sẽ ý thức được việc affinity hay anti-affinity và thực hiện Scheduling một

cách hợp lý cho chúng ta.

25

Trang 37

Scheduling and

Affinity

Trong trường hợp không được chỉ định host cụ thể, K8s sẽ thực hiện scheduling tuỳthuộc vào tinh trạng CPU, memory của docker host có trống hay không Vì vậy, chúng

ta không cân quan tâm đên việc quản lý bô trí container vào các docker host như thê nảo.

Hon nữa, trường hợp resource không đủ, thì việc auto scheduling của K8s cluster cũng

sẽ được thực hiện tự động.

26

Trang 38

Hình 8: Tinh năng Management

Được xây dựng theo quan điểm tính chịu lỗi cao, K8s thực hiện monitor các containertheo tiêu chuẩn Trong trường hợp bất ngờ nào đó, khi một container process bị đừng,K8s sẽ thực hiện Self-hearing bằng cách scheduling một container nữa

Thêm nữa, ngoài việc monitor hệ thống, k8s còn có khả năng thiết lập health check bang

HTTP/TCP script.

27

Trang 39

Hình 9: Tinh năng Auto Healing

Trường hợp sau khi auto scaling, phat sinh một van đề của endpoint đến container Trongtrường hợp sử dụng máy ảo, bang việc setting load balancing endpoint sẽ được sử dụng

như một VỊP.

K8s cũng có một chức năng tương tự như vậy đó là Service Service của k8s cung cấp

chức năng load balancing cho hàng loạt các container được chỉ định Việc tự động thêm,

xoá container thời điểm scale là điều hiển nhiên, khi một container xay ra sự cố thì tự

động cách ly.

Khi thực hiện rolling update container thì việc đầu tiên k8s sẽ làm là cách ly container

cho chúng ta, vì vay k8s có thé đảm nhận việc quản ly các endpoint ở mức SLA cao.

Trong kiên trúc Microservice, đê sử dụng các image container được tao ra tương ứng với

từng chức năng và deploy chúng thì chức năng Service discovery thực sự cần thiết

28

Trang 40

= Service A mm Container A (Docker Image A)

| | Service B “= Container B (Docker Image B)

Hinh 10: Tinh nang Service Discovery

K8s là một Platform nhưng có kha năng liên kết tốt với các hệ sinh thái bên ngoài, có

nhiều middleware chạy trên các service của k8s, trong tương lai chắc chắn sẽ còn nhiều

hơn nữa.

- Ansible: Deploy container tới Kubernetes.

- Apache Ignite: Sử dung Service Discovery của Kubernetes, tự động tao va scaling k8s

cluster.

- Fluentd: gửi log của container trong Kubernetes.

29

Ngày đăng: 23/10/2024, 09:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN