Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 78 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
78
Dung lượng
1,94 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - TRẦN THỊ NỤ NGHIÊN CỨU CÔNG NGHỆ CÂN BẰNG TẢI (LOAD BALANCING) ỨNG DỤNG VÀO TRIỂN KHAI CÂN BẰNG TẢI CHO CÁC WEBSERVER LỚN TRONG DOANH NGHIỆP LUẬN VĂN THẠC SĨ KỸ THUẬT VIỄN THÔNG Hà Nội – Năm 2015 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - TRẦN THỊ NỤ Chuyên ngành: Kỹ thuật Viễn Thông NGHIÊN CỨU CÔNG NGHỆ CÂN BẰNG TẢI (LOAD BALANCING) ỨNG DỤNG VÀO TRIỂN KHAI CÂN BẰNG TẢI CHO CÁC WEBSERVER LỚN TRONG DOANH NGHIỆP LUẬN VĂN THẠC SĨ KỸ THUẬT VIỄN THÔNG NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS PHẠM NGỌC NAM Hà Nội – Năm 2015 Mục lục MỤC LỤC MỤC LỤC LỜI CAM ĐOAN .4 LỜI CẢM ƠN .5 DANH MỤC CÁC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT DANH MỤC BẢNG BIỂU DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ .8 MỞ ĐẦU 10 CHƢƠNG – TỔNG QUAN VỀ WEB-SERVER LOAD BALANCING VỚI KHẢ NĂNG MỞ RỘNG 11 1.1 Kiến trúc web với khả mở rộng 11 1.1.1 Khả mở rộng .11 1.1.2 Hiệu 12 1.1.3 Khả có sẵn 12 1.1.4 Tính đáp ứng 12 1.1.5 Downtime impact 13 1.2 Giải pháp load balancing cho kiến trúc web với khả mở rộng 13 1.2.1 Cân tải cho webserver .13 1.2.2 Lợi ích giải pháp Load Balancing .16 1.3 Các phƣơng pháp triển khai Load Balancing 19 1.3.1 Cân tải phần cứng 19 1.3.2 Load balancing phần mềm 23 Mục lục 1.4 Kết Luận 23 CHƢƠNG – CÂN BẰNG TẢI WEB SERVER BẰNG PHẦN MỀM 24 2.1 Thuật toán cân tải tĩnh (Static LB) .24 2.1.1 Thuật toán DNS Round Robin 24 2.1.2 Thuật toán Weighted Round Robin 26 2.2 Thuật toán cân tải động (Dynamic LB) 26 2.2.1 Thuật toán Dynamic Round Robin (DRR) 26 2.2.2 Thuật toán Fastest 27 2.2.3 Thuật toán Least Connections (LC) 27 2.2.4 Thuật toán Observed 30 2.2.5 Thuật toán Predictive .31 2.2.6 Thuật toán Least Bandwidth (LBw) 31 2.3 Kết luận 33 CHƢƠNG – CÀI ĐẶT VÀ MÔ PHỎNG CÂN BẰNG TẢI WEB-SERVER VỚI CITRIX NETSCALER .35 3.1 Bài toán mô đặt 35 3.1.1 Mục đích mô 35 3.1.2 Mô hình mô 35 3.1.3 Kết cần đạt đƣợc 37 3.2 Giới thiệu Citrix Netscaler 38 3.2.1 Khả ứng dụng Citrix Netscaler 38 3.2.2 Các tính Citrix Netscaler 38 3.2.3 Các dịch vụ NetScaler hỗ trợ [8] .41 3.3 Cài đặt Citrix NetScaler .42 3.3.1 Cài đặt VMWare Worsktation 10 43 Mục lục 3.3.2 Cài đặt tool VMWare ovf tool 43 3.3.3 Cài đặt Citrix NetScaler NSVPX-ESX-10.5-55.8 [6],[11] .43 3.4 Cài đặt Webserver .45 3.5 Thực mô Loadbalacing .46 3.5.1 Setup Loadbalacing Netscaler 46 3.5.2 Cấu hình thuật toán Load Balancing 50 3.5.4 Thiết lập hai web-server máy chủ 53 3.6 Kết mô 54 3.6.1 Mô theo thuật toán RR 54 3.6.2 Mô theo thuật toán LeastConnection .57 3.7 Đánh giá kết mô 60 3.8 Kết luận 62 KẾT LUẬN .63 TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 66 I Cài đặt NetScaler NSVPX-ESX-10.5-55.8 66 II Cài đặt Web-server 73 III Code trang web server demo 74 IV Code trang web server demo 75 Lời cam đoan LỜI CAM ĐOAN Tôi xin cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố công trình khác Tác giả TRẦN THỊ NỤ Lời cảm ơn LỜI CẢM ƠN Để hoàn thành đƣợc luận văn này, em đƣợc học hỏi kiến thức vô quý báu từ thầy, cô giáo trƣờng Đại học Bách Khoa Hà Nội suốt năm năm học đại học năm học cao học vừa qua Em vô biết ơn dạy dỗ, bảo tận tình thầy, cô thời gian học tập nghiên cứu trƣờng Em đặc biệt bày tỏ lòng biết ơn tới thầy PGS.TS Phạm Ngọc Nam – Viện Điện Tử Viễn Thông – Trƣờng Đại Học Bách Khoa Hà Nội bảo định hƣớng cho em nghiên cứu đề tài Thầy cho em lời khuyên bổ ích quý báu suốt trình hoàn thành luận văn Do hạn chế thời gian, tài liệu trình độ thân, luận văn em tránh khỏi thiếu sót, mong thầy cô góp ý củng cố đề luận văn đƣợc hoàn thiện Em xin chân thành cảm ơn! Danh mục ký hiệu chữ viết tắt DANH MỤC CÁC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng việt ADC DB Application Delivery Control Database Điều khiển phân phối ứng dụng Cơ sở liệu DMZ Demilitarized Zone Một vùng mạng trung lập mạng nội mạng internet DNS Domain Name System Hệ thống tên miền DNSRR DNS Round Robin Thuật toán quay vòng DNS FIPS Tiêu chuẩn xử lý thông tin liên bang FTP HSM HTTP IPv4 ISP Federal Information Processing Standard File Transfer Protocol Hardware Security Module Hyper Text Transfer Protocol Internet Protocol version Internet Service Provider LB Load balancing Cân tải LBw LC RTSP Thuật toán bang thông Thuật toán kết nối Giao thức tạo luồng thời gian thực SSL TCP WAN Least Bandwidth Least Connections Real Time Streaming Protocol Secure Sockets Layer Transfer Control Protocol Wide Area Network WRR Weighted Round Robin Thuật toán RR có gắn trọng số Giao thức truyền tập tin Mô đun bảo mật phần cứng Giao thức truyền tải siêu văn Phiên thứ giao thức mạng Nhà cung cấp dịch vụ internet Giao thức bảo mật Giao thức điều khiển giao vận Mạng đô thị Danh mục bảng biểu DANH MỤC BẢNG BIỂU Bảng 1- So sánh scale out scale up 15 Bảng 1- So sánh hệ thống có cân tải hệ thống thông thường 17 Bảng 2- Thuật toán Least Connections 29 Bảng 2- Thuật toán Least Bandwidth 32 Bảng 3- Log monitor chạy cân tải thuật toán LeastConnection 60 Danh mục hình vẽ, đồ thị DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1- Mô hình cân tải web-server 16 Hình 1- So sánh hệ thống có cân tải hệ thống thông thường 17 Hình 1- 3.Mô hình giải pháp high availability load balancing cho website 20 Hình 1- Mô hình Load balancing server 22 Hình 2- Cân tải DNS 25 Hình 2- Thuật toán Weighted Round Robin 26 Hình 2- Thuật toán Least Connections 28 Hình 2- Cân tải Least Bandwidth 32 Hình 3- Mô hình Load balacing 36 Hình 3- Topology vật lý load balancing 37 Hình 3- Cấu hình thông số IPv4, Netmark, gate way cho Netscaler .44 Hình 3- Khởi động thành công Netscaler .44 Hình 3- Bật máy chủ .46 Hình 3- Enable tính LB 47 Hình 3- Tạo service xem thông số service vừa tạo 49 Hình 3- Show bindings Service .50 Hình 3- Web-server 54 Hình 3- 10 Web-server 54 Hình 3- 11 Log monitor chưa có kết nối từ client tới server 55 Hình 3- 12 Chạy cân tải thuật toán RoundRobin 56 Hình 3- 13 Log monitor chạy cân tải thuật toán RoundRobin .57 Hình 3- 14 Logmonitor chạy cân tải thuật toán LeastConnection 59 Hình 3- 15 Dung lượng trang web lượng truy cập với công nghệ ảo hóa Citrix 61 Chƣơng – Cài đặt mô cân tải web-server với Citrix Netscaler Việc thực mô bị chậm bị treo server nguyên nhân phần mềm đƣợc cài đặt máy tính xách tay có cấu hình thấp, tốc độ xử lý yếu Để thực tốt cần phải cài đặt máy tính có cấu hình cao, tốc độ xử lý nhanh 3.8 Kết luận Chƣơng đƣa toán mô cho hệ thống load balancing phần mềm theo công nghệ Citrix- cụ thể Citrix Netscaler Ngƣời viết luận văn giới thiệu tính nhƣ mô đƣợc hai thuật toán hay dùng mà phần mềm hỗ trợ RR LC Tùy vào yêu cầu kỹ thuật đặt yêu cầu hạ tầng, mà doanh nghiệp xây dựng cho toán LoadBalancing phức tạp đầy đủ tính bảo mật, nhƣ giới hạn bang thông…để phục vụ mục đích doanh nghiệp 62 Kết luận KẾT LUẬN Việc áp dụng công nghệ cân tải bƣớc tiến mang tính định cho phát triển doanh nghiệp lợi ích mà mang lại Nhƣ là: tăng cƣờng khả mở rộng, nâng cao hiệu suất, hệ thống web server hay web application có tính sẵn sàng cao khắc phục cố cao Đồng thời có công nghệ doanh nghiệp dễ dàng theo dõi quản lý tập trung hệ thống server, bảo dƣỡng hệ thống server mà không cần tắt dịch vụ Mặc dù luận văn đƣa nghiên cứu tổng quan kiến trúc web với hệ thống mở rộng, giải pháp cân tải thuật toán cân tải áp dụng cho doanh nghiệp, nhƣ đƣa đƣợc toán mô mô thành công với công nghệ cân tải Citrix- Citrix Netscaler, nhƣng luận văn tồn đọng vấn đề hạn chế: - - Chƣa mô đƣợc với số lƣợng lớn request từ client tới server Cấu hình cài đặt máy tính sử dụng mô hạn chế nhớ, ổ cứng tốc độ xử lý nên trình mô xảy tƣợng máy chủ bị treo tốc độ chậm so với thực tế Mô đƣợc thuật toán Lý yêu cầu Citrix cần cấu hình máy chủ lớn nhiều request client để thực đƣợc thuật toán lại Khi mô tính nâng cao khác LB chƣa đƣợc đƣa vào mô Những hạn chế nhận thấy trên, phần yếu tố khách quan, phần - yếu tố chủ quan thời gian nghiên cứu có hạn nhƣ trình độ kinh nghiệm chƣa đủ để thực toán mô tốt Cũng từ đây, ngƣời viết luận văn xin đƣa đề xuất nghiên cứu mở rộng nhƣ sau: 63 Kết luận - Tập trung nghiên cứ, khai thác đƣợc hết tính mô nhƣ chƣa đƣợc mô luận văn công nghệ Load Balancing nhằm tối ƣu hóa việc quản lý tập trung server nâng cao tính an toàn, khả mở - rộng chúng Mở rộng mô hình với hệ thống giả lập có switch, router, DB server để - đánh giá LB sản phẩm công nghệ khác nhau: Ctrix, F5 Áp dụng việc xây dựng hệ thống Load Balancing mô phòng thí nghiệm nhằm trình diễn, giới thiệu, hỗ trợ tìm hiểu, nghiên cứu sản phẩm thực tế mạng viễn thông phục vụ công nghệ thông tin 64 Tài liệu tham khảo TÀI LIỆU THAM KHẢO Cal Valeria Cardellini, Michele Colajani, Philip S.Yu (1999), Dynamic Load Balancing on Web server Systems, IBM T.J Watson Research Center Tony Bourke (2001), Server Load Balancing, O'Reilly & Associates, Inc, tr.15, 62-70 Chandra Kopparapu (2002), Load Balancing Servers, Firewall, Caches, John Wiley & Sons Inc, tr.5, 49-74 Cal Henderson (2006), Building scalable Web Sites Citrix Systems Inc (2008), Citrix NetScaler Command Reference Guide, tr.9-27 Citrix Systems Inc (2009), Citrix NetScaler VPX Getting Started Guide, tr.9-14 http://blogs.citrix.com/2010/06/01/configuring-verifying-and-monitoring persistence-on-netscaler/ Citrix Systems Inc (2012), Citrix NetScaler Traffic Management Guide, tr.45155 https://hlouwers.wordpress.com/2012/04/24/installing-citrix-netscaler-vpx-intovmware-workstation/ 10 Nguyễn Tuấn Linh (2013), Nghiên cứu công nghệ ảo hóa ứng dụng web kết hợp tối ưu cân tải, Học viện Công Nghệ Bƣu Chính Viễn Thông, tr.60-70 11 http://www.aidanfinn.com/2013/03/deploying-load-balanced-servers-using vmm-2012-sp1-and-citrix-netscaler/ 12 Citrix Systems Inc (2014), Citrix NetScaler VPX and CloudBridge VPX Licensing Guide 13 https://www.citrix.com/ 14 http://support.citrix.com/ 15 http://www.vmware.com/ 65 Phụ lục PHỤ LỤC I Cài đặt NetScaler NSVPX-ESX-10.5-55.8 a) Down load NSVPX-ESX-10.5-55.8 Thực vào trang web hãng Citric để down load gói cài “NSVPXESX-10.5-55.8”: http://citrix.com/ Sau thực vào phần Product chọn mục NetScaler: Hình I- 1.Đường dẫn download Netscaler 66 Phụ lục Hình I- Download Netscaler b) Cài đặt Netscaler[9] Mở thƣ mục download NSVPX về, click chuột phải vàp NSVPX-ESX-10.555.8_nc.ovf open with VMware Workstation: Hình I- Thực cài đặt Netscaler 67 Phụ lục Sau mở xong hình nhƣ sau: Hình I- Import gói cài vào Vmware Tên virtual mechine đƣờng dẫn pass new virtual mechine theo mặc định là: NSVPX-ESX-10.5-55.8_nc C:\Users\Nu.tt- Vtb\Documents\Virtual Machines\NSVPX-ESX-10.5-55.8_nc Ta sửa lại, để nguyên Ở ngƣời viết luận văn sửa lại tên virtual mechine thành: NSVPX-ESX Và đƣờng dẫn: D:\CAO HOC\Luan van tot nghiep\Nu project\Chuong trinh mo phong\Virtual Machines\NSVPX-ESX Click import 68 Phụ lục Hình I- Màn hình import xong gói cài Upgrate virtual mechine lên version 10.(cùng với VMWare dùng) Hình I- Upgrate version virtual mechine cho Netscaler 69 Phụ lục Sau thực cấu hình Network Adapter Chọn Network Adapter -> Network connection chế độ Bridged Trƣớc khởi động Netscaler, ta phải thực bƣớc chuyển đổi file NSVPX-ESX-10.5-55.8.ovf sang file dạng: *.vmx Thực vào hình cmd windows thực cài đặt Vmware, gõ lệnh: - Cmd: hình cmd.exe lên Tìm đến đƣờng dẫn cài đặt vmware ovf tool - C:\Program Files>cd “Vmware\Vmware OVF Tool\ Thực thiện thao tác chuyển đổi file nhƣ Hình I-7: (a) – Quá trình chuyển đổi file ovf 70 Phụ lục (b) Chuyển đối thành công Hình I- Quá trình chuyển đổi file ovf sang file vmx Tiếp sau đó, sau chuyển đổi thành công, ta thực click Power on in VMWare: 71 Phụ lục (a)- Thao tác Power On Netscaler (b)- Màn hình power on thành công Hình I- 8.Power on virtual machine Netscaler 72 Phụ lục II Cài đặt Web-server Lấy gói cài windows XP gói cài Xampp máy tính theo Chƣơng 3, mục 3.4 Sau thực cài máy ảo Vmware nhƣ cài win máy vật lý Hình II- Cài đặt windowsXP Vmware Cài đặt xong windows XP Tiếp tục cài đặt Xampp cách copy gói cài vừa download đƣợc lên máy windows Giải nén gói cài click đúp vào file exe để cài đặt bình thƣờng theo hƣớng dẫn Cài đặt xong phần mềm Xampp có nghĩa ta có máy chủ để thực triển khai ứng dụng Cài đặt xong ta có thông tin cài đặt nhƣ Hình II-2: 73 Phụ lục Hình II- Cài đặt Xampp windowsXP Start máy chủ hay nói khác start phần mềm Xampp lên, ta click vào xampp-start.exe Để tắt máy chủ, click vào xampp-stop.exe Một khác thực click vào xampp-control.exe bật tắt máy chủ lên nhƣ Hình 3-5 Chƣơng III Code trang web server demo CBRRTD-VTB 74 HTML 4.01 Phụ lục body {background-color:lemonchiffon} h1 {color:Blue; text-align:center;} h2 {color: green; font-size:300%; text- align:center; margin-top: 100px} p {color:red;text-align:center} Hello! Welcome to webserver of website: CREDIT RISK WARNING-VIETINBANK 1! * -* -* It works! IV Code trang web server demo CBRRTD-VTB body {background-color:lemonchiffon} 75 4.01 Phụ lục h1 {color:Blue; text-align:center;} h2 {color: green; font-size:300%; text- align:center; margin-top: 100px} p {color:red;text-align:center} Hello! Welcome to webserver of website: CREDIT RISK WARNING-VIETINBANK 2! * -* -* It works! 76 [...]... cho vấn đề này Vì vậy em đã chọn đề tài: Nghiên cứu công nghệ cân bằng tải (Load Balancing) ứng dụng vào triển khai cân bằng tải cho các webserver lớn trong doanh nghiệp làm đề tài luận văn tốt nghiệp của mình Luận văn sẽ đƣa ra những cái nhìn tổng quan về kiến trúc web-server lớn cần có tính sẵn sàng và khả năng mở rộng nhƣ thế nào cũng nhƣ đƣa ra những thuật toán cân bằng tải mà các công nghệ cân. .. đến dịch vụ của mình 1.3 Các phƣơng pháp triển khai Load Balancing Có 2 phƣơng pháp cơ bản để triển khai load balancing cho web server là cân bằng tải bằng phần cứng và cân bằng tải bằng phần mềm 1.3.1 Cân bằng tải bằng phần cứng 1.3.1.1 Sử dụng các bộ cân bằng tải bằng phần cứng Về kỹ thuật, hệ thống sẽ bao gồm các hệ thống con: a) Web server Đây là hệ thống public, phục vụ cho mục đích marketing,... tải nào, phần cứng hay phần mềm, và thuật toán sẽ áp dụng cho các trang web của họ ra sao là một điều hết sức khó khăn Chƣơng 2 sẽ đƣa ra các giải pháp cân bằng tải cho phần mềm dựa trên các thuật toán cân bằng tải tĩnh và cân bằng tải động đáp ứng theo từng điều kiện của mỗi doanh nghiệp 2.1 Thuật toán cân bằng tải tĩnh (Static LB) 2.1.1 Thuật toán DNS Round Robin Thuật toán cân bằng tải DNS Round... tải cho nhau mới có thể chạy tốt các ứng dụng nhƣ vậy Cả doanh nghiệp và nhà cung cấp dịch vụ cần sự linh hoạt để triển khai thêm các máy chủ một cách nhanh chóng để đáp ứng đƣợc nhu cầu xử lý công việc trong doanh nghiệp Server Load Balancing làm cho nhiều máy chủ xuất hiện nhƣ là một máy chủ duy nhất, một dịch vụ đơn ảo, phân phối các yêu cầu ngƣời sử dụng trong các máy chủ Hãy tƣợng tƣợng máy chủ... lại Bằng cách sử dụng luân chuyển vòng DNS nhƣ ở trên, tất cả các yêu cầu đối với một site nào đó đều đƣợc phân phối đều đến tất cả các máy trong cluster Chính 25 Chƣơng 2 – Cân bằng tải web-server bằng phần mềm vì vậy, với phƣơng pháp cân bằng tải này, tất cả các nút trong cluster đều đƣợc sử dụng 2.1.2 Thuật toán Weighted Round Robin Weighted Round Robin (WRR) cũng là thuật toán phổ biến cho cân bằng. .. đã cho ta thấy một cái nhìn sâu hơn về các thuật toán cân bằng tãi tĩnh nhƣ DSN Round Robin hay Weighted Round Robin và các thuật toán cân bằng tải động nhƣ Fastest , LC, Observed, hay LBw,… cũng nhƣ các ƣu nhƣợc điểm của 33 Chƣơng 2 – Cân bằng tải web-server bằng phần mềm từng loại Từ đó giúp các doanh nghiệp dễ dàng lựa chọn đƣợc thuật toán cho hệ thống của mình sao cho đạt đƣợc hiệu quả cao nhất Trong. .. cập ở phần mở đầu, để cân bằng tải cho hệ thống web-servers cần phải xây dựng một bộ gọi là bộ cân bằng tải( load balancer) Bộ cân bằng tải này đƣợc đặt trƣớc cluster, nhận request từ phía ngƣời dùng, xử lý các yêu cầu này và chuyển hƣớng chúng đến máy server phù hợp Hình 1- 1 Mô hình cân bằng tải web-server 1.2.2 Lợi ích của giải pháp Load Balancing a) So sánh hệ thống có cân bằng tải và hệ thống thông... Cân bằng tải web-server bằng phần mềm CHƢƠNG 2 – CÂN BẰNG TẢI WEB SERVER BẰNG PHẦN MỀM Mỗi doanh nghiệp lại có một cơ sở hạ tầng cũng nhƣ cơ sở tài chính khác nhau, và mỗi doanh nghiệp cũng có mục đích kinh doanh khác nhau để kiếm lợi nhuận Cho nên, họ tìm những giải pháp khác nhau sao cho phù hợp với điều kiện của họ để làm sao đạt đƣợc hiệu quả tốt nhất Họ cân nhắc chọn ra giải pháp cân bằng tải nào,... cho một nhóm máy chủ cùng xử lý Mỗi máy chủ sẽ nhận đƣợc số lƣợng yêu cầu dựa vào khả năng xử lý của nó vào thời điểm đó Qua đó giúp việc xử lý các yêu cầu đồng thời của nhiều client đƣợc nhanh chóng và không gây nên hiện tƣợng quá tải cho một máy chủ riêng biệt Lợi ích thứ ba của cân bằng tải máy chủ là khả năng cải thiện tính sẵn sàng ứng dụng Nếu một ứng dụng hoặc máy chủ không thành công, cân bằng. .. có khả năng đáp ứng cho 200 ngƣời dùng nữa, và càng nhiều server thì khả năng mở rộng lại càng lớn Thêm nữa, sử dụng phƣơng pháp này còn giảm đƣợc chi phí Vì vậy thì điểm yếu giải pháp này là gì? Đó chính là vấn đề cân bằng tải, để cứ mối server sẽ thêm đƣợc 200 ngƣời dùng, hệ thống phải đƣợc cân bằng tải một cách tốt nhất, làm sao để tải đƣợc phân bố đều đặn vào trong các máy server? Các server phải