Công Nghệ Load Balancing

67 278 0
  • Loading ...
1/67 trang

Thông tin tài liệu

Ngày đăng: 24/04/2018, 21:41

Cân bằng tải là một phương pháp phân phối khối lượng tải trên nhiều máy tính hoặc một cụm máy tính để có thể sử dụng tối ưu các nguồn lực, tối đa hóa thông lượng, giảm thời gian đáp ứng và tránh tình trạng quá tải trên máy chủ.Các lợi ích khi sử dụng phương pháp cân bằng tải:•Tăng khả năng đáp ứng, tránh tình trạng quá tải trên máy chủ, đảm bảo tính linh hoạt và mở rộng cho hệ thống.•Tăng độ tin cậy và khả năng dự phòng cho hệ thống: Sử dụng cân bằng tải giúp tăng tính HA (High Availability) cho hệ thống, đồng thời đảm bảo cho người dùng không bị gián đoạn dịch vụ khi xảy ra lỗi sự cố lỗi tại một điểm cung cấp dịch vụ.•Tăng tính bảo mật cho hệ thống: Thông thường khi người dùng gửi yêu cầu dịch vụ đến hệ thống, yêu cầu đó sẽ được xử lý trên bộ cân bằng tải, sau đó thành phần cân bằng tải mới chuyển tiếp các yêu cầu cho các máy chủ bên trong. Quá trình trả lời cho khách hàngcũng thông qua thành phần cân bằng tải, vì vậy mà người dùng không thể biết được chính xác các máy chủ bên trong cũng như phương pháp phân tải được sử dụng. Bằng cách này có thể ngăn chặn người dùng giao tiếp trực tiếp với các máy chủ, ẩn các thông tin và cấu trúc mạng nội bộ, ngăn ngừa các cuộc tấn công trên mạng hoặc các dịch vụ không liên quan đang hoạt động trên các cổng khác. MỤC LỤC LỜI CẢM ƠN i MỤC LỤC ii CHƯƠNG TỔNG QUAN 1.1 Tổng quan hệ thống cân tải server 1.2 Nhiệm vụ cân tải server: 1.2.1 Cân tải cho server(server load balancing): .1 1.2.2 Cân tải cho server toàn cầu(global server load balancing): 1.2.3 Cân tải cho Firewall(Firewall load balancing): 1.2.4 Cân tải chuyển mạch cache suốt (transparent cache switching): 1.3 Cấu trúc đồ án: CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu công nghệ Loadbalancing 2.1.1 Khái niệm cân tải .4 2.1.2 Các thuật toán cân tải 2.1.3 Hoạt Động Của cân tải: 10 2.2 Nhu cầu ứng dụng 11 2.3 Kỹ thuật cân tải: 11 2.3.1 Kiểm tra trạng thái server: .11 2.3.2 Lựa chọn server tốt nhất: 12 2.3.3 Kỹ thuật Session Persistence: 12 2.3.4 Cookie: 13 2.3.5 Cân tải với proxy: 16 i 2.3.6 Cân tải với thiết bị kết nối: 16 2.3.7 Xử lý yêu cầu kết nối tập trung: .17 2.4 Công nghệ áp dụng: 17 2.4.1 Kỹ thuật cân tải mạng(network loadbalancing): 17 2.4.2 Sử dụng phần mềm: 19 2.4.3 Sử dụng thiết bị phần cứng: 19 2.4.4 Công nghệ DNS Anycast 24 2.5 Vấn đề bảo mật công nghệ Loadbalancing: 24 2.6 Các Mô hình triển khai: 25 2.7 Ưu điểm công nghệ Loadbalancing 25 2.8 Những tổ chức cần có giải pháp cân tải 25 2.9 Kiến trúc xử lý tổng quát: 25 2.9.1 Kiến trúc hệ thống cân tải: 25 2.9.2 Phân phối lưu lượng nhóm: 27 2.9.3 Quá trình hội tụ: .35 2.9.4 Điều khiển từ xa: 37 2.9.5 Hiệu cân tải: 37 2.9.6 Thông lượng thời gian đáp ứng yêu cầu: 37 2.10 Triển khai đánh giá hệ thống server load balancing: 39 2.11 Giải pháp server load balancing dựa luân chuyển vòng DNS: 39 CHƯƠNG KẾT QUẢ THỰC NGHIỆM ỨNG DỤNG CÂN BẰNG TẢI VÀO WEB SERVER .40 3.1 Mục tiêu mơ hình ứng dụng 40 3.2 Mơ hình ứng dụng 40 3.3 Yêu cầu thực 40 ii 3.4 Các cơng cụ cần thiết để thực mơ hình 40 3.5 Các bước triển khai 41 3.6 Demo network load balancing web server: 41 3.6.2 Đặt IP cho máy: 41 3.6.2 Giả lập website hai máy web server 44 3.6.2 Cấu hình Network Load Balancing máy máy web server: .46 3.6.4 Test chức Network Load Balancing máy web server: 53 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỒ ÁN .57 4.1 Kết luận 57 4.2 Hướng phát triển 58 CHƯƠNG TỔNG QUAN 1.1.Tổng quan hệ thống cân tải server Trong thời đại bùng nổ công nghệ thông tin nay, mạng máy tính đóng vai trò ngày quan trọng hoạt động doanh nghiệp, tổ chức quan nhà nước Thậm chí số đơn vị, chẳng hạn công ty hàng không ngân hàng lớn, mạng máy tính ví hệ thần kinh điều khiển hoạt động toàn doanh nghiệp Sự ngừng hoạt động mạng máy tính hay hoạt động hiệu mạng máy tính quan làm tê liệt hoạt động đơn vị, thiệt hại khó lường trước Chúng ta biết máy chủ trái tim mạng máy tính, máy chủ hỏng, hoạt động hệ thống ngưng trệ Điều đáng tiếc dù hãng sản xuất cố gắng làm cách để nâng cao chất lượng thiết bị, hỏng hóc thiết bị mạng nói chung máy chủ nói riêng điều tránh khỏi Do vậy, vấn đề đặt cần có giải pháp để đảm bảo cho hệ thống hoạt động tốt có cố xảy máy chủ Việc lựa chọn server đơn lẻ có cấu hình cực mạnh để đáp ứng nhu cầu kéo theo chi phí đầu tư lớn khơng giải vấn đề đặt tổ chức Giải pháp hiệu đưa sử dụng nhóm server thực chức điều khiển công cụ phân phối tải – Giải pháp cân tải Có nhiều hãng đưa giải pháp cân tải Cisco, Coyote Point, Sun Microsystem… với nhiều tính phong phú Tuy nhiên, bản, nguyên tắc cân tải điển hình RRDNS (Round Robin DNS) Với giải pháp này, server nhóm bị lỗi, RRDNS tiếp tục gửi tải cho server người quản trị mạng phát lỗi tách server khỏi danh sách địa DNS Điều gây đứt quãng dịch vụ Sau phát triển, từ thuật toán cân tải tĩnh Round Robin, Weighted Round Robin đến thuật toán cân tải động Least Connection, Weighted Least Connection, Optimized Weight Round Robin Optimized Weighted Least Connection, kỹ thuật cân tải nhờ kết hợp thuật toán ngày trở nên hoàn thiện nhược điểm vốn cho tạo điểm lỗi đơn vấn đề nút cổ chai sử dụng điều phối tập trung(Centralized dispatcher) Ngoài khả áp dụng với Web server, kỹ thuật áp dụng với hệ thống server ứng dụng khác Server Load Balancing không làm nhiệm vụ phân phối tải cho server mà cung cấp chế đảm bảo hệ thống server khả dụng trước client Server Load Balancing u cầu đặc biệt phần cứng, máy tính hợp chuẩn sử dụng làm server Chi phí triển khai nhờ giảm đáng kể Kiến trúc phần mềm phân tán server load balancing cho phép cung cấp hiệu tính khả dụng kỹ thuật mức cao 1.2.Nhiệm vụ cân tải server: 1.2.1 Cân tải cho server(server load balancing): Có nhiệm vụ phân phối tải server, tăng khả mở rộng hệ thống, giúp cho hệ thống hoạt động có server bị chết 1.2.2 Cân tải cho server tồn cầu(global server load balancing): Có nhiệm vụ chuyển hướng yêu cầu người dung đến data center khác trường hợp website có nhiều trung tâm liệu giới Góp phần tăng tốc độ phản hồi cho người dung giúp cho hệ thống có khả hoạt động có trung tâm liệu bị chết 1.2.3 Cân tải cho Firewall(Firewall load balancing): Có nhiệm vụ phân phối tải firewall, giúp cho hệ thống hoạt động có firewall bị chết 1.2.4 Cân tải chuyển mạch cache suốt (transparent cache switching): Giúp chuyển hướng lưu lượng cách suốt đến caches, góp phần tăng thời gian đáp ứng hiệu hệ thống 1.3.Cấu trúc đồ án: Chương 1: Tổng quan Sơ lược hệ thống cân tải, cho ta biết thêm nhiệm vụ cân tải Chương 2: Cơ sở lý thuyết Giúp ta hiểu khái niệm cân tải gì, thuật tốn cân tải, cách thức hoạt động, ứng dụng công nghệ cân tải ưu nhược điểm, vấn đề bảo mật, cấu trúc cân tải… Chương 3: Kết thực nghiệm ứng dụng cân tải vào web server Xây dựng hệ thống cân tải ứng dụng vào web server, mô tả cách thức triển khai, cấu hình cài đặt vận hành, kiểm tra tính cân tải hệ thống Chương Kết luận hướng phát triển đồ án Từ đồ án giúp ta hiểu thêm công nghệ cân tải gì, khái niệm áp dụng thực tiễn hiểu thêm thuật toán cân tải, hướng phát triển cho tương lai, khắc phục yếu điểm nhược điểm công nghệ cân tải CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1.Giới thiệu công nghệ Loadbalancing 2.1.1.Khái niệm cân tải Cân tải phương pháp phân phối khối lượng tải nhiều máy tính cụm máy tính để sử dụng tối ưu nguồn lực, tối đa hóa thơng lượng, giảm thời gian đáp ứng tránh tình trạng tải máy chủ Các lợi ích sử dụng phương pháp cân tải:  Tăng khả đáp ứng, tránh tình trạng tải máy chủ, đảm bảo tính linh hoạt mở rộng cho hệ thống  Tăng độ tin cậy khả dự phòng cho hệ thống: Sử dụng cân tải giúp tăng tính HA (High Availability) cho hệ thống, đồng thời đảm bảo cho người dùng không bị gián đoạn dịch vụ xảy lỗi cố lỗi điểm cung cấp dịch vụ  Tăng tính bảo mật cho hệ thống: Thơng thường người dùng gửi yêu cầu dịch vụ đến hệ thống, yêu cầu xử lý cân tải, sau thành phần cân tải chuyển tiếp yêu cầu cho máy chủ bên Q trình trả lời cho khách hàngcũng thơng qua thành phần cân tải, mà người dùng khơng thể biết xác máy chủ bên phương pháp phân tải sử dụng Bằng cách ngăn chặn người dùng giao tiếp trực tiếp với máy chủ, ẩn thông tin cấu trúc mạng nội bộ, ngăn ngừa công mạng dịch vụ không liên quan hoạt động cổng khác 2.1.2.Các thuật toán cân tải Cân tải sử dụng thuật tốn lọc phân tán hồn tồn để ánh xạ client đến host nhóm Thuật tốn cho phép host nhóm đưa định cân tải cách độc lập nhanh chóng cho gói đến Nó tối ưu hoá để cung cấp khả cân tải cách thống kê số lượng lớn yêu cầu nhỏ vô số client tạo ra, điển hình Web server Cân tải xử lý yêu cầu client cách dẫn đường cho tỉ lệ phần trăm chọn u cầu cho host nhóm Thuật tốn không đáp ứng thay đổi tải host (chẳng hạn tải CPU hay vấn đề sử dụng nhớ) Tuy nhiên, trình ánh xạ thay đổi quan hệ thành viên nhóm thay đổi tỉ lệ phần trăm tải phân bố tái cân Khi xem xét gói đến, tất host thực đồng thời việc ánh xạ thống kê để xác định nhanh chóng host xử lý gói Q trình ánh xạ sử dụng hàm ngẫu nhiên để tính mức ưu tiên host dựa địa IP cổng đến client thông tin trạng thái khác để tối ưu hoá việc cân tải Host tương ứng chuyển gói từ tầng lên tầng TCP/IP host khác loại bỏ gói Q trình ánh xạ khơng thay đổi quan hệ host nhóm thay đổi, để đảm bảo địa IP cổng đến client cho trước ánh xạ đến host nhóm.- Tuy nhiên, host cụ thể nhóm mà địa IP cổng đến client ánh xạ tới xác định trước hàm ngẫu nhiên có tính đến quan hệ thành viên nhóm khứ để tối thiểu hoá khả ánh xạ lại Khi host tham gia vào nhóm, kích hoạt q trình hội tụ quan hệ thành viên nhóm tính tốn Khi q trình hội tụ hoàn thành, phần tối thiểu client ánh xạ tới host Cân tải dò kết nối TCP host sau kết nối TCP chúng hoàn thành, kết nối từ client bị ảnh hưởng xử lý host Do đó, host nên bổ sung vào nhóm thời điểm tải tăng mạnh nhằm tối thiểu hoá tượng ngắt quãng phiên Để tránh vấn đề này, trạng thái phiên phải quản lý ứng dụng server cho tái cấu trúc hay trả lại từ host nhóm Ví dụ, trạng thái phiên đẩy đến server sở liệu lưu cookies client Hình 2.1 mơ hình cân tải nhiều server Hiện nay, nhu cầu truy nhập mạng bùng nổ, server cung cấp dịch vụ trở nên tải Việc lựa chọn server đơn lẻ có cấu hình cực mạnh để đáp ứng nhu cầu kéo theo chi phí đầu tư lớn Giải pháp hiệu đưa sử dụng nhóm server thực chức điều khiển công cụ phân phối tải - Giải pháp cân tải Có nhiều hãng đưa giải pháp cân tải Cisco, Coyote Point, Sun Microsystems với nhiều tính phong phú Tuy nhiên, bản, nguyên tắc cân tải xuất phát từ quan điểm kỹ thuật tương đồng Một kỹ thuật cân tải điển hình RRDNS (Round Robin DNS) Với giải pháp này, server nhóm bị lỗi, RRDNS tiếp tục gửi tải cho server người quản trị mạng phát lỗi tách server khỏi danh sách địa DNS Điều gây đứt quãng dịch vụ Sau phát triển, từ thuật toán cân tải tĩnh Round Robin, Weighted Round Robin đến thuật toán cân tải động Least Connection, Weighted Least Connection, Optimized Weighted Round Robin Optimized Weighted Least Connection, kỹ thuật cân tải nhờ kết hợp thuật toán ngày trở nên hồn thiện nhược điểm vốn có tạo điểm lỗi đơn vấn đề nút cổ chai sử dụng điều phối tập trung (centralized dispatcher) Có nhiều thuật tốn cân tải sử dụng, sau thuật toán cân tải phổ biến nhất: 2.1.2.1 Thuật toán Round Robin: Đây gọi thuật tốn ln chuyển vòng, máy chủ xem ngang hàng xếp theo vòng quay Các truy vấn dịch vụ gửi tới máy chủ theo thứ tự xếp Đây thuật toán dung thường xuyên hệ thống vừa nhỏ, có đòi hỏi khả mở rộng Một kết nối gửi đến server cụm server quay vòng RR làm việc tốt cấu hình tốt trang thiết bị cân tải khác tốc độ xử lý, tốc độ kết nối nhớ RR hoạt động tốt server có khả xử lý cấu hình tương tự nhau, nhiên có tượng cân server có cấu hình khác nhau, sau thời gian, số kêt nối hoạt động server nhiều hẳn server khác Do đó, số server phải xử lý nhiều hẳn server khác Tuy tính đơn giản nó, nên hoạt động hiệu quả(khơng phải them thời gian tính tốn thơng số khác nên việc phân tải diễn nhanh) Nếu server hoạt động bình thường khơng xảy cố sử dụng RR tốt Điểm yếu RR hai yêu cầu liên tục từ phía người dung gửi vào server khác Điều khơng tốt người dung kết nối vào server xử lý góp phần tăng tốc độ đáp ứng cho người dung Do thuật 50 Vào card mạng chọn properties  chọn vào Network Load Balancing  Properties Ở mục Cluster Ip configuration ta gõ địa Ip Virtual (Ip chung ảo) 192.168.100.100  Chọn vào Multicast mục Cluster operation mode 51 Qua thẻ Host Parameters  Priority(quyền ưu tiên):  mục Dedicated IP configuration  IP address: 10.0.0.1  Subnet mask: 255.0.0.0  Default state: Started Ta qua tab Port Rules  Edit 52 Tại mục Port range  From: 80 – To: 80  Ok Vào Internet Protocol (TCP/IP)  Properties  Advanced… 53 Chọn Add Gõ địa IP virtual(IP chung ảo) vào: 192.168.100.100 – 255.255.255.0 Vào cmd gõ lênh: wlbs query Tương tự với máy NBL – 54 Ở mục Cluster Ip configuration ta gõ địa Ip Virtual (Ip chung ảo) 192.168.100.100 Chọn vào Multicast mục Cluster operation mode Qua thẻ Host Parameters  Priority(quyền ưu tiên):  mục Dedicated IP configuration  IP address: 10.0.0.2  Subnet mask: 255.0.0.0  Default state: Started 55 Vào Internet Protocol (TCP/IP)  Properties  Advanced… Gõ địa IP virtual(IP chung ảo) vào: 192.168.100.100 – 255.255.255.0 Vào cmd gõ lênh: wlbs query 56 3.6.4 Test chức Network Load Balancing máy web server: +Giả sử máy web server NLB-1 không hoạt động cách disable card mạng có IP 10.0.0.1 sau thử truy cập máy client 57 Vào IE nhập ip 192.168.100.100 sau máy NLB-1 chết web server ta chuyển sang máy web server NLB-2 58 Enable lại card mạng có địa IP 10.0.0.1 máy NLB-1 59 Tương tự giả sử ta làm máy NLB-2 chết cách disable card mạng có địa IP 10.0.0.2, mở sau thử truy cập máy client 60 Vào IE nhập ip 192.168.100.100 sau máy NLB-2 chết web server ta chuyển sang máy web server NLB-1 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỒ ÁN 4.1 Kết luận Đồ án đưa thành phần cần phải xây dựng cân tải cài đặt giải pháp phân tải động thông minh hoạt động hiệu so với giải pháp chậy cân tải mã nguồn mở 61 Trước tiên đồ án đưa mơ hình web từ nhấn mạnh tầm quan trọng việc cân tải cho web server toàn hệ thống Sử dụng phép so sánh hiệu hệ thống cân tải server hệ thống thông thường, đồng thời sử dụng cân tải để phân tải cho web server Một cân tải hoạt động tốt cần phải kiểm tra trạng thái server, nhằm đảm bảo không chuyển yêu cầu người dung đến server khơng hoạt động Thuật toán cân tải cần phải xây dựng cách thông minh nhằm lựa chọn server tốt để phục vụ yêu cầu người dùng Đồ án giới thiệu hang loạt thuật toán cân tải sử dụng thuật tải chuyên sâu chuyên dụng, sử dụng số sản phẩm cân tải công ty lơn giới, chia làm hai nhánh thuật toán tĩnh thuật tốn động Các thuật tốn khơng đòi hỏi lập trình phần mềm tinh vi, mà u cầu hỗ trợ phần cứng Đồ án đưa thành phần cân tải web server, chức thành phần, hoạt động hệ thống, kiến trúc hệ thống web server Ngoài cân tải web server hỗ trợ chức server dự phòng, hai web server gặp cố, web server lại hoạt động bình thường, khơng gây gián đoạn cho doanh nghiệp Do thời gian nguồn lực có hạn, đồ án chưa sâu để tạo cân tải hoàn chỉnh, hy vọng thực nghiên cứu sâu đề tài 4.2 Hướng phát triển 62 Bộ cân tải chưa đáp ứng yêu cầu liên lạc server với mà server cân tải Nếu server bị chết chừng toàn người sử dụng làm việc với bị kết nối Nếu server có liên lạc với nhau, cơng việc server phân sang cho server khác ngược lại Các server có tải cao chuyển bớt sang server khác Với tư tưởng đó, xin đưa ý tưởng cân tải cài tất máy server, chạy ứng dụng độc lập Ứng dụng liên lạc server với nhau, lưu giữ thơng tin tải server, tìm máy nhanh để nhận yêu cầu từ phía người dùng Một ứng dụng có phần chính, phần thứ báo cáo tải tải mà server chạy tính tốn dựa vào thuật tốn cân tải động, thuật toán linh hoạt dựa vào số kết nối có server tải CPU RAM mà server chạy, lấy them thơng số tải HDD, % thời gian mà phải thực yêu cầu đọc ghi Vì giá trị biến thiên liên tục, nên để đo tải xác server, tiến hành đo đạc số thời điểm (chẳng hạn thời điểm liên tục), sau lấy giá trị trung bình tải server khoảng thời gian Việc đo thời điểm quan trọng, thực vậy, mở Task Manager để lấy % hoạt động tải CPU, giả sử 30% Sau mở loạt ứng dụng, số 30% chưa thay đổi nhiều Đóng Task Manager mở lại nó, giá trị tăng lên cao, chẳng hạn 80% Điều cho thấy phép đánh giá thời điểm thiếu xác Bên cạnh nhiệm vụ tính tốn, phần cần phải thiết kế để gửi tin nhắn server nhằm báo cáo tải, cần có giao thức gửi nhận phần 63 Phần thứ hai thu thập tải tất server cụm cluster, dĩ nhiên biết tải mà chạy đó, nhận tải máy khác từ module báo cáo tải máy Sau phần thứ ba chúng lưu trữ vào cấu trúc liệu mà dễ dàng lấy cần, phần thứ ba có nhiệm vụ hỏi xem máy chạy nhanh hệ thống Tài liệu tham khảo + Tài liệu tiếng việt: http://luanvan.co/luan-van/cong-nghe-can-bang-tai-server-34792/ http://datmaychu-giare.blogspot.com/2015/06/nhung-hieu-biet-co-ban-veserver-load-balancing-phan-1.html http://datmaychu-giare.blogspot.com/2015/06/nhung-hieu-biet-co-ban-veserver-load-Load-Balancing-phan-2.html http://datmaychu-giare.blogspot.com/2015/06/nhung-hieu-biet-co-ban-veserver-load-blancing-phan-3.html http://www.oktot.com/huong-dan-trien-khai-network-load-balancing-chowebserver/ 64 https://www.vnnic.vn/dns/congnghe/c%C3%B4ng-ngh%E1%BB%87-c %C3%A2n-b%E1%BA%B1ng-t%E1%BA%A3i http://quantrimang.com/microsoft-forefront-tmg-%E2%80%93-can-bangtai-webserver-66382 + Tài liệu tiếng anh: xem file "Server Load Balancing" - Lab: http://msopenlab.com/v1/index.php? option=com_content&view=article&id=1135:-network-loadbalancing&catid=101:windows-server&Itemid=29 http://hoanv-network.blogspot.com/2012/06/lab-mcsa-bonus-cau-hinhnetwork-load.html
- Xem thêm -

Xem thêm: Công Nghệ Load Balancing, Công Nghệ Load Balancing, CHƯƠNG 2. CƠ SỞ LÝ THUYẾT, +Nhược điểm của kỹ thuật CCR:, CHƯƠNG 3. KẾT QUẢ THỰC NGHIỆM ỨNG DỤNG CÂN BẰNG TẢI VÀO WEB SERVER., 5 Các bước triển khai, CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỒ ÁN

Mục lục

Xem thêm

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay