Một trong những xu hướng lựa chọn hệ thống mạng ngày nay là phân tán sựtính toán giữa các hệ thống vật lý khác nhau.Các hệ thống vật lý này có thể khác nhau về quy mô và chức năng.Chúng
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
NGHỆ AN - 2012
Trang 2KHOA CÔNG NGHỆ THÔNG TIN
Giáo viên hướng dẫn: ThS Nguyễn Công Nhật Sinh viên thực hiện: Nguyễn Thị Mai Anh
Lớp: 49K - CNTT
Nghệ An, tháng 12 năm 2012
Trang 3LỜI CẢM ƠN
Suốt quá trình học tập trong trường Đại Học Vinh vừa qua, chúng em đã đượccác thầy cô cung cấp và truyền đạt tất cả kiến thức quý giá nhất Ngoài ra, chúng emcòn được rèn luyện một tinh thần học tập và rèn luyện độc lập, sáng tạo Đây là tínhcách hết sức cần thiết để có thể thành công khi bắt tay vào nghề nghiệp tương lai
Em xin chân thành cảm ơn Ban giám hiệu trường Đại học Vinh, Ban chủ nhiệmkhoa Công nghệ thông tin, cùng các thầy cô giáo đã tận tình giảng dạy, trang bị cho
em những kiến thức cần thiết trong những năm học tại trường Và quãng thời gian đóthật hữu ích làm em trưởng thành lên rất nhiều khi chuẩn bị ra trường đó là nhữnghành trang không thế thiếu trong công việc sau này
Em xin chân thành cảm ơn thầy giáoTh.S Nguyễn Công Nhật đã tận tình quan
tâm, giúp đỡ và hướng dẫn em trong suốt thời gian làm đồ án để em hoàn thành tốt đồ
án tốt nghiệp này
Mặc dù đã cố gắng trong quá trình học tập nhưng kinh nghiệm thực tế và trình
độ chuyên môn chưa được nhiều nên em không tránh khỏi những thiếu sót em rấtmong được sự chỉ bảo, góp ý chân thành từ các thầy, cô giáo cùng tất cả các bạn
Em xin chân thành cảm ơn !
Nghệ An, tháng 12 năm 2012
Sinh viên thực hiện
Nguyễn Thị Mai Anh
Trang 4LỜI MỞ ĐẦU
Công nghệ mạng và các hệ thống máy chủ ngày nay đã có những bước pháttriển vượt bậc Nhờ đó đáp ứng được các ứng dụng thương mại rộng lớn như các giaodịch tài chính, hệ thống cơ sở dữ liệu, hệ thống web server, các ứng dụng truyềnmedia… Các ứng dụng này có tần suất sử dụng cao, yêu cầu hoạt động liên tục Dovậy, hệ thống mạng phải có khả năng mở rộng tối ưu để đáp ứng được một lượng lớncác yêu cầu ngày càng tăng của người dùng mà không gây ra bất kỳ một độ trễ khôngmong muốn nào
Một trong những xu hướng lựa chọn hệ thống mạng ngày nay là phân tán sựtính toán giữa các hệ thống vật lý khác nhau.Các hệ thống vật lý này có thể khác nhau
về quy mô và chức năng.Chúng thường bao gồm các các máy trạm, các máy tính mini
và các hệ thống máy tính đa năng lớn.Các hệ thống này thường được gọi là các nút Sựnghiên cứu về hệ thống mạng phân tán bao gồm nhiều lĩnh vực như: Mạng truyềnthông, hệ điều hành phân tán, cơ sở dữ liệu phân tán, lý thuyết về các hệ thống songsong và phân tán, cấu trúc nối mạng, độ tin cậy và khả năng chịu lỗi, hệ thống phân tántrong thời gian thực, khả năng gỡ lỗi phân tán và các ứng dụng phân tán Như vậy hệthống mạng phân tán bao gồm mạng vật lý, các nút và các phần mềm điều khiển Có 5
lý do để xây dựng một hệ thống mạng phân tán, đó là:
- Chia sẻ tài nguyên
- Cải tiến sự tối ưu
Với lý do trên, em đã lựa chọn đề tài luận văn tốt nghiệp là “Tìm hiểu về
Server Load Balancing và triển khai thử nghiệm một số giải pháp nâng cao tính sẵn sàng cho mạng doanh nghiệp” Đây là một vấn đề khá quan trọng trong việc thiết
kế các hệ thống mạng, các trung tâm tính toán hiệu năng cao và các trung tâm dữ liệuphục vụ cho các ứng dụng lớn
Bố cục đồ án tốt nghiệp của em gồm 3phần :
Chương I: Cấu trúc mạng
Chương II:Tổng quan về hệ thống cân bằng tải Server
Chương III :Triển khai thử nghiệm một số giải pháp nâng cao tính sẵn sàng chomạng doanh nghiệp
Trang 5MỤC LỤC
Trang
CHƯƠNG 1: CẤU TRÚC MẠNG 5
1.1 Định nghĩa mạng máy tính 5
1.2 Kiến trúc mạng máy tính 6
1.3 Phân loại mạng máy tính 8
1.4 Mô hình OSI 11
1.5 Mô hình OSI với hệ thống cân bằng tải 12
CHƯƠNG 2: TỔNG QUAN VỀ HỆ THỐNG CÂN BẰNG TẢI SERVER 14
2.1 Giới thiệu 14
2.2 Lợi ích của Server Load Blancing 14
2.3 Tại sao phải xây dựng hệ thống cân bằng tải? 16
2.4 Các giải pháp chia tải trên thế giới 17
2.5 Các thành phần của SLB 18
2.6 Giải pháp dự phòng (Redundancy) 20
2.7 Hoạt động của hệ thống cân bằng tải server 24
CHƯƠNG 3: TRIỂN KHAI THỬ NGHIỆM MỘT SỐ GIẢI PHÁP NÂNG CAO TÍNH SẴN SÀNG CHO MẠNG DOANH NGHIỆP .26
3.1 Chuẩn bị 26
3.2 Thiết lập hai Domain Controller chạy song song 27
3.3 Đồng bộ DNS trên hai DC 30
3.4 Đồng bộ DHCP trên hai DC 32
3.4 Thiết lập FileServer và Distributed file system-DFS 34
3.5 Cân bằng tải Webserver 36
KẾT LUẬN 40
i Kết quả đạt được 40
ii Hạn chế của đề tài 40
iii Hướng phát triển của đề tài 40
TÀI LIỆU THAM KHẢO 41
Trang 6CÁC THUẬT NGỮ VIẾT TẮT ĐƯỢC SỬ DỤNG
AD Active Directory
ADSL Asymmetric Digital Subscriber Line
CNTT Công Nghệ Thông Tin
DC Domain Controller
DHCP Dinamic Host Configuration Protocol
DNS Domain Name System
Domain Miền
SLB Server Load Blancing
NLB Network Load Blancing
HĐH Hệ Điều Hành
IP Internet Protocol
LAN Local Area Network
WAN Wide Area Network
Trang 7Trong những năm 70 của thế kỉ 20, khi bắt đầu xuất hiện khái niệm Mạngtruyền thông, trong đó các thành phần chính của nó là các nút mạng, được gọi là các
bộ chuyển mạch dùng để chuyển thông tin đến đích của nó Các nút mạng được nốivới nhau bằng các đường truyền vật lý còn các máy tính xủ lý thông tin qua trạm Hosthoặc các trạm cuối được kết nối trực tiếp vào các nút mạng để khi cần thì sẵn sàng traođổi thông tin qua mạng
1.1 Định nghĩa mạng máy tính
Mạng máy tính là một tập hợp các máy tính được nối với nhau bởi đườngtruyền theo một cấu trúc nào đó và thông qua đó các máy tính trao đổi thông tin qua lạicho nhau
Đường truyền là hệ thống các thiết bị truyền dẫn có dây hay không dây dùng đểchuyển các tín hiệu điện tử từ máy tính này đến máy tính khác Các tín hiệu điện tử đóbiểu thị các giá trị dữ liệu dưới dạng các xung nhị phân (on - off).Tất cả các tín hiệuđược truyền giữa các máy tính đều thuộc một dạng sóng điện từ Tùy theo tần số củasóng điện từ có thể dùng các đường truyền vật lý khác nhau để truyền các tín hiệu Ởđây đường truyền được kết nối có thể là dây cáp đồng trục, cáp xoắn, cáp quang, dâyđiện thoại, sóng vô tuyến
Các đường truyền dữ liệu tạo nên cấu trúc của mạng.Hai khái niệm đườngtruyền và cấu trúc là những đặc trưng cơ bản của mạng máy tính
Trang 8Hình 1.1: Một mô hình liên kết các máy tính trong mạngVới sự trao đổi qua lại giữa máy tính này với máy tính khác đã phân biệt mạngmáy tính với các hệ thống thu phát một chiều như truyền hình, phát thông tin từ vệ tinhxuống các trạm thu thụ động vì tại đây chỉ có thông tin một chiều từ nơi phát đến nơithu mà không quan tâm đến có bao nhiêu nơi thu, có thu tốt hay không.
Đặc trưng cơ bản của đường truyền vật lý là băng thông Băng thông của mộtđường chuyền chính là độ đo phạm vi tần số mà nó có thể đáp ứng được Tốc độtruyền dữ liệu trên đường truyền còn được gọi là thông lượng của đường truyền -thường được tính bằng số lượng bit được truyền đi trong một giây (Bps)
Trang 9• Star: Kết nối tất cả các host đến một điểm trung tâm.
• Start mở rộng: liên kết các star riêng lại với nhau bằng cách nối các hub hoặcswitch với nhau, dạng này có khả năng mở rộng phạm vi và mức bao phủ của mạng
• Topo phân cấp: tương tự như star mở rộng Tuy nhiên, thay vì liên kết cáchub hay switch với nhau, hệ thống này được liên kết đến một máy tính kiểm soát lưulượng trên topo
• Mesh: được triển khai nhằn tăng cường mức bảo vệ càng nhiều càng tốt đốivới tình huống gián đoạn dịch vụ Việc sử dụng mesh trong các hệ thống điều khiểnđược nối thành mạng của một cơ sở hạt nhân là một ví dụ điển hình Như có thể thấytrên hình dưới, mỗi host có các kết nối riêng đến tất cả các host còn lại.Mặc dù Internet
có nhiều đường dẫn đến bất kì một vị trí nào, nhưng nó vẫn không được coi là mộttopo dạng lưới đầy đủ
Topo luận lý: là cách thức mà host truyền thông xuyên qua môi trường Có hailoại phổ biến nhất của topo luận lý là broadcast và token passing
Broadcast có nghĩa đơn giản là mỗi host truyền số liệu của nó đến tất cả cáchost trên môi trường mạng Không có trật tự ưu tiên nào mà các trạm phải tuân theotrong việc sử dụng mạng, mà hoạt động theo phương thức đến trước phục vụ trước.Kiểu hoạt động này hoạt động theo cách của mạng Ethernet
Token passing điều khiển truy nhập mạng bằng cách chuyển một thẻ bài mộtcách tuần tự đến các host Mỗi khi một host nhận được thẻ bài này là lúc nó có thểtruyền số liệu lên mạng Nếu host không có số liệu để truyền nó lập tức chuyển thẻđiện đến host kế tiếp và tiến trình cứ như thế lặp lại Hai mạng sử dụng token passing
là Token Ring và FDDI.Một biến thể khác của Token Ring và FDDI là Arcnet.Arcnet
là một token passing trên một topo dạng bus
1.2.2 Giao thức mạng
Việc trao đổi thông tin cho dù là đơn giản nhất cũng phải tuân theo những quytắc nhất định Ngay cả hai người nói chuyện với nhau muốn cho cuộc nói chuyện cókết quả thì hai người cũng phải ngầm theo một quy tắc nào đó Việc truyền tín hiệutrên mạng cũng vậy, cần phải có những quy tắc, quy ước về nhiều mặt, từ khuôn dạngcủa dữ liệu cho tới các thủ tục gửi nhận dữ liệu, kiểm soát hiệu quả và chất lượngtruyền tin, xử lý các lỗi và sự cố Yêu cầu về xử lý và trao đổi thông tin của người sửdụng càng cao thì các quy tắc càng nhiều và phức tạp hơn.Tập hợp tất cả các quy tắc,quy ước đó được gọi là giao thức của mạng
Trang 101.3 Phân loại mạng máy tính
Do hiện nay mạng máy tính được phát triển khắp nơi với những ứng dụng ngàycàng đa dạng cho nên việc phân loại mạng máy tính là một việc rất phức tạp Người ta
có thể chia các mạng máy tính theo khoảng cách địa lý ra làm các loại: Mạng diệnrộng,Mạng cục bộ, mạng đô thị, Mạng lưu trữ và Mạng riêng ảo
1.3.1 Mạng cục bộ (Local Area Networks - LAN)
Mạng cục bộ là mạng được thiết lập để liên kết các máy tính trong một khu vựcnhư trong một toà nhà, một khu nhà Mạng LAN bao gồn các thành phần sau:
• Máy tính
• Các card giao tiếp mạng
• Các thiết bị ngoại vi
• Đường truyền thiết lập mạng
1.3.2 Mạng diện rộng (Wide Area Networks - WAN)
Mạng WAN là mạng được thiết lập để liên kết các máy tính của hai hay nhiềukhu vực khác nhau như giữa các thành phố hay các tỉnh Các WAN được thiết kế đểphục vụ các mục đích sau:
Trang 11• Hoạt động qua các vùng tách biệt về mặt địa lý.
• Cho phép người sử dụng có khả năng truyền thông tin thời gian thực vớingười khác
• Cung cấp các kết nối liên tục đến các vùng tài nguyên
Một số công nghệ WAN phổ biến là:
Trang 12Hình 1.4: Hình ảnh một mạng MAN
1.3.4 Mạng lưu trữ (SAN)
SAN là mạng chất lượng cao, cấp riêng được dùng để di chuyển dữ liệu qua lạigiữa các server và các tài nguyên lưu giữ Bởi nó là mạng cấp riêng tách biệt nên tránhđược bất kì sự xung đột nào giữa clien và server Công nghệ SAN cho phép thực hiệncác cuộc nối tốc độ cao giữa các server với các thiết bị lưu trữ
Trang 13Hình 1.6: Hình ảnh một mạng VPN
Sự phân biệt trên chỉ có tính chất ước lệ, các phân biệt trên càng trở nên khóxác định với việc phát triển của khoa học và kỹ thuật cũng như các phương tiện truyềndẫn.Tuy nhiên với sự phân biệt trên phương diện địa lý đã đưa tới việc phân biệt trongnhiều đặc tính khác nhau của hai loại mạng trên, việc nghiên cứu các phân biệt đó cho
ta hiểu rõ hơn về các loại mạng
1.4 Mô hình OSI
Sự phát triển các mạng thời kỳ đầu không được tổ chức và diễn ra theo nhiềucách Những năm đầu thập niên 80 đã chứng kiến sự gia tăng mạnh mẽ về số lượng vàkích thước của các mạng Khi các công ty bắt đầu nhận thức được ưu điểm của việc sửdụng công nghệ mạng, các mạng được thêm vào và mở rộng nhanh chóng Do sự pháttriển quá nhanh khiến các công ty gặp phải những khó khăn, cũng giống như conngười bất đồng ngôn ngữ khi tiếp xúc với người khác ngôn ngữ, các mạng của cáccông ty và các hãng cũng gặp phải tình trạng tương tự do những đặc tả và những quyđịnh khác nhau trong việc thiết kế hệ thống mạng của mình
Để giải quyết vấn đề bất tương thích mạng, tổ chức tiêu chuẩn hóa quốc tế(ISO) đã nghiên cứu các mô hình mạng thiết lập như DECnet, SNA và TCP/IP để tìm
ra một số luật định có thể áp dụng một cách tổng quát cho tất cả các mạng Sử dụngnghiên cứu này ISO đã đưa ra một mô hình mạng, qua đó giúp các nhà cung cấp thiết
bị mạng tạo ra các mạng có thể tương thích tốt với các mạng khác
Mô hình tham chiếu các hệ thống mở OSI đã được công bố vào năm 1984, và là
mô hình có tính chất mô tả được tạo ra bởi ISO.Nó cung cấp cho các nhà sản xuất mộttập các tiêu chuẩn đảm bảo khả năng tương thích và khả năng liên kết hoạt động tốt hơngiữa các công nghệ mạng khác nhau được giới thiệu bởi các công ty trên khắp thế giới
Trang 14Môt hình tham chiếu OSI đã trở thành mô hình chính thức cho hoạt động truyềnthông mạng.Mặc dù tồn tại một số mô hình khác nhưng hầu hết các nhà chế tạo đềuđựa vào mô hình OSI để chế tạo các sản phẩn của họ.
1.5 Mô hình OSI với hệ thống cân bằng tải
Khi nói về thiết bị cân bằng tải, các lớp của mô hình OSI thường được đề cậpđến OSI đã được phát triển và được coi như một framework cho việc phát triển cácgiao thức và các ứng dụng Mô hình OSI có một sự tương đồng với các chuẩn của môhình mạng Internet (Mô hình TCP/IP) cái mà hệ thống cân bằng tải đang được ứngdụng ngày nay
Tầng ứng dụng (Application layer): tầng ứng dụng quy định giao diện giữangười sử dụng và môi trường OSI, nó cung cấp các phương tiện cho người sử dụngtruy cập vả sử dụng các dịch vụ của mô hình OSI
Tầng trình bày (Presentation layer): tầng trình bày chuyển đổi các thông tin từ
cú pháp người sử dụng sang cú pháp để truyền dữ liệu, ngoài ra nó có thể nén dữ liệutruyền và mã hóa chúng trước khi truyền đễ bảo mật
Tầng giao dịch (Session layer): tầng giao dịch quy định một giao diện ứng dụngcho tầng vận chuyển sử dụng Nó xác lập ánh xa giữa các tên đặt địa chỉ, tạo ra cáctiếp xúc ban đầu giữa các máy tính khác nhau trên cơ sở các giao dịch truyền thông.Nóđặt tên nhất quán cho mọi thành phần muốn đối thoại riêng với nhau
Các tầng từ 5 tới 7 thực hiện chức năng cân bằng tải qua việc sử dụng URLhoặc các thông tin trong gới dữ liệu như cookie DNS round robin là một ứng dụngđiển hình
Tầng giao vận (Transport layer): tầng vận chuyển xác định địa chỉ trên mạng,cách thức chuyển giao gói tin trên cơ sở trực tiếp giữa hai đầu mút (end-to-end) Đểbảo đảm được việc truyền ổn định trên mạng tầng vận chuyển thường đánh số các góitin và đảm bảo chúng chuyển theo thứ tự SLB sử dụng các thông tin về cổng và địachỉ để thực hiện các chức năng cân bằng tải
Trang 15Hình 1.7: Mô hình 7 tầng OSITầng mạng (Network layer): tầng mạng có nhiệm vụ xác định việc chuyểnhướng, vạch đường các gói tin trong mạng, các gói tin này có thể phải đi qua nhiềuchặng trước khi đến được đích cuối cùng Thường chức năng cân bảng tải cũng đượcthực hiện trên các router tại lớp mạng
Tầng liên kết dữ liệu (Data link layer): tầng liên kết dữ liệu có nhiệm vụ xácđịnh cơ chế truy nhập thông tin trên mạng, các dạng thức chung trong các gói tin, đóngcác gói tin Tại lớp liên kết dữ liệu các thiết bị như switch thường được nối với nhaubởi nhiều đường, và cũng thực hiện các chức năng phân phối tải theo các thuật toán đãđược cài đặt sẵn trong thiết bị
Tầng vật lý (Phisical layer): tầng vật lý cung cấp phương thức truy cập vàođường truyền vật lý để truyền các dòng Bit không cấu trúc, ngoài ra nó cung cấp cácchuẩn về điện, dây cáp, đầu nối, kỹ thuật nối mạch điện, điện áp, tốc độ cáp truyềndẫn, giao diện nối kết và các mức nối kết Chức năng cân bằng tải ở lớp vật lý thường
đề cập đến việc kết nối các thiết bị qua các cáp vật lý như cat 5, fiber…
Trang 16CHƯƠNG 2: TỔNG QUAN VỀ HỆ THỐNG CÂN BẰNG TẢI SERVER
2.1 Giới thiệu
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ủacông ty và hình ảnh công ty tất cả những thứ 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ủacá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ấtcao, 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
Tuy nhiên, sự sẵn có của các ứng dụng này thường bị đe dọa bởi quá tải mạngcũng như sự cố xảy ra trên các máy chủ và các ứng dụng Sử dụng tài nguyên thườngtrong sự cân bằng, dẫn đến các nguồn lực hiệu suất thấp đang quá tải với các yêu cầu,trong khi các nguồn lực hiệu suất cao vẫn nhàn rỗi Server Load Balancing (máy chủcân bằng tải) là một giải pháp giúp cân bằng lại giữa các nguồn lực và giúp tăng hiệusuất làm việc cho hệ thống mạng trong doanh nghiệp
2.2 Lợi ích của Server Load Blancing
Server Load Balancing (máy chủ cân bằng tải) là một quá trình phân phối cácyêu cầu dịch vụ trên một nhóm các máy chủ Server Load Balancingngày càng trở nênquan trọng trong hệ thống cơ sở hạ tầng mạng trong doanh nghiệp
So sánh hệ thống cân bằng tải và hệ thống thông thường
Trang 17Kịch bản A Kịch bản BTính sẵn sàng cao Có Không
Tính mở rộng Có Không
Ứng dụng Xử lý đa nhiệm Xử lý nhanh đơn nhiệm
Ưu điểm của cân bằng tải
Tính mở rộng: thêm hoặc bỏ bớt server một cách dễ dàng
Tính sẵn sàng cao do hệ thống dùng nhiều Server Vì vậy hệ thống có tính dựphòng
Tính quản lý: Theo dõi và 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 các dịch vụ
Có thể tách các ứng dụng khỏi server
Làm việc được với nhiều hệ điều hành
Hiệu suất cao
Server được nhóm lại thực hiện đa nhiệm vụ tốt hơn
Tất cả Server đều hoạt động đúng công suất không có tình trạng một Server làmviệc quá tải trong khi server khác lại đang “nhàn rỗi”
Những tổ chức nào cần có giải pháp cân bằng tải
Trường đại học, viện nghiên cứu…
Tóm lại, Server Load Balancing là một kỹ thuật mạnh mẽ để nâng cao tính sẵnsàng ứng dụng và hiệu quả trong việc cung cấp dịch vụ, các nhà cung cấp dịch vụ webcung cấp nội dung và mạng lưới doanh nghiệp, thực hiện trọn vẹn nhưng cũng có thểlàm tăng chi phí và độ phức tạp mạng Bên cạnh những ưu thế từ việc ứng dụng ServerLoad Balancing và các thiết bị không dây, nó còn có hạn chế là nếu hoạt động ở tốc độcao cũng có thể tạo ra nghẽn cổ chai của riêng mình
Trang 182.3 Tại sao phải xây dựng hệ thống cân bằng tải?
Trong thời đại bùng nổ của công nghệ thông tin hiện nay, mạng máy tính đóngvai trò ngày càng quan trọng hơn trong hoạt động của các doanh nghiệp, tổ chức cũngnhư các cơ quan nhà nước Thậm chí ở một số đơn vị, chẳng hạn như các công ty hàngkhông hoặc các ngân hàng lớn, mạng máy tính có thể ví như hệ thần kinh điều khiểnhoạt động của toàn doanh nghiệp Sự ngừng hoạt động của mạng máy tính hay sự hoạtđộng kém hiệu quả của mạng máy tính trong những cơ quan này có thể làm tê liệt cáchoạt động chính của đơn vị, và thiệt hại khó có thể lường trước được
Chúng ta đều biết các máy chủ là trái tim của của mạng máy tính, nếu máy chủmạng hỏng, hoạt động của hệ thống sẽ bị ngưng trệ Điều đáng tiếc là dù các hãng sảnxuất đã cố gắng làm mọi cách để nâng cao chất lượng của thiết bị, nhưng những hỏnghóc đối với các thiết bị mạng nói chung và các máy chủ nói riêng là điều không thểtránh khỏi Do vậy, vấn đề đặt ra là cần có một giải pháp để đảm bảo cho hệ thống vẫnhoạt động tốt ngay cả khi có sự cố xảy ra đối với máy chủ mạng Việc lựa chọn mộtserver đơn lẻ có cấu hình cực mạnh để đáp ứng nhu cầu này sẽ kéo theo chi phí đầu tưrất lớn và không giải quyết được các vấn đề đặt ra của các tổ chức Giải pháp hiệu quảđược đưa ra là sử dụng một nhóm server cùng thực hiện một chức nǎng dưới sự điềukhiển của một công cụ phân phối tải - Giải pháp cân bằng tải Có rất nhiều hãng đưa ragiải pháp cân bằng tải như Cisco, Coyote Point, Sun Microsystems với rất nhiều tínhnǎng phong phú Tuy nhiên, về cơ bản, nguyên tắc cân bằng tải vẫn xuất phát từ nhữngquan điểm kỹ thuật khá tương đồng Một kỹ thuật cân bằng tải điển hình là RRDNS(Round Robin DNS) Với giải pháp này, nếu một server trong nhóm bị lỗi, RRDNS sẽvẫn tiếp tục gửi tải cho server đó cho đến khi người quản trị mạng phát hiện ra lỗi vàtách server này ra khỏi danh sách địa chỉ DNS.Điều này sẽ gây ra sự đứt quãng dịch
vụ Sau những phát triển, từ các thuật toán cân bằng tải tĩnh như Round Robin,Weighted Round Robin đến các thuật toán cân bằng tải động như Least Connection,Weighted Least Connection, Optimized Weighted Round Robin và OptimizedWeighted Least Connection, kỹ thuật cân bằng tải hiện nay nhờ sự kết hợp các thuậttoán trên ngày càng trở nên hoàn thiện mặc dù nhược điểm vốn có như tạo điểm lỗiđơn và vấn đề nút cổ chai do sử dụng bộ điều phối tập trung (centralized dispatcher)vẫn còn Ngoài khả nǎng áp dụng với Web server, kỹ thuật này còn có thể áp dụng vớicác hệ server ứng dụng khác.SLB không chỉ làm nhiệm vụ phân phối tải cho các server
mà còn còn cung cấp cơ chế đảm bảo hệ thống server luôn khả dụng trước cácclient.SLB không có yêu cầu đặc biệt gì về phần cứng, bất cứ máy tính nào hợp chuẩnđều có thể được sử dụng làm server.Chi phí triển khai nhờ đó giảm đáng kể.Kiến trúc
Trang 19phần mềm phân tán của SLB cho phép cung cấp hiệu nǎng và tính khả dụng của kỹthuật này ở mức cao nhất.
2.4.Các giải pháp chia tải trên thế giới
Việc chia tải có thể thực hiện bằng nhiều phương cách, hình thức khác nhau, vớicác công nghệ khác nhau hoặc kết hợp chúng lại:
2.4.1 Chia tải bằng phần mềm cài trên các máy chủ
Kết hợp nhiều server một cách chặt chẽ tạo thành một server ảo (virtual server).Các hệ điều hành cho máy chủ thế hệ mới của các hãng Microsoft, IBM, HP hầu hếtđều cung cấp khả năng này, một số hãng phần mềm khác như Veritas(Symantec) cũngcung cấp giải pháp theo hướng này Các giải pháp thuộc nhóm này có ưu điểm là quenthuộc với những nhà quản trị chuyên nghiệp, có thể chia sẻ được nhiều tài nguyêntrong hệ thống, theo dõi được trạng thái của các máy chủ trong nhóm để chia tải hợp
lý Tuy nhiên, do sử dụng phần mềm trên server, tính phức tạp cao nên khả năng mởrộng của giải pháp này bị hạn chế, phức tạp khi triển khai cũng như khắc phục khi xảy
ra sự cố, có rào cản về tính tương thích, khó có được những tính năng tăng tốc và bảomật cho ứng dụng
2.4.2 Chia tải nhờ proxy
Nhóm này thường tận dụng khả năng chia tải sẵn có trên phần mềm proxy nhưISA Proxy của Microsoft hay Squid phần mềm mã nguồn mở cài trên máy phổ dụng.Proxy này sẽ thực hiện nhiệm vụ chia tải trên các server sao cho hợp lý.Giải pháp này
vì hoạt động ở mức ứng dụng nên có khả năng caching (là công nghệ lưu trữ cục bộ dữliệu được truy cập với tần suất cao) và khả năng firewall ở tầng ứng dụng.Vì sử dụngmáy phổ dụng nên giải pháp này có ưu điểm là chi phí thấp, khả năng mở rộng tốt vìcài đặt trên một máy độc lập, dễ quản trị Tuy nhiên, cũng vì chỉ hoạt động ở mức ứngdụng nên hiệu năng không cao, vì sử dụng máy phổ dụng nên không được tối ưu, dễtồn tại nhiều lỗi hệ thống, vì cài đặt trên một máy độc lập nên việc theo dõi trạng tháicủa các máy chủ gặp khó khăn Nhược điểm lớn nhất của các giải pháp dòng nàythường có tính ổn định kém, hiệu năng thấp, dễ mắc lỗi Đây là điều không thể chấpnhận được đối với các hệ thống đòi hỏi tính sẵn sàng cao như ngân hàng, tài chính
2.4.3 Chia tải nhờ thiết bị chia kết nối
Nhóm này thường sử dụng các mođun cắm thêm trên các thiết bị chuyên dụngnhư Bộ định tuyến (Router) hay hay bộ chuyển mạch (Switch) để chia tải theo luồng,thường hoạt động từ layer 4 trở xuống Vì sử dụng thiết bị chuyên dụng nên có hiệunăng cao, tính ổn định cao, khả năng mở rộng tốt hơn nhưng khó phát triển được tính
Trang 20năng bảo mật phức tạp như giải pháp proxy, thường thuật toán chia tải rất đơn giảnnhư DNS round-robin (đây là thuật toán chia tải phổ biến nhất và đơn giản, tuy nhiêncứng nhắc và hiệu quả thấp Với thuật toán này các yêu cầu về IP của một tên miềnứng với nhiều server sẽ được biên dịch thành địa chỉ IP của các server đó theo thứ tựquay vòng Nhóm này có khả năng chia tải động kém, không theo dõi được trạng tháicủa máy chủ, xử lý kết nối ở mức ứng dụng rất kém, dễ gây lỗi ứng dụng và giá thànhcao Cách thức này cũng hoàn toàn không phù hợp đối với các hệ thống yêu cầu tínhchuẩn xác của các hoạt động giao dịch như tài chính, ngân hàng.
Như vậy, giải pháp có khả năng theo dõi trạng thái ứng dụng tốt thì mở rộng,tăng tốc, bảo mật kém(Giải pháp dùng phần mềm) Giải pháp mở rộng, tăng tốc, bảomật tốt, thì theo dõi trạng thái ứng dụng kém, không ổn định, hiệu năng thấp(Giải pháp
sử dụng proxy), giải pháp hiệu năng cao, ổn định, mở rộng tốt thì kém thông minh, dễgây lỗi ứng dụng, tăng tốc kém(Giải pháp chia tải nhờ thiết bị chia kết nối) Trong khi
đó, tất cả các yêu cầu về hiệu năng cao, ổn định, mở rộng tốt, tăng tốc tốt và bảo mật làrất quan trọng đối với các hoạt động của ngân hàng, chứng khoán và các nhà cung cấpdịch vụ Giải pháp sẵn có của các hãng chỉ đáp ứng được một phần trong các yêu cầutrên như Module CSS của Cisco, ISA của Microsoft, hay Netscaler của Citrix)
Như vậy yêu cầu thực tế đặt ra là phải xây dựng được một hệ thống hoàn chỉnh
có khả năng quản trị lưu lượng, có khả năng kiểm soát, điều khiển và tối ưu hóa lưulượng mạng chạy qua nó.SLB là một giải pháp có thể giải quyết được hầu hết các yêucầu đặt ra ở trên với một sự tối ưu cao nhất
2.5 Các thành phần của SLB
2.5.1 Chức năng của các thành phần trong SLB
Một giải pháp cân bằng tải phải (Server Load Balancer) có những chức năng sau đây:
Can thiệp vào luồng dữ liệu mạng tới một điểm đích
Chia luồng dữ liệu đó thành các yêu cầu đơn lẻ và quyết định máy chủ nào sẽ
xử lý những yêu cầu đó
Duy trì việc theo dõi các máy chủ đang hoạt động, đảm bảo rằng các máy chủnày vẫn đang đáp ứng các yêu cầu đến Nếu máy chủ nào không hoạt độngđúng chức năng, máy chủ đó bắt buộc phải đưa ra khỏi danh sách xoay vòng
Cung cấp sự đa dạng bằng việc tận dụng nhiều hơn một đơn vị trong các tìnhhuống fail-over (fail-over là khả năng tự động chuyển qua các thiết bị dựphòng khi gặp tình huống hỏng hóc hoặc trục trặc Việc thực thi này đượcthực hiện mà không có sự can thiệp của con người cũng như không có bất sựcảnh báo nào)
Trang 21 Cung cấp sự phân phối dự trên sự hiểu biết về nội dung ví dụ như đọc URL, canthiệp vào cookies hoặc truyền XML.
2.5.2 Các thành phần của SLB
Server Load Balancers: Load Balancer là một thiết bị phân phối tải giữa các máy tính
với nhau và các máy tính này sẽ xuất hiện chỉ như một máy tính duy nhất Phần dướiđây sẽ thảo luận chi tiết hơn về các thành phần của các thiết bị SLB
VIPs: Virtual IP (VIP) là một dạng thể hiện của của cân bằng tải Mỗi VIP sử dụng
một địa chỉ công khai IP.Bên cạnh đó, một cổng TCP hay UDP sẽ đi kèm với một VIPnhư cổng TCP 80 được dành cho luồng dữ liệu của web.Một VIP sẽ có ít nhất mộtmáy chủ thực sự được gán địa chỉ IP đó và máy chủ này sẽ làm nhiệm vụ phân phốiluồng dữ liệu được chuyển đến Thường thường thì sẽ có vài máy chủ và VIP sẽ dànđều luồng dữ liệu đến cho các máy chủ bằng cách sử dụng các metric hoặc các phươngthức được mô tả trong phần “Active - Active Scenario”
Các máy chủ (Servers): Máy chủ chạy một dịch vụ được chia sẻ tải giữa các dịch vụ
khác Máy chủ thường được ám chỉ tới các máy chủ HTTP, mặc dù các máy chủ kháchoặc ngay cả những dịch vụ khác có liên quan Một máy chủ thường có một địa chỉ IP
và một cổng TCP/UDP gắn liền với nó và không có địa chỉ IP công khai (điều này cònphụ thuộc vào topo của mạng)
Nhóm (Groups): Dùng để chỉ một nhóm các máy chủ được cân bằng tải Các thuật
ngữ như “farm” hoặc “server farm” có cùng một ý nghĩa với thuật ngữ này
Cấp độ người dùng truy nhập (User - Access Levels): Là một nhóm các quyền được
gán cho một người dùng nào đó khi đăng nhập vào một thiết bị cân bằng tải Khôngchỉ những nhà cung cấp thiết bị khác nhau cung cấp những cấp độ truy nhập khácnhau, mà hầu hết các dịch vụ cũng sẽ có những cách thức truy nhập rất khácnhau.Cách triển khai phổ biến nhất là của Cisco, cung cấp truy nhập dựa trên tài khoảnngười dùng (cho phép cả tài khoản superuser) Một phương thức phổ biến khác là cáchthức truy cập cấp độ người dùng được dùng trong các hệ thống Unix
Read-only: Cấp độ truy cập chỉ đọc (Read-only) không cho phép bất kỳ một
thay đổi nào được thực hiện Một người dùng có quyền chỉ đọc chỉ có thể xemcác thiết đặt, các cấu hình, và nhiều thứ khác nữa nhưng không thể thực hiệnđược bất kỳ một thay đổi nào cả Một tài khoản như thế được sử dụng để xemcác thống kê hiệu suất hoạt động của thiết bị.Truy nhập chỉ đọc thường là cấp
độ truy cập đầu tiên của một người dùng khi đăng nhập vào hệ thống trước khithay đổi sang các chế độ với quyền truy cập cao hơn