Ngày nay, Việc sử dụng internet như một công cụ làm việc đã trở thành thói quen của mỗi người, có những doanh nghiệp thậm chí còn hoạt động và thu nguồn lợi nhuận chính bằng internet. Tuy nhiên khả năng gián đoạn internet hay rất thường xuyên xảy ra, một phần vì hạ tầng để phục vụ internet của Việt Nam còn rất yếu. Gây tổn thất về tài chính, uy tín cũng như thời gian. Chính vì vậy cần khắc phục tình trạng đó và phương pháp Load-Balancing là một phương pháp hiệu quả, đơn giản và có chi phí thấp
42 trang |
Chia sẻ: ngtr9097 | Lượt xem: 3249 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Báo cáo Xây dựng hệ thống mail nội bộ trong domain với exchange server Tạo các mail cho user, tiến hành gửi mail giữa các user nội bộ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
-----&-----
BÁO CÁO BÀI TẬP LỚN
XÂY DỰNG HỆ THỐNG MAIL NỘI BỘ TRONG DOMAIN VỚI EXCHANGE SERVER. TẠO CÁC MAIL CHO USER, TIẾN HÀNH GỬI MAIL GIỮA CÁC USER NỘI BỘ
Giáo viên hướng dẫn: NGUYỄN THÀNH HUY
Sinh viên thực hiện : Bùi Hoàng Nam
Nguyễn Thị Thu Thảo
Đinh Thị Quỳnh
Đinh Thị Huệ
Lớp : 09B6
Hà Nội, ngày 21 tháng 12 năm 2012
HÀ NỘI - 2/2012
Lời mở đầu
***
Ngày nay, Việc sử dụng internet như một công cụ làm việc đã trở thành thói quen của mỗi người, có những doanh nghiệp thậm chí còn hoạt động và thu nguồn lợi nhuận chính bằng internet. Tuy nhiên khả năng gián đoạn internet hay rất thường xuyên xảy ra, một phần vì hạ tầng để phục vụ internet của Việt Nam còn rất yếu. Gây tổn thất về tài chính, uy tín cũng như thời gian. Chính vì vậy cần khắc phục tình trạng đó và phương pháp Load-Balancing là một phương pháp hiệu quả, đơn giản và có chi phí thấp
Phần I: Một số khái niệm và định nghĩa
Network Load Balancing( NLB) là gì?
NLB mở rộng hiệu năng của các server ứng dụng, chẳng hạn như Web server, nhờ phân phối các yêu cầu của client cho các server trong nhóm (cluster). Các server (hay còn gọi là host) đều nhận gói IP đến, nhưng gói chỉ được xử lý bởi một server nhất định.
Các host trong nhóm sẽ đồng thời đáp ứng các yêu cầu khác nhau của các client, cho dù một client có thể đưa ra nhiều yêu cầu. Ví dụ, một trình duyệt Web cần rất nhiều hình ảnh trên một trang Web được lưu trữ tại nhiều host khác nhau trong một nhóm server. Với kỹ thuật cân bằng tải, quá trình xử lý và thời gian đáp ứng client sẽ nhanh hơn nhiều.
Mỗi host trong nhóm có thể định ra mức tải mà nó sẽ xử lý hoặc tải có thể phân phối một cách đồng đều giữa các host. Nhờ sử dụng việc phân phối tải này, mỗi server sẽ lựa chọn và xử lý một phần tải của host. Tải do các client gửi đến được phân phối sao cho mỗi server nhận được số lượng các yêu cầu theo đúng phần tải đã định của nó.
Sự cân bằng tải này có thể điều chỉnh động khi các host tham gia vào hoặc rời khỏi nhóm. Đối với các ứng dụng như Web server, có rất nhiều client và thời gian mà các yêu cầu của client tồn tại tương đối ngắn, khả năng của kỹ thuật này nhằm phân phối tải thông qua ánh xạ thống kê sẽ giúp cân bằng một cách hiệu quả các tải và cung cấp khả năng đáp ứng nhanh khi nhóm server có thay đổi.
Các server trong nhóm cân bằng tải phát đi một bản tin đặc biệt thông báo trạng thái hoạt động của nó (gọi là heartbeat message) tới các host khác trong nhóm đồng thời nghe bản tin này từ các khác host khác. Nếu một server trong nhóm gặp trục trặc, các host khác sẽ điều chỉnh và tái phân phối lại tải để duy trì liên tục các dịch vụ cho các client.
Trong phần lớn các trường hợp, phần mềm client thường tự động kết nối lại và người sử dụng chỉ cảm thấy trễ một vài giây khi nhận được đáp ứng trả lời.
Tại sao phải sử dụng NLB
Ngày nay, Việc sử dụng internet như một công cụ làm việc đã trở thành thói quen của mỗi người, có những doanh nghiệp thậm chí còn hoạt động và thu nguồn lợi nhuận chính bằng internet. Tuy nhiên khả năng gián đoạn internet hay còn gọi là "rớt mạng" rất thường xuyên xảy ra, một phần vì hạ tầng để phục vụ internet của Việt Nam còn rất yếu. Việc gián đoạn internet ảnh hưởng rất nhiều đến người sử dụng, doanh nghiệp vv..
Với việc sử dụng giải pháp Network Load Balancing( NLB) với khả năng cân bằng tải (lưu lượng đẩy lên xuống ngang bằng nhau, đảm bảo băng thông hoạt động tối ưu nhất, tăng hiệu quả sử dụng và giảm chi phí). Tính năng Fail-Over (một đường chạy, một đường dự phòng, đường dự phòng sẽ tự động chạy khi đường chính gặp sự cố, thích hợp cho những ứng dụng đòi hỏi tốc độ cao và ổn định)……. Và nhiều biện pháp bảo mật cao, hỗ trợ mạnh trên nhiều phương diện. NLB là một biện pháp chi phí thấp nhưng hiệu quả lại cao.
Một số cách NLB
Load balancing cho các thiết bị vật lý (Cisco, đường truyền,...)
Load balancing cho các phần mềm cung cấp dịch vụ(web server, FTP server, Mail server,...).
Một số tính năng của NLB
- Asymmetric load (Không đối xứng tải) : tỷ lệ có thể được phân công theo cách thủ công để gây ra một số máy chủ phụ trợ để có được một phần lớn của khối lượng công việc hơn những người khác.
- Priority activation (Ưu tiên kích hoạt) : Khi số lượng các máy chủ có sẵn giảm xuống dưới một số lượng nhất định, hoặc tải được quá cao, máy chủ dự phòng có thể được đưa vào sử dụng ( online )
- SSL offload và Acceleration: Ứng dụng SSL có thể là một gánh nặng lớn về tài nguyên của một máy chủ web, đặc biệt là vào CPU và người dùng cuối có thể thấy một phản ứng chậm (hoặc tại các máy chủ rất ít khi chi tiêu nhiều chu kỳ thực hiện những điều họ không được dự định để làm). Để giải quyết những loại vấn đề trên, Cân bằng tải có khả năng xử lý SSL, giảm tải trong phần cứng chuyên dụng đang sử dụng. Khi Load Balancers đang dùng các kết nối SSL, gánh nặng trên Máy chủ Web đang giảm và hiệu suất sẽ không làm suy giảm cho người dùng cuối.
- Distributed Denial of Service (DDoS) bảo vệ tấn công : cân bằng tải có thể cung cấp các tính năng như SYN cookie và trì hoãn-binding (phía sau máy chủ kết thúc không thấy client cho đến khi nó kết thúc của nó kết hợp TCP) để giảm thiểu tấn công SYN Flood và nói chung offload làm việc từ các máy chủ với một nền tảng hiệu quả hơn.
- HTTP compression (HTTP nén): làm giảm số lượng dữ liệu được chuyển giao cho các đối tượng HTTP bằng cách sử dụng nén gzip sẵn trong tất cả các trình duyệt web hiện đại
- TCP offload: nhà cung cấp khác nhau sử dụng các điều khoản khác nhau cho điều này, nhưng ý tưởng là bình thường mỗi yêu cầu của HTTP từ mỗi client là một kết nối TCP khác nhau. HTTP/1.1 sử dụng tính năng này để củng cố nhiều HTTP theo yêu cầu từ client nhiều vào một ổ cắm TCP duy nhất để các máy chủ back-end.
- TCP buffering (TCP đệm): sự cân bằng tải có thể đệm hồi đáp từ máy chủ và spoon-feed dữ liệu ra chậm client, cho phép các máy chủ để chuyển sang các nhiệm vụ khác.
- Direct Server Return: một lựa chọn để phân phối tải không đối xứng, trong đó có yêu cầu và trả lời các đường mạng khác nhau.
- Kiểm tra Health: các cuộc thăm dò máy chủ sẽ cân bằng cho Health lớp ứng dụng và gỡ bỏ các máy chủ thất bại từ hồ bơi.
- HTTP caching: việc cân bằng tải có thể lưu trữ nội dung tĩnh để cho một số yêu cầu có thể bị xử lý mà không cần liên hệ với cácmáy chủ web.
- Lọc nội dung: một số cân bằng tải có thể thay đổi tùy tiện giao thông trên đường thông qua.
- HTTP bảo mật: một số cân bằng tải có thể ẩn các trang lỗi HTTP, gỡ bỏ các phần đầu nhận dạng máy chủ từ hồi đáp HTTP, và cookie mã hóa để người sử dụng cuối cùng không thể thao tác chúng.
- Priority queuing (Ưu tiên xếp hàng): còn được gọi là tỷ lệ hình, khả năng ưu tiên khác nhau để giao thông khác nhau.
- Content aware switching (Nội dung chuyển đổi nhận thức): hầu hết các cân bằng tải có thể gửi yêu cầu đến các máy chủ khác nhau dựa trên URL được yêu cầu.
- Client authentication (xác thực client ): người dùng xác thực đối với nhiều nguồn khác nhau xác thực trước khi cho phép họ truy cập vào một trang web.
- Programmatic traffic manipulation (Thao tác chương trình giao thông): ít nhất một cân bằng tải cho phép sử dụng một ngôn ngữ kịch bản để cho phép tùy chỉnh phương pháp cân bằng tải, thao tác lưu lượng truy cập tùy ý, và nhiều hơn nữa.
- Firewall ( tường lửa): kết nối trực tiếp tới máy chủ backend là phòng ngừa, vì lý do an ninh mạng. Phòng chống xâm nhập hệ thống: cung cấp ứng dụng lớp bảo mật, thêm vào mạng / lớp vận tải được cung cấp bởi tường lửa bảo mật.
Phần II: Phương thức hoạt động
Cách thức hoạt động của Network Load Balancing
NLB mở rộng hiệu nǎng của các server ứng dụng, chẳng hạn như Web server, nhờ phân phối các yêu cầu của client cho các server trong nhóm (cluster). Các server (hay còn gọi là host) đều nhận gói IP đến, nhưng gói chỉ được xử lý bởi một server nhất định. Các host trong nhóm sẽ đồng thời đáp ứng các yêu cầu khác nhau của các client, cho dù một client có thể đưa ra nhiều yêu cầu. Ví dụ, một trình duyệt Web cần rất nhiều hình ảnh trên một trang Web được lưu trữ tại nhiều host khác nhau trong một nhóm server. Với kỹ thuật cân bằng tải, quá trình xử lý và thời gian đáp ứng client sẽ nhanh hơn nhiều.
Mỗi host trong nhóm có thể định ra mức tải mà nó sẽ xử lý hoặc tải có thể phân phối một cách đồng đều giữa các host. Nhờ sử dụng việc phân phối tải này, mỗi server sẽ lựa chọn và xử lý một phần tải của host. Tải do các client gửi đến được phân phối sao cho mỗi server nhận được số lượng các yêu cầu theo đúng phần tải đã định của nó. Sự cân bằng tải này có thể điều chỉnh động khi các host tham gia vào hoặc rời khỏi nhóm. Đối với các ứng dụng như Web server, có rất nhiều client và thời gian mà các yêu cầu của client tồn tại tương đối ngắn, khả nǎng của kỹ thuật này nhằm phân phối tải thông qua ánh xạ thống kê sẽ giúp cân bằng một cách hiệu quả các tải và cung cấp khả nǎng đáp ứng nhanh khi nhóm server có thay đổi.
Các server trong nhóm cân bằng tải phát đi một bản tin đặc biệt thông báo trạng thái hoạt động của nó (gọi là heartbeat message) tới các host khác trong nhóm đồng thời nghe bản tin này từ các khác host khác. Nếu một server trong nhóm gặp trục trặc, các host khác sẽ điều chỉnh và tái phân phối lại tải để duy trì liên tục các dịch vụ cho các client. Trong phần lớn các trường hợp, phần mềm client thường tự động kết nối lại và người sử dụng chỉ cảm thấy trễ một vài giây khi nhận được đáp ứng trả lời.
Kiến trúc của Network Load Balancing
Để tối đa hoá thông lượng và độ khả dụng, công nghệ cân bằng tải sử dụng kiến trúc phần mềm phân tán hoàn toàn, trình điều khiển cân bằng tải được cài đặt và chạy song song trên tất cả các host trong nhóm. Trình điều khiển này sắp xếp tất cả các host trong nhóm vào một mạng con để phát hiện đồng thời lưu lượng mạng đến địa chỉ IP chính của nhóm (và các địa chỉ bổ sung của các host ở nhiều vị trí khác nhau). Trên mỗi host, trình điều khiển hoạt động như một bộ lọc giữa trình điều khiển card mạng và chồng giao thức TCP/IP, cho phép một phần lưu lượng mạng đến được nhận bởi host đó. Nhờ đó, các yêu cầu của client sẽ được phân vùng và cân bằng tải giữa các host trong nhóm.
Hệ thống cân bằng tải chạy như một trình điều khiển mạng (về mặt logic) nằm dưới các giao thức lớp ứng dụng như HTTP hay FTP. Hình sau cho thấy việc triển khai hệ thống cân bằng tải như một trình điều khiển trung gian trong chồng giao thức mạng của Windows2000 tại mỗi host trong nhóm.
Kiến trúc này tối đa hoá dung lượng nhờ việc sử dụng mạng quảng bá để phân phối lưu lượng mạng đến tất cả các host trong nhóm và loại bỏ sự cần thiết phải định tuyến các gói đến từng host riêng lẻ. Do thời gian lọc các gói không mong muốn diễn ra nhanh hơn thời gian định tuyến các gói (định tuyến bao gồm các quá trình nhận gói, kiểm tra, đóng gói lại và gửi đi), kiến trúc này cung cấp thông lượng cao hơn các giải pháp dựa trên bộ điều phối. Khi tốc độ của mạng và server tăng lên, thông lượng cũng tăng theo tỉ lệ thuận, do đó loại bỏ được bất cứ sự lệ thuộc nào vào việc định tuyến dựa trên các phần cứng đặc biệt. Trên thực tế, bộ cân bằng tải có thể đạt thông lượng 250Mbit/s trong các mạng Gigabit. Một ưu điểm cơ bản khác của kiến trúc phân tán hoàn toàn là độ khả dụng được tăng cường với (N-1) cách khắc phục lỗi trong một nhóm có N host. Các giải pháp dựa trên bộ điều phối tạo ra một điểm lỗi kế thừa mà chỉ có thể được khắc phục bằng cách sử dụng một bộ điều phối dự phòng và do đó chỉ cung cấp một cách khắc phục lỗi duy nhất.
Kiến trúc NLB trong windows server 2k
Kiến trúc cân bằng tải tận dụng được những ưu điểm về kiến trúc các thiết bị chuyển mạch (switch) và/hoặc các bộ tập trung (hub) của mạng con trong việc đồng thời phân phối lưu lượng mạng đến tất cả cac host trong nhóm.
Trong quá trình nhận gói, việc triển khai của NLB là sự kết hợp giữa việc phân phối các gói tới tầng TCP/IP và nhận các gói khác qua trình điều khiển card mạng. Việc này giúp tăng tốc độ xử lý chung và giảm trễ do TCP/IP có thể xử lý gói trong khi trình điều khiển NDIS (Network Driver Interface Specification) nhận gói tiếp theo. Trong quá trình gửi gói, NLB cũng tăng cường thông lượng, giảm độ trễ và phụ phí (overhead) nhờ tăng số lượng gói mà TCP/IP có thể gửi trong một kết nối. Để có được những cải thiện về hiệu năng này, NLB thiết lập và quản lý một tập hợp các bộ đệm gói và các ký hiệu (descriptor) được sử dụng để phối hợp các hoạt động của TCP/IP và trình điều khiển NDIS.
Phần III:Mô phỏng network-balancing trên Windows server 2008
Cài đặt IIS
Cài đặt cho server 09B3-1 – IP: 192.168.1.2
Mở Start -> Server Manager
Server Manager xuất hiện, ở menu bên trái chọn Roles, phía bên phải chọn Add Roles (hoặc chuột phải vào Roles chọn New Roles).
Xuất hiện hộp thoại Add Roles Wizard, click chọn Next.
Đánh dấu chọn vào Web Server (IIS), click chọn Next.
Tiếp tục click vào Next 2 lần nữa.
Chọn Install để bắt đầu cài đặt và chờ cho máy cái xong chương trình.
Sau khi cài xong, sẽ có thông báo Installation succeeded ở phía trên, chọn Close để thoát.
Tắt Server Manager và test thử bằng cách mở Internet Explorer, trong phần địa chỉ gõ vào IP:
Cài đặt cho server 09B3-2 – IP: 192.168.1.3
Tương tự như cài đặt cho server 09B3-1. Sau khi cài xong tiến hành test bằng cách mở Internet Explorer, gõ vào phần địa chỉ IP:
Cài đặt Network Load Balancing và cấu hình.
Cài đặt
Server 09B3-1
Mở Server Manager trong Start. Bên trái chọn Features, bên phải chọn Add Features (hoặc chuột phải Features chọn New Features).
Đánh dấu chọn Network Load Balancing, click chọn Next.
Chọn Install để bắt đầu cài đặt.
Sau khi cài xong sẽ có thông báo Installation succeeded ở phía trên, chọn Close để thoát.
Server 09B3-2
Tiến hành cài đặt Network Load Balancing tương tự như cài server 09B3-1.
Cấu hình
Mở Network Load Balancing Manager trong Start.
Chuột phải vào Network Load Balancing Cluster chọn New Cluster.
Xuất hiện cửa sổ New Cluster. Ô Host điền vào địa chỉ IP của server 09B3-1 là 192.168.1.2
Ấn Connect rồi chờ 1 lúc sẽ có liệt kê ra NIC của server 09B3-1 -> chọn Local Area Connection và click Next.
Phần Priority (unique host identifier) chọn 1 rồi click Next.
Chọn Add.
Ô IPv4 address điền vào 192.168.1.90
Ô Subnet mask điền vào 255.255.255.0
OK
Click Next để tiếp tục cấu hình.
Ở phần Cluster IP configuration, ô Full Internet name điền vào 09B3
Phần Cluster operation mode chọn Unicast.
Tiếp theo chọn Edit.
Phần Port range, 2 ô From và To để 2 giá trị là 80.
Phần Filtering mode, Afinity chọn None.
OK.
Click OK rồi Finish để hoàn thành cấu hình.
Sau khi hoàn thành cấu hình server 09B3-1, ta tiến hành add server 09B3-2
Chuột phải vào 09B3 (192.168.1.90) chọn Add Host To Cluster.
Ô Host điền vào IP của server 09B3-2 là 192.168.1.3
Ấn Connect rồi chờ 1 lúc sẽ có liệt kê ra NIC của server 09B3-2 -> chọn Local Area Connection và click Next.
Next tiếp 2 lần rồi Finish.
Chờ 1 lúc ta có kết quả như sau
Kiểm tra
Mở Command Promt trong Start.
Gõ vào ipconfig /all
Ta thấy kết cả 2 server đã được gán Cluster Virtual IP: 192.168.1.90
Server 09B3-1
Server 09B3-2
Kiểm tra
Mở Internet Explorer, nhập vào địa chỉ website tại server 09B3-1 hoạt động.
Thử đổi địa chỉ lại thành website tại server 09B3-2 hoạt động.
Đổi địa chỉ thành website hoạt động. Hoàn thành cân bằng tải server 09B3-1 và 09B3-2. Một server bị lỗi thì website vẫn hoạt động bình thường.