Hiện nay, cơ sở hạ tầng CNTT đang đóng một vai trò ngày càng quan trọng trong sự thành công của một doanh nghiệp. Thị phần, khách hàng hài lòng với sản phẩm của công ty và hình ảnh công ty tất cả những yếu tố này có thể do website của doanh nghiệp đó chiếm một phần quan trọng. Mạng lưới các máy chủ hiện nay thường xuyên được sử dụng để lưu trữ ERP, thương mại điện tử và vô số các ứng dụng khác. Nền tảng của các trang web này, các chiến lược kinh doanh, cơ sở hạ tầng tốt sẽ cung cấp hiệu suất cao, tính sẵn sàng cao, và các giải pháp an toàn và khả năng mở rộng để hỗ trợ tất cả các ứng dụng. Với một doanh nghiệp lớn hoặc một dự án thương mại điện tử mà website có lượng truy cập lớn trong cùng một thời điểm thì việc yêu cầu và xử lý yêu cầu của người dùng nhanhchậm thực sự quan trọng. Nó góp phần làm cho hệ thống của chúng ta vận hành trơn chu hơn, đảm bảo yêu cầu của khách hàng và giảm những rủi ro không nên có cho hệ thống, hạn chế tối đa mất mát của doanh nghiệp. Do vậy, cân bằng tải (Load Balancing) chính là một sự lựa chọn phù hợp để giúp chúng ta có thể giải quyết được những vấn đề trên. Nhóm chúng em xin chọn đề tài “Tìm hiểu về cân bằng tải (Load Balancing)” với mục đích tìm hiểu bài toán này và cách áp dụng nó để giải quyết các bài toán trong thực tế thường gặp. Chúng em xin chân thành cảm ơn các thầy giáo Cù Việt Dũng, giảng viên bộ môn “Hệ Điều Hành Linux” đã tận tình giảng dạy chúng em trong suốt thời gian học tập vừa qua để giúp chúng em hoàn thiện đề tài này. Chúng em xin chân thành cảm ơn thầy.
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN MÔN HỌC HỆ ĐIỀU HÀNH LINUX Đề tài: Tìm hiểu cân tải (Load Balaning) Sinh viên thực hiện: Nguyễn Hoài Sơn, D6CNTT Nguyễn Thị Kiều Trang, D6CNTT Nguyễn Tuấn Đạt, D6CNTT Giáo viên hướng dẫn: ThS CÙ VIỆT DŨNG HÀ NỘI, THÁNG 12-2014 TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN MÔN HỌC HỆ ĐIỀU HÀNH LINUX Đề tài: Tìm hiểu cân tải (Load Balancing) Sinh viên thực hiện: Nguyễn Hoài Sơn, D6CNTT Nguyễn Thị Kiều Trang, D6CNTT Nguyễn Tuấn Đạt, D6CNTT Giáo viên hướng dẫn: ThS CÙ VIỆT DŨNG HÀ NỘI, THÁNG 12-2014 LỜI NÓI ĐẦU Hiện nay, sở hạ tầng CNTT đóng vai trò ngày quan trọng thành công doanh nghiệp Thị phần, khách hàng hài lòng với sản phẩm công ty hình ảnh công ty tất yếu tố website doanh nghiệp chiếm phần quan trọng Mạng lưới máy chủ thường xuyên sử dụng để lưu trữ ERP, thương mại điện tử vô số ứng dụng khác Nền tảng trang web này, chiến lược kinh doanh, sở hạ tầng tốt cung cấp hiệu suất cao, tính sẵn sàng cao, giải pháp an toàn khả mở rộng để hỗ trợ tất ứng dụng Với doanh nghiệp lớn dự án thương mại điện tử mà website có lượng truy cập lớn thời điểm việc yêu cầu xử lý yêu cầu người dùng nhanh/chậm thực quan trọng Nó góp phần làm cho hệ thống vận hành trơn chu hơn, đảm bảo yêu cầu khách hàng giảm rủi ro không nên có cho hệ thống, hạn chế tối đa mát doanh nghiệp Do vậy, cân tải (Load Balancing) lựa chọn phù hợp để giúp giải vấn đề Nhóm chúng em xin chọn đề tài “Tìm hiểu cân tải (Load Balancing)” với mục đích tìm hiểu toán cách áp dụng để giải toán thực tế thường gặp Chúng em xin chân thành cảm ơn thầy giáo Cù Việt Dũng, giảng viên môn “Hệ Điều Hành Linux” tận tình giảng dạy chúng em suốt thời gian học tập vừa qua để giúp chúng em hoàn thiện đề tài Chúng em xin chân thành cảm ơn thầy Hà Nội, ngày 15 tháng 12 năm 2014 MỤC LỤC DANH MỤC HÌNH ẢNH CHƯƠNG 1: TỔNG QUAN VỀ HIỆU ĐIỀU HÀNH MÃ NGUỒN MỞ CHƯƠNG 2: CÂN BẰNG TẢI (LOAD BALANCING) CHƯƠNG 3: TRIỂN KHAI CÂN BẰNG TẢI GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang CHƯƠNG 1: TỔNG QUAN VỀ HIỆU ĐIỀU HÀNH MÃ NGUỒN MỞ 1.1 Giới thiệu hệ điều hành mã nguồn mở Mã nguồn mở thuật ngữ chuyên dụng với dân IT ngành xa lạ với nguồi bắt đầu tìm hiểu tin học Với có hầu bao rủng rỉnh họ quan tâm đến vấn đề giá hay quyền Nhưng người ý nhiều tới vấn đề chi phí phần mềm hay mã nguồn mở vấn đề họ quan tâm Hình 1.1: Mã nguồn mở - xu ngành IT Mã nguồn mở biết đến thuật ngữ Free And Open Source Software (FOSS) phần mềm mà người dùng sửa đổi, cải tiến, phát triển nâng cấp theo số nguyên tắc chung quy định từ trước Ngoài ưu điểm giá thành sản phẩm mã nguồn mở có nhiều điểm hấp dẫn khác Sau tìm hiểu ưu điểm “độc đáo” mà bắt gặp FOSS An ninh mã nguồn mở Hãy thử hình dung sản phẩm hàng triệu người chung tay góp sức xây dựng sản phẩm nhóm người thiết kế Nếu bỏ qua động lực làm việc thấy, có vấn đề an ninh xảy sản phẩm chắn phát sửa chữa nhanh GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang Hình 1.2: Đối tượng hệ điều hành mã nguồn mở Đó câu chuyện HĐH Android thiết bị điện thoại di động ngày Tuy không hoàn toàn mã nguồn mở HĐH chứng tỏ cho người ta thấy rằng, số đông bắt tay vào sửa lỗi an ninh kết thu hiệu nhanh chóng Rất nhiều thống kê tính ưu điểm đó, điều mà bạn khó bắt gặp iPhone hay di dộng sử dụng HĐH Windows Hình 1.3: Hệ điều hành mã nguồn mở FOSS GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang Ngoài ra, số đông phát triển sản phẩm dễ thích hợp với số đông chịu chi phối nhóm nhà thiết kế công ty Xác xuất để “lọt” lỗi FOSS nhiều Chất lượng sản phẩm nguồn mở Tất nhiên, chất lượng điều mà cần quan tâm Giữa sản phẩm tạo nhà thiết kế hay gói phần mềm hàng nghìn người chung tay góp sức làm việc, bạn cảm giác an tâm nhiều với lựa chọn nào? Mã nguồn mở có số người đóng góp công sức nhiều mà tương đương với đóng góp sáng tạo tính hoàn thiện sản phẩm Hình 1.4: Các phần mềm mã nguồn mở phổ biến Về mặt tổng quát, phần mềm mã nguồn mở gần gũi với người dùng người sử dụng người làm phần mềm Người phát triển lúc người sử dụng, sai khác hay thừa thãi điều bắt gặp Đặc biệt, khảo sát gần vượt trội mặt kỹ thuật lý mà nhiều doanh nghiệp tìm đến mã nguồn mở GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang Tính tùy biến sản phẩm mã nguồn mở Không có nhiều ưu điểm mặt an ninh chất lượng, mã nguồn mở đa dạng tùy biến nguồn liệu Doanh nghiệp sử dụng mã nguồn mở tinh chỉnh để phù hợp với nhu cầu riêng Những đoạn mã công khai dễ dàng chỉnh sửa để thêm thắt chức mà người dùng muốn có Tất điều bạn tìm thấy phần mềm có mã nguồn… đóng Tính cộng đồng điểm nhấn tạo nên điểm mạnh cho mã nguồn mở nói riêng sản phẩm từ mã nguồn mở nói chung Tính tự sản phẩm mã nguồn mở Hình 1.5: Tự người dùng Với FOSS, người dùng kiểm soát định hành động mà phụ thuộc vào luật lệ hay tổ chức Nói cách khác, tính tự điều mà người dùng FOSS hưởng nhiều Không vậy, giả sử bạn dùng Microsoft Windows Office yêu cầu phần cứng nâng lên theo thời gian, FOSS, yêu cần nhỏ Bạn có thừa thời gian để nâng cấp phần cứng cho thích hợp với yêu cầu phần mềm mã nguồn mở Chi phí xây dựng vận hành sản phẩm mã nguồn mở GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang Red Hat Enterprise Linux có sẵn thông qua dịch vụ thuê bao trả tiền, cung cấp truy cập để cập nhật phần mềm mức độ hỗ trợ kỹ thuật khác Sản phẩm chủ yếu bao gồm gói phần mềm phân phối theo nguồn mở giấy phép phần mềm tự mã nguồn gói công bố Red Hat Các nhà phát triển CentOS sử dụng mã nguồn Red Hat để tạo sản phẩm cuối tương tự Red Hat Enterprise Linux Thương hiệu logo Red Hat bị thay đổi Red Hat không cho phép họ phân phối lại CentOS miễn phí Hỗ trợ kỹ thuật chủ yếu cung cấp cộng đồng thông qua mailing lists thức, diễn đàn, chat room Dự án không liên kết với Red Hat không nhận hỗ trợ tài hậu cần từ công ty; thay vào đó, dự án CentOS dựa vào đóng góp từ người dùng nhà tài trợ tổ chức Đánh số phiên Số phiên CentOS có hai phần, phiên phiên nhỏ, tương ứng với phiên cập nhật Red Hat Enterprise Linux sử dụng để xây dựng phiên CentOS Ví dụ, CentOS 4.4 xây dựng từ gói nguồn từ Red Hat Enterprise Linux cập nhật Từ 2006, bắt đầu với phiên 4.4 (chính thức gọi Red Hat Enterprise Linux 4.0 cập nhật 4), Red Hat thông qua quy ước phiên giống hệt CentOS, ví dụ như, Red Hat Enterprise Linux 4.5 1.3 Hướng phát triển hệ điều hành mã nguồn mở GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang CHƯƠNG 2: CÂN BẰNG TẢI (LOAD BALANCING) 2.1 Mô hình toán Cơ sở hạ tầng CNTT đóng vai trò ngày quan trọng thành công doanh nghiệp Thị phần, khách hàng hài lòng với sản phẩm công ty hình ảnh công ty tất yếu tố website doanh nghiệp chiếm phần quan trọng Mạng lưới máy chủ thường xuyên sử dụng để lưu trữ ERP, thương mại điện tử vô số ứng dụng khác Nền tảng trang web này, chiến lược kinh doanh, sở hạ tầng tốt cung cấp hiệu suất cao, tính sẵn sàng cao, giải pháp an toàn khả mở rộng để hỗ trợ tất ứng dụng Hình 2.1: Mô hình giải pháp cân tải (Load Balancing) Vì yêu cầu đặt cho hệ thống web server doanh nghiệp phải đảm bảo cho hệ thông luôn hoạt động thông suốt Tuy nhiên website lớn yêu cầu bị đe dọa nghiêm trọng, số lượng GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 10 người dùng kết nối vào hệ thống thời điểm ngày lớn Năng lực xử lý server đơn không khả đáp ứng yêu cầu tất người dùng Vì vậy, người ta phải tính đến xây dựng cụm server chia tải để đảm bảo đáp ứng yêu cầu người dùng 2.2 Lợi ích cân tải Server Load Balancing (máy chủ cân tải) trình phân phối yêu cầu dịch vụ nhóm máy chủ Server Load Balancing (máy chủ cân tải) ngày trở nên quan trọng hệ thống sở hạ tầng mạng doanh nghiệp: Tăng cường khả mở rộng Nâng cao hiệu suất Tính sẵn sàng cao khắc phục cố Nhiều ứng dụng chuyên sâu có quy mô lớn, đòi hỏi máy chủ phải có cân tải cho chạy tốt ứng dụng Cả doanh nghiệp nhà cung cấp dịch vụ cần linh hoạt để triển khai thêm máy chủ cách nhanh chóng để đáp ứng nhu cầu xử lý công việc doanh nghiệp Server Load Balancing làm cho nhiều máy chủ xuất máy chủ nhất, dịch vụ đơn ảo, phân phối yêu cầu người sử dụng máy chủ Hãy tượng tượng máy chủ xử lý yêu cầu client khoảng 3s, có khoảng 10.000 yêu cầu gửi đến đồng thời tới máy chủ? Load Balancing chịu trách nhiệm phân phối 10.000 yêu cầu cho nhóm máy chủ xử lý Mỗi máy chủ nhận số lượng yêu cầu dựa vào khả xử lý vào thời điểm Qua giúp việc xử lý yêu cầu đồng thời nhiều client nhanh chóng không gây nên tượng tải cho máy chủ riêng biệt Lợi ích thứ ba cân tải máy chủ khả cải thiện tính sẵn sàng ứng dụng Nếu ứng dụng máy chủ không thành công, cân tải tự động phân phối lại yêu cầu dịch vụ người dùng cuối đến máy chủ khác nhóm xử lý Khi máy chủ nhóm có vấn đề session xử lý tự động chuyển qua cho máy chủ khác thực mà client không bị session Ngoài việc xây dựng mô hình load balancing giúp cho công tác bảo trì nhân viên kỹ thuật thuận lợi hơn, họ tiến hành bào trì bước mà không gây gián đoán đến dịch vụ GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 11 CHƯƠNG 3: TRIỂN KHAI CÂN BẰNG TẢI 3.1 Phương pháp luân chuyển DNS Hầu hết số bạn có lẽ biết rằng, sở liệu DNS (Domain Name Server) đồ hóa tên host thành địa IP Hình 3.1: Mô hình luân chuyển DNS Khi nhập URL vào trình duyệt, ví dụ www.quantrimang.com) trình duyệt gửi yêu cầu đến DNS yêu cầu trả địa IP site Đây gọi việc tra cứu DNS Sau trình duyệt Web có địa IP cho site liên hệ với site địa IP, hiển thị trang mà bạn vừa yêu cầu Máy chủ DNS thường có địa IP đồ hóa với tên site Trong ví dụ riêng site www.quantrimang.com đồ hóa thành địa IP 222.255.31.160 GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 12 Để cân tải DNS, máy chủ DNS phải trình số địa IP khác cho tên site Nhiều địa IP thể nhiều máy cluster, tất số chúng đồ hóa đến tên site logic Trong ví dụ chúng ta, www.quantrimang.com cấu hình ba máy chủ cluster với địa IP đây: 222.255.31.160 222.255.31.161 222.255.31.162 Trong trường hợp này, máy chủ DNS đồ hóa sau: www.quantrimang.com 222.255.31.160 www.quantrimang.com 222.255.31.161 www.quantrimang.com 222.255.31.162 Hình 3.2: Cluster trì địa website Khi yêu cầu đến máy chủ DNS, trả địa IP 222.255.31.160, máy Khi có yêu cầu thứ hau, trả địa IP thứ hai: 222.255.31.161 Tiếp tục vậy, với yêu cầu thứ tư, địa IP lại lặp lại GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 13 Bằng cách sử dụng luân chuyển vòng DNS trên, tất yêu cầu site phân phối đến tất máy cluster Chính vậy, với phương pháp cân tải này, tất nút cluster sử dụng Ưu điểm phương pháp luân chuyển vòng DNS Các ưu điểm phương pháp nằm chỗ rẻ dễ dàng: • Không đắt dễ dàng thiết lập: Các quản trị viên hệ thống cần tạo số thay đổi máy chủ DNS để hỗ trợ việc luân chuyển vòng, nhiều máy chủ DNS có hỗ trợ Nó không yêu cầu đến thay đổi mã ứng dụng Web; thực tế, ứng dụng Web chế cân tải mà bị thực • Đơn giản: Phương pháp không yêu cầu đến chuyên gia mạng việc thiết lập giỡ rối hệ thống trường hợp có vấn đề xay Nhược điểm phương pháp Có hai nhược điểm phương pháp dựa phần mềm không cung cấp hỗ trợ mối quan hệ thời gian thực máy chủ với không hỗ trợ khả có sẵn cao - Không hỗ trợ mối quan hệ thời gian thực máy chủ Mối quan hệ thời gian thực máy chủ khả hệ thống việc quản lý yêu cầu người dùng, máy chủ máy chủ nào, phụ thuộc vào thông tin session trì máy chủ mức sở bản, mức sở liệu Không có khả hỗ trợ mối quan hệ máy chủ, phương pháp luân chuyển vòng DNS dựa vào ba phương pháp đưa để trì kiểm soát session nhận dạng người dùng yêu cầu đến HTTP • • Các cookie Các trường ẩn • Viết lại URL Khi người dùng thực yêu cầu đầu tiên, máy chủ Web trả thẻ văn để phân biệt người dùng Các yêu cầu có thẻ để sử dụng cookie, viết lại URL trường ẩn, cho phép máy chủ xuất để trì session máy khách máy chủ Khi người dùng thiết lập session với máy chủ, tất yêu cầu đến sau thường đến máy chủ GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 14 Vấn đề trình duyệt lưu địa IP máy chủ Khi Cache hết hạn, trình duyệt thực yêu cầu khác máy chủ DNS để có địa IP có liên kết với tên miền Nếu máy chủ DNS trả địa IP khác, máy chủ khác cluster, thông tin session bị - Không hỗ trợ cho khả có sẵn cao Xem xét cluster có n nút Nếu nút gặp vấn đề yêu cầu thứ n đến máy chủ DNS hướng bạn đến nút hỏng Một router thông minh giải vấn đề cách kiểm tra nút khoảng thời gian đó, phát nút bị hỏng gỡ bỏ chúng khỏi danh sách, yêu cầu gửi đến chúng Tuy vậy, vấn đề tồn nút có ứng dụng Web chạy nút bị hỏng Thay đổi cluster nhiều thời gian để truyền bá đến toàn phần lại Internet Một lý nhiều tổ chức lớn – ISP, công ty, hay đại lý – lưu yêu cầu DNS họ để giảm lưu lượng mạng thời gian request Khi người dùng bên tổ chức thực request hệ thống kiểm tra danh sách tên DNS Cache đồ hóa địa IP Nếu hệ thống phát thấy entry trả địa IP cho người dùng Nếu không phát thấy entry Cache nội ISP gửi request DNS đến máy chủ DNS lưu đáp trả Khi entry lưu hết hạn, ISP nâng cấp sở liệu nội cách liên hệ với máy chủ DNS khác Khi danh sách máy chủ bạn thay đổi, cần đến khoảng thời gian ngắn cho entry lưu mạng tổ chức khác hết hạn tìm kiếm danh sách máy chủ cập nhật Trong suốt chu trình này, máy khách thực hành động “hit” nút máy chủ bị hỏng, ISP máy khách có entry trỏ đến Trong trường hợp vậy, số người dùng ISP truy cập vào site bạn từ lần truy cập ban đầu, trí cluster bạn có máy chủ dư thừa hoạt động Một vấn đề lớn xuất hiên gỡ bỏ (removing) nút so với việc bổ sung Khi bạn bớt nút, người dùng thực “hit” máy chủ không tồn Còn bạn thêm nút máy chủ chưa sử dụng địa IP đến tất máy chủ DNS Mặc dù phương pháp cân số lượng người dùng máy chủ, không hoàn toàn cân tải máy chủ Một số người dùng yêu cầu mức tải cao suốt session họ so với người dùng khác máy chủ khác, phương pháp bảo đảm chống lại bất công 3.2 Sử dụng cân tải phân cứng GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 15 Các cân tải phần cứng giải nhiều vấn đề mà vừa phải đối mặt phương pháp phần mềm luân chuyển vòng DNS thông qua địa IP ảo Bộ cân tải thể địa IP ảo mạng bên ngoài, địa đồ hóa đến địa máy cluster Chính cân băng tải cần phải đưa địa IP toàn máy tính cluster giới bên Hình 3.3: Mô hình cân tải phần cứng Khi request đến cân tải, ghi lại header request để trỏ đến máy khác cluster Nếu máy bị gỡ bỏ từ cluster request không chạy cách rủi ro việc “hit” vào máy chủ chết này, tất máy chủ khác cluster xuất có địa IP Địa trì giống chí nút cluster bị hỏng Khi đáp trả trả về, máy khách xem đáp trả đến từ cân tải phần cứng Hay nói theo cách khác máy khách xử lý với máy tính cân phần cứng Ưu điểm • Mối quan hệ máy chủ Bộ cân tải phần cứng đọc cookie URL đọc request máy khách Dựa thông tin này, ghi lại thông tin header gửi request đến nút thích hợp cluster, nơi session trì GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 16 Các cân tải cung cấp mối quan hệ máy chủ truyền thông HTTP, không thông qua kênh an toàn HTTPS Trong kênh an toàn, thông báo mã hóa SSL tránh cân tải từ việc đọc thông tin session • Khả có sẵn cao thông qua hệ thống tự động chuyển đổi dự phòng Việc chuyển đổi dự phòng xảy nút cluster xử lý request chuyển hướng đến nút khác Có hai kiểu tự động chuyển đổi dự phòng: • • Yêu cầu mức chuyển đổi dự phòng Khi nút cluster xử lý request (thường bị hỏng) chuyển request sang nút khác Chuyển đổi dự phòng session cách suốt Khi lời triệu gọi thất bại, định tuyến cách suốt đến nút khác cluster để hoàn tất thực thi Bộ cân kiểu cung cấp chuyển đổi dự phòng mức request; tức phát có nút bị cố cân chuyển hướng tất request theo sau gửi đến nút sang nút tích cực khác cluster Mặc dù vậy, thông tin session nút chết bị request chuyển hướng đến nút Chuyển đổi dự phòng session suốt yêu cầu số kiến thức thực thi cho trình nút, cân tải phần cứng phát vấn đề mức mạng, lỗi Để thực thi cách suốt vấn đề chuyển đổi dự phòng, nút cluster phải kết hợp với nút khác có vùng nhớ chia sẻ sở liệu chung để lưu tất liệu session Cũng nút cluster có vấn đề session tiếp tục nút khác • Metrics Vì tất yêu cầu tới ứng dụng web phải qua hệ thống cân tải, hệ thống định số lượng session hoạt động, số lượng session hoạt động kết nối trường hợp khác nhau, khoảng thời gian đáp ứng, thời gian tối đa điện áp, số lượng session suốt khoảng tối đa điện áp, số lượng session suốt khoảng tối thiểu điện áp… Tất thông tin kiểm định sử dụng để tinh chỉnh toàn hệ thống nhằm tối ưu hiệu suất Nhược điểm GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 17 Nhược điểm định tuyến phần cứng giá thành nó, phức tạp vấn đề thiết lập khả hổng vấn đề tương lai Vì tất request chuyển qua cân tải phần cứng nên lỗi yêu cầu phần cứng ảnh hưởng đến toàn site Việc cân request HTTPS Như đề cập trên, khó khăn vấn đề cân tải trì thông tin session request sử dụng giao thức HTTPS, chúng mã hóa Bộ cân tải phần cứng chuyển tiếp request dựa thông tin header, cookie hay URL Có hai cách để giải vấn đề này: • • Proxy Web Server Bộ giải mã SSL phần cứng Bổ sung proxy Web Server Một Web server proxy nằm trước cluster máy chủ Web lấy tất request mã hóa chúng Sau chuyển hướng chúng đến nút thích hợp, dựa thông tin header phần header, cookie URL Hình 3.4: Quá trình xử lý Ưu điểm Web server proxy chúng cung cấp cách để có mối liên hệ máy chủ cho thông báo mã hóa SSL, không cần phần cứng mở rộng Nhưng trình SSL mở rộng cần đến tải mở rộng proxy GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 18 Apache Tomcat Trong nhiều hệ thống phục vụ, máy chủ Apache Tomcat làm việc với để quản lý tất request HTTP cho trang động (JSSP servlets) Các máy chủ Tomcat quản lý trang tĩnh, hệ thống phối hợp, chúng thường thiết lập để quản lý request động Hình 3.5: Hoạt động Apache Tomcat Bạn cấu hình Apache Tomcat để điều khiển yêu cầu HTTPS tải cân Để thực điều này, bạn chạy trường hợp đa máy chủ Tomcat nhiều máy Nếu tất máy chủ Tomcat chạy máy, chúng nên cấu hình để nghe cổng khác Để thực thi cân tải, bạn tạo mẫu Tomcat đặc biệt gọi Tomcat Worker Hình 3.6: Quá trình điều khiển Như bạn thấy hình trên, Web server Apache nhận request HTTP HTTPS từ máy khách Nếu request HTTPS, Web server Apache mã hóa request gửi đến adapter máy chủ Web, máy chủ gửi request đến Tomcat Worker, gồm có thuật toán cân tải Tương tự với Web server proxy, thuật toán cân tải máy Tomcat Bộ giải mã SSL phần cứng GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 19 Cuối cùng, nên đề cập đến có số thiết bị phần cứng có khả giải mã request SSL Hướng dẫn chi tiết chúng không nằm phạm vi này, nói cách vắn tắt, chúng đặt trước cân tải phần cứng cho phép giải mã thông tin cookie, header URL Hình 3.7: Giải mã request Các giải mã SSL phần cứng thường hoạt động nhanh proxy máy chủ Web có khả mở rộng cao Tuy nhiên hầu hết giải pháp phần cứng, chúng gây nhiều vấn đề phức tạp việc thiết lập cấu hình GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 20 CHƯƠNG 4: ĐÁNH GIÁ KẾT QUẢ ĐẠT ĐƯỢC 4.1 Kiến thức hệ điều hành Linux - Nắm bắt kiến thức tổng quan hệ điều hành mã nguồn mở phần mềm mã nguồn mở - Biết tầm quan trọng hệ điều hành mã nguồn mở ứng dụng mã nguồn thời đại ngày - Biết cách cài đặt sử dụng hệ điều hành CentOS số phần mềm thông dụng CentOS - Học kỹ sử dụng hệ điều hành mã nguồn mở, phần mềm mã nguồn mở áp dụng nhà trường công việc chuyên môn 4.2 Kiến thức toán cân tải - Hiểu cân tải mục đích việc sử dụng cân tải hệ thống website - Tìm hiểu quy trình xử lý cách giải mô hình, phương pháp cân tải có GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 21 TÀI LIỆU THAM KHẢO “Linux All-In-One for dummies”, 5th edition, Emmett Dulaney, 2014 Diễn đàn DeveloperWorks, IBM http://www.ibm.com/developerworks Diễn đàn Quản trị mạng http://www.quantrimang.com GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 22 NHẬN XÉT, ĐÁNH GIÁ CỦA GIÁO VIÊN GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 23 [...]... trường và công việc chuyên môn 4.2 Kiến thức về bài toán cân bằng tải - Hiểu được cân bằng tải là gì và mục đích của việc sử dụng cân bằng tải trong một hệ thống website - Tìm hiểu quy trình xử lý và cách giải quyết các mô hình, phương pháp của cân bằng tải hiện có GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 21 TÀI LIỆU THAM KHẢO 1 2 3 Linux All-In-One for dummies”, 5th edition, Emmett... trong tương lai Vì tất cả request đều được chuyển qua một bộ cân bằng tải phần cứng nên lỗi yêu cầu của phần cứng đó ảnh hưởng đến toàn bộ site Việc cân bằng các request HTTPS Như đã đề cập ở trên, rất khó khăn trong vấn đề cân bằng tải và duy trì các thông tin session của request sử dụng giao thức HTTPS, vì chúng đã được mã hóa Bộ cân bằng tải phần cứng không thể chuyển tiếp các request dựa trên thông... DNS Mặc dù phương pháp này có thể cân bằng được một số lượng người dùng trên mỗi máy chủ, nhưng nó không hoàn toàn cân bằng tải máy chủ Một số người dùng có thể yêu cầu mức tải cao hơn trong suốt một session của họ so với những người dùng khác ở trên máy chủ khác, và phương pháp này không thể bảo đảm chống lại được sự bất công bằng đó 3.2 Sử dụng các bộ cân bằng tải bằng phân cứng GVHD: Ths Cù Việt... của tất cả người dùng Vì vậy, người ta phải tính đến xây dựng từng cụm server chia tải để đảm bảo đáp ứng được yêu cầu của người dùng 2.2 Lợi ích của cân bằng tải Server Load Balancing (máy chủ cân bằng tải) là một quá trình phân phối các yêu cầu dịch vụ trên một nhóm các máy chủ Server Load Balancing (máy chủ cân bằng tải) ngày càng trở nên quan trọng trong hệ thống cơ sở hạ tầng mạng trong doanh nghiệp:... HTTPS, thì Web server Apache sẽ mã hóa request và gửi nó đến adapter máy chủ Web, máy chủ sẽ gửi request đến Tomcat Worker, gồm có cả thuật toán cân bằng tải Tương tự với Web server proxy, thuật toán này cũng cân bằng tải giữa các máy như Tomcat Bộ giải mã SSL bằng phần cứng GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 19 Cuối cùng, chúng ta nên đề cập đến ở đây rằng có một số thiết... SonNH, DatNT, TrangNTK – trang 15 Các bộ cân bằng tải phần cứng giải quyết được nhiều vấn đề mà chúng ta vừa phải đối mặt trong phương pháp phần mềm luân chuyển vòng DNS ở trên thông qua các địa chỉ IP ảo Bộ cân bằng tải sẽ thể hiện một địa chỉ IP ảo đối với mạng bên ngoài, địa chỉ này bản đồ hóa đến các địa chỉ của mỗi máy trong một cluster Chính vì vậy bộ cân băng tải này cần phải đưa ra một địa chỉ IP... thậm chí nếu một nút nào đó trong cluster bị hỏng Khi một đáp trả được trả về, máy khách sẽ xem đáp trả đang đến từ bộ cân bằng tải phần cứng Hay nói theo cách khác thì máy khách sẽ xử lý với một máy tính đó là bộ cân bằng phần cứng Ưu điểm • Mối quan hệ giữa các máy chủ Bộ cân bằng tải phần cứng đọc cookie hoặc các URL đang được đọc trên mỗi một request bởi máy khách Dựa trên các thông tin này, nó... máy trong một cluster Chính vì vậy bộ cân băng tải này cần phải đưa ra một địa chỉ IP của toàn bộ các máy tính trong cluster đối với thế giới bên ngoài Hình 3.3: Mô hình cân bằng tải bằng phần cứng Khi một request đến bộ cân bằng tải, nó sẽ ghi lại header của request để trỏ đến các máy khác trong cluster Nếu một máy nào đó bị gỡ bỏ từ cluster thì request sẽ không chạy một cách rủi ro việc “hit” vào... IP cho site thì nó sẽ liên hệ với site bằng địa chỉ IP, và hiển thị trang mà bạn vừa yêu cầu Máy chủ DNS thường có một địa chỉ IP được bản đồ hóa với một tên site nào đó Trong ví dụ riêng của chúng tôi thì site là www.quantrimang.com bản đồ hóa thành địa chỉ IP là 222.255.31.160 GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 12 Để cân bằng tải bằng DNS, máy chủ DNS phải duy trình một... session của nó được duy trì GVHD: Ths Cù Việt Dũng – SVTH: SonNH, DatNT, TrangNTK – trang 16 Các bộ cân bằng tải này có thể cung cấp mối quan hệ giữa các máy chủ trong truyền thông HTTP, nhưng không thông qua kênh an toàn như HTTPS Trong kênh an toàn, các thông báo được mã hóa SSL và có thể tránh được bộ cân bằng tải từ việc đọc các thông tin session • Khả năng có sẵn cao thông qua hệ thống tự động chuyển ... việc chuyên môn 4.2 Kiến thức toán cân tải - Hiểu cân tải mục đích việc sử dụng cân tải hệ thống website - Tìm hiểu quy trình xử lý cách giải mô hình, phương pháp cân tải có GVHD: Ths Cù Việt Dũng... qua địa IP ảo Bộ cân tải thể địa IP ảo mạng bên ngoài, địa đồ hóa đến địa máy cluster Chính cân băng tải cần phải đưa địa IP toàn máy tính cluster giới bên Hình 3.3: Mô hình cân tải phần cứng Khi... chia tải để đảm bảo đáp ứng yêu cầu người dùng 2.2 Lợi ích cân tải Server Load Balancing (máy chủ cân tải) trình phân phối yêu cầu dịch vụ nhóm máy chủ Server Load Balancing (máy chủ cân tải)