M C L C
Ụ
Ụ
1
L I C M N Ờ Ả Ơ
L i đ u tiên, nhóm em mu n g i l i c m n chân thành nh t t i Ths.Tr ố ử ờ ả ơ ờ ầ ấ ớ ươ ế ng Ti n
Vũ, ng i đã tr c ti p h ng d n và có nh ng l ườ ự ế ướ ữ ẫ ờ i góp ý, cùng nhi u tài li u b ích đ ề ệ ổ ể
c hoàn thành. đ tài này đ ề ượ
ạ Em cũng xin chân thành c m n các th y cô giáo khoa công ngh thông tin đã t o ả ơ ệ ầ
ả đi u ki n h c t p và nghiên c u trong nh ng năm h c t p v a qua. Xin chân thành c m ọ ậ ừ ọ ậ ứ ữ ề ệ
n các b n h c cùng l p đã có nh ng l ơ ữ ạ ọ ớ ờ ộ ự i đ ng viên quý báu trong su t th i gian th c ố ờ
hi n đ tài này. ề ệ
L i cu i, nhóm mu n g i l i bi t n sâu s c t i gia đình c a t ng thành viên. Gia ố ử ờ ố ờ ế ơ ắ ớ ủ ừ
đình luôn là ngu n đ ng viên tinh th n và c vũ l n lao, là đ ng l c giúp nhóm thành ự ầ ồ ộ ổ ớ ộ
công trong h c t p, công vi c và cu c s ng. ộ ố ọ ậ ệ
Đà N ng, ngày 10 tháng 1 năm 2013 ẵ
DANH M C CÁC THU T NG VI T T T
Ữ Ế Ắ
Ụ
Ậ
SLB Server load blancing i máy ch Cân b ng t ằ ả ủ
NLB Network load blancing Cân b ng t ằ ả i m ng ạ
2
DNS Domain Name System H th ng tên mi n ề ệ ố
DFS Distributed File System Phân ph i h th ng t p tin ố ệ ố ậ
DANH M C HÌNH V Ụ
Ẽ
ệ ủ
ầ ứ ằ
ử
i server và h th ng th ng ằ ệ ố ườ
ị
ả
ị
3
Trang 11 12 13 14 15 16 19 23 28 28 29 29 30 Hình Hình 1.1. Cách làm vi c c a Cookie user = 1 Hình 1.2. Cookie read Hình 1.3. Cookie – insert i chèn 1 Cookie Hình 1.4. B cân b ng t ằ ả ộ i ghi đè 1 Cookie Hình 1.5. B cân b ng t ả ằ ộ i s d ng ph n c ng Hình 1.6. Cân b ng t ả ử ụ Hình 1.7. X lý các yêu c u k t n i t p trung ầ ế ố ậ Hình 2.1. So sánh h th ng cân b ng t ả ệ ố Hình 2.2. K ch b n Active – Standby ả Hình 2.3. Ho t đ ng c a k ch b n Active - Standby ạ ộ ủ ị Hình 2.4. K ch b n Active – Active ả Hình 2.5. Ho t đ ng c a k ch b n Active - Active ạ ộ ủ ị Hình 2.6. Ho t đ ng c a k ch b n Active - Active ủ ị ạ ộ ả ả
Hình 2.7. H th ng SLB đ n gi n ả ơ Hình 2.8. C u trúc th m c th t s c a 1 h th ng DFS 35 37 ệ ố ấ ậ ự ủ ư ụ ệ ố
M Đ U Ở Ầ
I. Lý do ch n đ tài
ọ ề
Công ngh m ng và các h th ng máy ch ngày nay đã có nh ng b ệ ạ ệ ố ủ ữ ướ ể c phát tri n
t b c. Nh đó đáp ng đ c các ng d ng th ng m i r ng l n nh các giao d ch v ượ ậ ứ ờ ượ ứ ụ ươ ạ ộ ư ớ ị
ề tài chính, h th ng c s d li u, h th ng web server, file server, các ng d ng truy n ơ ở ữ ệ ệ ố ệ ố ứ ụ
media…. Các ng d ng này coa t n su t s d ng cao, yêu c u ho t đ ng liên t c. Do ấ ử ụ ạ ộ ứ ụ ụ ầ ầ
i u đ đáp ng đ c m t l v y, h th ng m ng ph i có kh năng m r ng t ả ậ ệ ố ở ộ ạ ả ố ư ể ứ ượ ộ ượ ớ ng l n
cá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ông ủ ầ ườ ộ ộ ễ ấ
mong 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 máy tr m, các máy tính mini và các h ứ ườ ạ ồ ệ
ng đ c g i là các nút. S nghiên th ng máy tính đa năng l n. Các h th ng này th ớ ệ ố ố ườ ượ ự ọ
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 n thô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 song song 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án trong 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 ề ề ể ể ầ ạ ậ ồ
i u, đ tin 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 ự ả ế ự ố ư ộ ệ ố ẻ ạ ộ
c y, kh năng truy n thông và đ kh m . M t trong nh ng v n đ thú v nh t c a h ậ ấ ủ ệ ả ở ữ ề ề ấ ả ộ ộ ị
th ng m ng phân tán là c i ti n s t i u c a h th ng qua s cân b ng t ả ế ự ố ư ủ ệ ố ự ằ ạ ố ả i gi a các ữ
nút hay các máy ch .ủ
V i lý do trên, em đã l a ch n đ tài: “Tìm hi u k thu t cân b ng t i File Server”. ể ỹ ự ề ậ ằ ọ ớ ả
4
Đây là m t v n đ khá quan tr ng trong vi c thi t k các h th ng m ng hi n nay, các ộ ấ ề ệ ọ ế ế ệ ố ệ ạ
ụ trung tâm tính toán hi u năng cao và các trung tâm d li u ph c v cho các ng d ng ụ ụ ữ ệ ứ ệ
l n.ớ
II. M c tiêu ụ
Đ tài này s giúp chúng ta bi c các quá trình c n thi ề ẽ t đ ế ượ ầ ế ể t đ có th cân b ng t ể ằ ả i
cho m t h th ng m ng. Giúp ta bi t sâu h n v khái ni m cũng nh ch c năng cân ộ ệ ố ạ ế ư ứ ề ệ ơ
III. Ph m vi nghiên c u
i c a File Server 2008. b ng t ằ ả ủ
ứ
ạ
ằ Trong quá trình nghiên c u và tìm hiêu làm đ tài. Có r t nhi u v n đ v cân b ng ề ề ứ ề ề ấ ấ
i trên server và các ng d ng tri n khai trên đó, nh ng t ả ư ở ề ộ đ tài này ch nghiên c u m t ứ ụ ứ ể ỉ
m ng nh c a h th ng cân b ng t i đó là File Server, nghiên c u t ng quan v khái ỏ ủ ệ ố ả ằ ả ứ ổ ề
ni m cân b ng t i, các ch ng năng chính và phân lo i cân b ng t ệ ằ ả ứ ạ ằ ả ể i và cu i cùng là tri n ố
IV.
khai gi i pháp cân b ng t i trên File Server 2008. ả ằ ả
Ph
ng pháp nghiên c u
ươ
ứ
ệ Đ c k và n m b t các yêu c u c a đ án đ ra. Đi sâu trong vi c tìm ki m tài li u ầ ủ ồ ọ ỹ ề ệ ế ắ ắ
ủ và trình bày m t cách h p lý, chăm chú l ng nghe và ti p thu nh ng ý ki n đóng góp c a ữ ế ế ắ ộ ợ
V. Ý nghĩa khoa h c và th c ti n c a đ tài
giáo viên h ng d n và các th y cô. ướ ẫ ầ
ự ễ ủ ề
ọ
V m t lý thuy t, đ tài là m t cách ti p c n trong v n đ tìm hi u các v n đ ế ề ặ ế ề ề ể ậ ấ ấ ộ ề
trong cân b ng t ằ ả i trên File Server, tìm hi u v Windows Server 2008. ể ề
V m t th c ti n, đ tài s góp ph n nâng cao kh năng t ề ặ ự ễ ề ẽ ầ ả ổ ứ ch c và tri n khai cân ể
5
b ng t ằ ả i trên File Server 2008 vào m t h th ng m ng n i b . ộ ộ ộ ệ ố ạ
CH
ƯƠ
NG I: T NG QUAN V CÂN B NG T I Ả
Ổ
Ằ
Ề
1.1. Gi
ớ i thi u cân b ng t i ả ệ ằ
1.1.1. Khái ni m cân b ng t ệ
i
ằ i ả
Cân b ng t ằ
ả 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 ể ử ụ ộ ụ ể ặ ố ư ồ ự ố
ng, gi m th i gian đáp ng và tránh tình tr ng quá t i trên máy ch . Là c ch đ nh l ượ ứ ạ ả ờ ả ơ ế ị ủ
tuy n các gói tin qua các đ ng có metric b ng nhau. Cân b ng t ế ườ ằ ằ ả i dùng đ chia s d ể ẻ ữ
li u truy n trên m ng giúp cho vi c truy n t ề ả ệ ề ệ ạ i thông su t, không b ngh n m ng do quá ị ẽ ạ ố
t ả i hay do m t s c nào đó. Ho c khi có m t máy server nào đó b tr c tr c thì s có ộ ộ ự ố ị ụ ẽ ặ ặ
máy server khác thay th đ giúp nh n d li u thay th cho server b tr c tr c đó, giúp ữ ệ ế ể ị ụ ế ậ ặ
1.1.2. L i ích cân b ng t
cho vi c truy n t i không b ng ng do máy server b l i đó gây ra. ề ả ệ ị ừ ị ỗ
• Tăng kh năng đáp ng, tránh tình tr ng quá t
ợ ằ i ả
i trên máy ch ứ ả ạ ả ủ, đ m b o tính ả ả
• Tăng đ tin c y và kh năng d phòng cho h th ng
linh ho t và m r 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
i s c l i t dùng không b gián đo n d ch v khi x y ra l ạ ụ ả ị ị ỗ ự ố ỗ ạ ấ i m t đi m cung c p ể ộ
• Tăng tính b o m t cho h th ng
d ch v . ụ ị
ng khi ng ệ ố : Thông th ả ậ ườ ườ ầ i dùng g i yêu c u ử
i, sau đó thành d ch v đ n h th ng, yêu c u đó s đ ị ệ ố ụ ế ẽ ượ ử c x lý trên b cân b ng t ộ ầ ằ ả
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àng cũ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 c chính xác các máy ch bên trong cũng nh ườ ể t đ ế ượ ủ ư
ph ng pháp phân t c s d ng. B ng cách này có th ngăn ch n ng i đ 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 ộ ấ ừ ụ ạ ặ ị
6
đ ng trên các c ng khác. ộ ổ
1.2. K thu t cân b ng t ậ
ằ ỹ i ả
Nh chúng ta đã bi t, b cân b ng t i có nhi m v k t n i gi a ng i dùng và ư ế ằ ộ ả ụ ế ố ữ ệ ườ
server, do đó nó có th ho t đ ng nh m t proxy ho c gateway. M t proxy có nhi m v ư ộ ạ ộ ể ệ ặ ộ ụ
gi a ng luân chuy n yêu c u và d li u đáp tr ầ ữ ệ ể ả ữ ườ ộ i dùng và server, trong khi đó m t
ng này và không làm gì thêm. Có gateway ch có nhi m v t o ra m t k t n i hai đ i t ụ ạ ộ ế ố ố ượ ệ ỉ
th s d ng ph n c ng ho c ph n m m đ c cài đ t trên m t front server, ho c trên ể ử ụ ầ ứ ề ầ ặ ượ ặ ặ ộ
[1], c nầ
chính web server. Thêm n a, khi s l ng ng i dùng tăng lên, đ tránh SPOF ố ượ ữ ườ ể
thi t ph i cài đ t 2 b cân b ng t ế ả ặ ằ ộ ả ặ i song song, ho t đ ng theo c ch active-active ho c ơ ế ạ ộ
active-standby.
1.2.1. Ki m tra tr ng thái server ể ạ
Đ ch n đ c server phù h p đ g i request, b cân b ng t i c n ph i bi ể ọ ượ ể ử ằ ợ ộ ả ầ ả ế t
đ c server nào đang có s n. Vì v y, nó c n ph i dùng bi n pháp nào đó đ ki m tra ượ ể ể ệ ậ ầ ả ẵ
tr ng thái c a server, ch ng h n nh g i l nh ping, các yêu c u, th k t n i hay b t c ử ế ố ư ử ệ ấ ứ ủ ầ ạ ằ ạ
ph ng pháp nào mà ng i qu n tr nghĩ là dùng đ ươ ườ ả ị ượ c. K thu t ki m tra này th ể ậ ỹ ườ ng
đ c g i là “health checks”. ượ ọ
M t server b down có th tr l i l nh ping nh ng không th tr l ể ả ờ ệ ể ả ờ ư ộ ị ế ố i các k t n i
TCP, m t server b treo có kh năng tr l i các yêu ả ờ ế ố i k t n i TCP nh ng không th tr l ư ể ả ờ ả ộ ị
c kích ho t, m t s yêu c u HTTP có c u HTTP. Khi m t ng d ng web nhi u l p đ ầ ề ớ ộ ứ ụ ượ ộ ố ạ ầ
th tr l i ngay l p t c trong khi s khác s th t b i. ể ả ờ ẽ ấ ạ ậ ứ ố
ng pháp test phù h p đ Chính vì th , vi c ch n m t ph ệ ế ọ ộ ươ ợ ượ ở ứ c ch p nh n b i ng ậ ấ
d ng web và b cân b ng t ụ ằ ộ ả ấ ữ ệ i là r t thú v . M t s test đôi khi ph i c n truy xu t d li u ả ầ ộ ố ấ ị
database nh m đ m b o r ng toàn b quá trình c a nó là đúng. H n ch l n nh t là ả ằ ế ớ ủ ạ ấ ằ ả ộ
nh ng ph ng pháp ki m tra này s chi m tài nguyên c a h th ng nh là CPU, ữ ươ ệ ố ủ ư ể ẽ ế
ệ ố
ạ ộ
ừ
ể
ế
ộ
ộ ệ
1[1] SPOF(Single point of failure): M t đi m trong h th ng mà n u nó ng ng ho t đ ng, toàn b h th ng s b tê li
ẽ ị
t ệ
ố
7
threads…
ậ ự Do đó, cân b ng th i gian ki m tra chính là v n đ khó nh t trong k thu t l a ể ề ấ ấ ằ ờ ỹ
ch n server. Kho ng th i gian gi a 2 l n test liên ti p ph i đ dài đ không t n quá ả ủ ữ ế ể ầ ả ờ ọ ố
ữ nhi u tài nguyên c a h th ng và cũng c n đ ng n đ nhanh chóng phát hi n ra nh ng ầ ủ ắ ủ ệ ố ề ể ệ
server “ch t”. Vì “health checks” là m t trong nh ng khía c nh ph c t p nh t c a k ấ ủ ỹ ứ ạ ữ ế ạ ộ
thu t cân b ng t i, nên th ng sau m t vài ki m tra, các nhà phát tri n ng d ng s ậ ằ ả ườ ể ứ ụ ể ộ ẽ
th c thi m t yêu c u đ c bi t dành riêng cho b cân b ng t ự ầ ặ ộ ệ ằ ộ ả ệ i, giúp cho nó th c hi n ự
m t s ki m tra n i b . ộ ộ ộ ố ể
Ph n m m cân b ng t i có kh năng cung c p scripting, do đó nó đ t đ c đ ề ầ ằ ả ạ ượ ả ấ ộ
ử linh ho t r t cao. Thêm n a, n u nh m t bài ki m tra nào đó đòi h i ph i ch nh s a ư ộ ạ ấ ữ ế ể ả ỏ ỉ
1.2.2. L a ch n server t
code, nó có th th c hi n trong m t kho ng th i gian ng n. ể ự ệ ả ắ ộ ờ
ự ọ ố t nh t ấ
Ph ng đ ươ ng pháp d nh t và th ễ ấ ườ ượ ử ụ ỏ c s d ng nh t trong các h th ng nh là ệ ố ấ
Round Robin, các server đ c l a ch n quay vòng, tuy nhiên ph ng pháp này có nh ượ ự ọ ươ ượ c
đi m là 2 requests liên t c t m t ng ụ ừ ộ ể ườ ữ i dùng s vào 2 servers khác nhau, thông tin gi a ẽ
2 yêu c u liên ti p s b m t, nh v y s không th t i u hóa đ c s d ng tài ẽ ị ấ ư ậ ể ố ư ế ẽ ầ ượ ử ụ
nguyên. Đ c bi t là khi c n ph i cài đ t k t n i cho các phiên ch y - ví d nh SSL key ặ ệ ặ ế ố ụ ư ạ ầ ả
negociation - s r t t n th i gian. ẽ ấ ố ờ
M t cách kh c ph c nh ụ ắ ộ ượ c đi m này là s d ng m t hàm băm theo đ a ch IP, ộ ử ụ ể ị ỉ
nh v y requests t ư ậ ừ ậ cùng m t đ a ch IP s ch vào m t server duy nh t. Tuy v y ộ ị ẽ ấ ộ ỉ ỉ
ph ng pháp này đòi h i ng ươ ỏ ườ ữ i dùng ph i có IP tĩnh. V y thì cách kh c ph c cho nh ng ụ ả ậ ắ
1.2.3. K thu t Session Persistence
h n ch trên là gì? Đó chính là các k Persistence. ạ ế ỹ
ậ ỹ
Nh đã đ c p trên, v n đ c n gi i quy t chính là làm sao đ gi cho các yêu ề ậ ở ư ề ầ ấ ả ể ữ ế
i dùng đ c u c a m t ng ầ ủ ộ ườ ượ ử ệ ủ c g i vào m t máy duy nh t trong su t phiên làm vi c c a ấ ộ ố
ng i đó. T t c các yêu c u c a ng i dùng này c n ph i đ ườ ầ ủ ấ ả ườ ả ượ ầ ộ c chuy n vào cùng m t ể
ể server. N u server b ch t, ho c ng ng đ b o trì, c n ph i có c ch đ chuy n ế ể ể ả ừ ế ế ầ ả ặ ơ ị
session c a ng i dùng này sang máy server khác. Đó chính là k thu t Session ủ ườ ậ ỹ
8
Persistence.
Có m t s gi i pháp đ c đ a ra đ ti p c n k thu t này, ch ng h n nh s ộ ố ả ượ ư ể ế ư ử ậ ạ ậ ẳ ỹ
i dùng – server. Tuy v y 2 d ng m t respone HTTP 302 hay t o ra liên k t gi a ng ụ ữ ế ạ ộ ườ ậ
ph ng pháp này đ u có nh ng h n ch , s d ng HTTP 302 s khi n ng i dùng luôn ươ ế ử ụ ữ ề ẽ ế ạ ườ
luôn tìm cách k t n i v i m t server duy nh t, k c khi server này đã “ch t”. Dùng ế ố ớ ể ả ế ấ ộ
cách t o liên k t đòi h i user ph i có IP tĩnh trong su t phiên làm vi c. ế ệ ạ ả ỏ ố
V y thì câu tr l i cu i cùng là gì? Đó chính là s d ng ả ờ ậ ử ụ ố cookie. Cookie là m tộ
ng đ c đi u khi n b i Web Servers. Trong k t qu tr v cho ng i dùng web đ i t ố ượ ượ ả ả ề ế ể ề ở ườ
servers s chèn thêm m t s thông tin. Nh ng yêu c u ti p theo c a ng ộ ố ữ ủ ế ẽ ầ ườ ử ế i dùng g i đ n
server s ch a thêm thông tin c a cookie này, server s đ c các cookie và bi ẽ ứ ẽ ọ ủ ế t ph i làm ả
1.2.4. Cookie
gì v i các yêu c u này. ầ ớ
M t cookie đ ộ ượ ị c đ nh nghĩa b ng c p tên=giá tr (name=value). Hình 1.1 miêu t ị ặ ằ ả
ho t đ ng c a cookie v i c p user=1, cho bi t tên cookie là user và giá tr c a nó là 1. ạ ộ ớ ặ ủ ế ị ủ
Bên phía ng i dùng, cookie đ ườ ượ ố ớ c đi u khi n b i trình duy t và “trong su t” đ i v i ệ ề ể ở ố
ng i dùng. ườ
Hình 1.1. Cách làm vi c c a cookie user=1 ệ ủ
Trong thi t k c a b cân b ng t ế ế ủ ộ ằ ả ỉ ọ i, có 3 cách đ s d ng cookie: Cookie ch đ c ể ử ụ
(Cookie-Read), b cân b ng t i chèn cookie nh m ch ng th c server ( Cookie-Insert) và ằ ộ ả ứ ự ằ
ghi đè cookie (Cookie-Rewrite).
+ Cookie-Read
Cách th c ho t đ ng c a cookie-read đ c mô t trong hình 1.2 d i đây. Khi ng ạ ộ ứ ủ ượ ả ướ ườ i
dùng l n đ u tiên g i yêu c u đ n server, do không có cookie trong yêu c u, nên nó s ử ế ầ ầ ầ ầ ẽ
đ c phân t ượ ả ế i đ n server RS1 (1). Server RS1 s t o và đ t cookie server=1 vào trong ẽ ạ ặ
i dùng (2). Trình duy t c a ng d li u tr v cho ng ả ề ữ ệ ườ ệ ủ ườ ọ i dùng s nh n tr v này, đ c ả ề ẽ ậ
th y cookies và l u tr nó vào trong đĩa c ng (3). Sau đó ng ữ ứ ư ấ ườ i dùng có th đóng trình ể
9
duy t ho c ng t k t n i (gi s r ng trình duy t c a ng i dùng không t đ ng xóa ắ ế ố ệ ặ ả ử ằ ệ ủ ườ ự ộ
cookie sau khi đóng). M t th i gian sau ng i dùng k t n i l i và g i yêu c u đ n b ộ ờ ườ ế ố ạ ử ế ầ ộ
i . Sau khi k t n i đ c thi t l p, trình duy t ng cân b ng t ằ ả ế ố ượ ế ậ ệ ườ i dùng s g i cookie ẽ ử
server=1 nh là m t ph n c a yêu c u HTTP (4). B cân b ng t c cookie ầ ủ ư ầ ằ ộ ộ i s đ c đ ả ẽ ọ ượ
này, và do đó s chuy n yêu c u c a ng i dùng vào server RS1. Nh v y ng i dùng ầ ủ ẽ ể ườ ư ậ ườ
i, cho dù ng i dùng s luôn đ ẽ ượ ế ố c k t n i vào server 1 cho đ n khi nào cookie còn t n t ế ồ ạ ườ
có th vào website t các đ a ch IP khác nhau. ể ừ ỉ ị
Hình 1.2. Cookie read
u đi m c a ph ng pháp cookie-read là nó không đòi h i b cân b ng t Ư ể ủ ươ ỏ ộ ằ ả ả i ph i
làm vi c nhi u, ch c n đ c cookie đ c t o ra t phía web-server và t ỉ ầ ề ệ ọ ượ ạ ừ ừ ầ ủ yêu c u c a
ng i dùng. Nh c đi m c a ph ng pháp này là ng d ng ườ ượ ủ ể ươ ụ ứ ở ộ server ph i t o ra m t ả ạ
ả cookie, đi u này không khó khăn l m, nh ng nó s khi n nhà phát tri n ng d ng ph i ể ứ ư ụ ẽ ế ề ắ
thay đ i mã ngu n ch c l p đ t, ng ồ ổ ươ ng trình. Khi m t server m i đ ộ ớ ượ ắ ặ ườ i qu n tr h ả ị ệ
i. th ng ph i s a đ i ho c đ t thêm thông s server vào file c u hình c a b cân b ng t ố ả ử ổ ủ ộ ặ ặ ằ ấ ố ả
+ Cookie-Insert
Ph ng pháp này đ c mô t trong hình 1.3. Trong ph ng pháp này, ng d ng ươ ượ ả ươ ụ ở ứ
server s không làm gì c . K ch b n di n ra t ng t nh cookie-read, nh ng đây, khi ả ị ẽ ễ ả ươ ự ư ư ở
i s xem là server nào tr v d server tr v d li u cho ng ả ề ữ ệ ườ i dùng (2), b cân b ng t ộ ằ ả ẽ ả ề ữ
li u, và chèn vào đó m t cookie ch a thông tin v server này, ch ng h n nh cookie ứ ư ệ ề ạ ẳ ộ
server=1 trong hình v . Khi ng ẽ ườ i dùng k t n i l n ti p theo, b cân b ng t ế ế ố ầ ằ ộ ả ẽ ọ i s đ c
thông tin v cookie này, và chuy n h ng yêu c u c a ng i dùng vào đúng server RS1. ể ướ ề ầ ủ ườ
10
Hình 1.3. Cookie-insert
u đi m c a ph ng pháp này là nó “trong su t” đ i v i ng d ng đ Ư ể ủ ươ ố ớ ứ ụ ố ượ ặ c cài đ t
trên server, hay nói cách khác ng d ng server s không c n ph i t o ra m t cookie hay ả ạ ứ ụ ẽ ầ ộ
không c n quan tâm xem cookie là gì. Khi 1 server đ c thêm m i ho c xóa b , ho c khi ầ ượ ặ ặ ớ ỏ
i b thay đ i, ng file c u hình c a b cân b ng t ủ ấ ằ ộ ả ị ổ ườ ầ i qu n tr h th ng s không c n ị ệ ố ẽ ả
c đi m c a ph ng pháp ph i lo l ng v vi c c p nh p file c u hình cho server. Nh ậ ề ệ ậ ấ ả ắ ượ ủ ể ươ
b cân b ng t i i. Chúng ta có th th y rõ s l ng công này là có th gây ra quá t ể ả ở ộ ằ ả ể ấ ố ượ
i ph i làm khi chèn 1 cookie trong hình 1.4. Vì c n ph i chèn d vi c mà b cân b ng t ộ ệ ằ ả ầ ả ả ữ
c sao l li u nên gói d li u tr v ph i đ ữ ệ ả ề ả ượ ệ ạ i 1 ph n, vì v y tăng dung l ậ ầ ượ ng b nh ộ ớ
phía b cân b ng t i, thêm vào đó còn tăng dung l ng gói tin tr v cho c n thi ầ t ế ở ằ ộ ả ượ ả ề
ng i dùng, có th khi n gói tin b chia đôi, d n đ n m t d li u. ườ ấ ữ ệ ế ế ể ẫ ị
.
Hình 1.4 B cân b ng t ộ ằ ả i chèn m t cookie ộ
+ Cookie-Rewrite
Ph ng pháp cookie-read không đòi h i b cân b ng t ươ ỏ ộ ằ ả ệ i ph i làm quá nhi u vi c ề ả
nh cookie-insert, trong khi đó cookie-insert l i không yêu c u ng d ng phía server ư ạ ầ ứ ụ
ph i t o cookie còn cookie-read l ng pháp dung hòa u và ả ạ ạ ầ i c n. C n ph i có m t ph ả ầ ộ ươ ư
nh c đi m c a 2 ph ng pháp trên. Đó chính là ph ng pháp ghi đè cookie. ượ ủ ể ươ ươ
Nh c đi m l n nh t trong cookie-insert là c n ph i có m t b nh ph c t p, và ượ ớ ứ ạ ộ ộ ể ả ầ ấ ớ
thêm n a có th khi n gói tin b chia thành 2 (do dung l ng v ữ ể ế ị ượ ượ ấ t quá giá tr l n nh t ị ớ
c ch p nh n c a gói tin đ ủ ượ ậ ở ấ Ethernet) và d n đ n m t d li u. Chuy n gì s x y ra ấ ữ ệ ẽ ả ế ệ ẫ
gói tin đ l u giá tr cookie, và b cân b ng t n u nh chúng ta t o m t ch tr ng ạ ế ỗ ố ư ộ ở ể ư ằ ộ ị ả i
11
ch c n đ t vào đó giá tr c n thi t. Trong ph ng pháp ghi đè cookie, đ c mô t nh ỉ ầ ị ầ ặ ế ươ ượ ả ư
hình 1.5 i, ng d ng s chèn vào gói tin tr v m t cookie d ở ướ ứ ả ề ộ ụ ẽ server=XXX. T t cấ ả
i ph i làm là tìm ki m đo n server=XXX này và thay “XXX” nh ng gì b cân b ng t ộ ữ ằ ả ế ạ ả
b ng giá tr ID c a server, ch ng h n nh ằ ư server=001. ủ ạ ẳ ị
Hình 1.5 B cân b ng t ộ ằ ả i ghi đè m t cookie ộ
u đi m c a ph ng pháp này là tránh cho b cân b ng t i làm vi c quá m c và Ư ể ủ ươ ằ ộ ả ứ ệ
tránh cho gói tin b chia nh . Bên c nh đó nó cũng kh c ph c đ c nh ụ ắ ạ ỏ ị ượ ượ ủ c đi m c a ể
ph ng pháp cookie-read. Nó là ph ng pháp t t nh t trong 3 ph ng pháp đã đ ươ ươ ố ấ ươ ượ ề c đ
1.2.5. Cân b ng t
trên và th ng đ c ch n đ dùng trong các b cân b ng t i. c p ậ ở ườ ượ ể ằ ọ ộ ả
i s d ng ph n c ng ằ ả ử ụ ầ ứ
B cân b ng t ằ ộ ả ằ ạ i b ng ph n c ng 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 toàn b các máy tính trong cluster s ch đ ẽ ỉ ượ ậ ộ ấ ố c xem nh là m t máy duy nh t đ i ư ộ
i bên ngoài. B cân b ng t i s d ng ph n c ng th ng ho t đ ng v i th gi ớ ế ớ ằ ộ ả ử ụ ầ ứ ườ ạ ộ ở ầ t ng
m ng và ho t đ ng d a trên s đ nh tuy n, s d ng m t trong các ph ng pháp: Đ nh ạ ộ ử ụ ự ị ự ế ạ ộ ươ ị
12
tuy n tr c ti p (direct routing), tunnelling, IP address translation (NAT). ự ế ế
Khi m t request đ n b cân b ng t ế ằ ộ ộ ả i, nó s ghi l ẽ ạ ể ỏ ế i header c a request đ tr đ n ủ
cluster thì request s không các máy khác trong cluster. N u m t máy nào đó b g b t ế ị ỡ ỏ ừ ộ ẽ
ch y m t cách r i ro vi c “hit” vào máy server đã ch t này, vì t t c các máy server khác ủ ệ ế ạ ộ ấ ả
trong cluster xu t hi n đ u có cùng đ a ch IP. Đ a ch này duy trì gi ng nhau th m chí ỉ ề ệ ậ ấ ố ị ị ỉ
c tr v , client s xem n u m t nút nào đó trong cluster b h ng. Khi m t đáp tr đ ế ị ỏ ả ượ ộ ộ ả ề ẽ
đá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ì ng i dùng ế ừ ộ ả ằ ả ầ ứ ườ
i s d ng ph n c ng. s x lý v i m t máy tính đó là b cân b ng t ẽ ử ằ ộ ộ ớ ả ử ụ ầ ứ
Hình 1.6 Cân b ng t i s d ng ph n c ng ằ ả ử ụ ầ ứ
u đi m c a ph ng pháp này là: Ư ể ủ ươ
• 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ó có th ghi l ể ạ ơ i các thông tin header và g i request đ n nút thích h p trong cluster, n i ử ế ợ
session c a nó đ c duy trì. ủ ượ
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 server 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 đ i đ c các thông tin ượ c mã hóa SSL và có th tránh b cân b ng t ể ằ ộ ả ọ
session.
• Kh năng 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 ra khi m t nút trong cluster không th x lý m t request ổ ự ể ử ệ ể ả ộ ộ
Yêu c u m c chuy n đ i d phòng
và chuy n h ng nó đ n m t nút khác. Có hai ki u t đ ng chuy n đ i d phòng: ể ướ ể ự ộ ổ ự ể ế ộ
ổ ự ứ ể ầ ể ử . Khi m t nút trong cluster không th x lý ộ
m t request (th ng là vì b h ng) thì nó s chuy n request này sang m t nút ộ ườ ị ỏ ể ẽ ộ
Chuy n đ i d phòng session m t cách trong su t
khác.
ổ ự ố . Khi m t l ộ ờ ể ộ ấ ạ i tri u g i th t b i, ọ ệ
nó s đ ẽ ượ c đ nh tuy n m t cách trong su t đ n m t nút khác trong cluster đ ố ế ế ộ ộ ị ể
13
hoàn t t công vi c. ấ ệ
B cân b ng ki u này cung c p chuy n đ i d phòng m c request; t c là khi nó ổ ự ứ ứ ể ể ấ ằ ộ
phát hi n có m t nút nào đó b s c thì b cân b ng này s chuy n h ng t t c các ị ự ố ệ ẽ ể ằ ộ ộ ướ ấ ả
request theo sau đ c g i đ n nút này sang m t nút tích c c khác trong cluster. M c dù ượ ử ế ự ặ ộ
v y, b t kỳ m t thông tin session nào trên nút ch t s b m t khi các request đ ậ ế ẽ ị ấ ấ ộ ượ c
chuy n h ể ướ ng đ n m t nút m i. ộ ế ớ
Chuy n đ i d phòng session trong su t yêu c u m t s ki n th c v s th c thi ứ ề ự ự ộ ố ế ổ ự ể ầ ố
cho m t quá trình trong m t nút, vì b cân b ng t i ph n c ng ch có th phát hi n các ằ ộ ộ ộ ả ầ ứ ể ệ ỉ
v n đ m c m ng, không có l ạ ấ ề ứ ỗ ổ i. Đ th c thi m t cách trong su t v v n đ chuy n đ i ố ề ấ ể ự ề ể ộ
d phòng, các nút trong cluster ph i k t h p v i các nút khác và có vùng b nh chia s ự ả ế ợ ớ ộ ớ ẻ
ho c c s d li u chung đ l u t ặ ơ ở ữ ệ ể ư ấ ả ộ t c các d li u session. Cũng chính vì v y n u m t ữ ệ ế ậ
nút trong cluster có v n đ thì m t session có th ti p t c trong m t nút khác. ể ế ụ ề ấ ộ ộ
• Metrics. Vì t t c các yêu c u t ấ ả ầ ớ ệ ố i m t ng d ng web đ u ph i qua h th ng ề ộ ứ ụ ả
ng session ho t đ ng, s l ng session cân b ng t ằ ả i, h th ng có th quy t đ nh s l ể ệ ố ế ị ố ượ ạ ộ ố ượ
c k t n i trong các tr ho t đ ng đ ạ ộ ượ ế ố ườ ứ ng h p khác nhau, các kho ng th i gian đáp ng, ả ợ ờ
th i gian t i đa đi n áp, s l ng session trong su t kho ng t i đa đi n áp, s l ờ ố ố ượ ệ ả ố ố ố ượ ng ệ
session trong su t kho ng t i thi u đi n áp… T t c các thông tin ki m đ nh này đ ả ố ố ấ ả ể ệ ể ị ượ c
s d ng đ tinh ch nh toàn b h th ng nh m t ử ụ ộ ệ ố ể ằ ỉ ố ư i u hi u su t. ệ ấ
1.2.6 Cân b ng t ả ầ ằ ế ợ i máy ch v i ph n m m ủ ớ ộ ề ề ặ 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ũng ề ộ ố ư ề ầ ấ ả
cung 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à quen ấ ả ướ ả ư ể ộ
thu c v i nh ng nhà qu n tr chuyên nghi p, có th chia s đ c nhi u tài nguyên trong ộ ớ ẻ ượ ữ ệ ể ả ị ề
c tr ng thái c a các máy ch trong nhóm đ chia t i h p lý. Tuy h th ng, theo dõi đ ệ ố ượ ủ ủ ể ạ ả ợ
ủ 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 o m t cho ề ả ươ ượ ữ ả ậ ố
14
ứ ng d ng. ụ
1.2.7. Cân b ng t i v i 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 ẽ ự ụ ệ ệ ả ợ ả
m c ng d ng nên có kh năng caching (là công ngh l u tr c c b d vì ho t đ ng ạ ộ ở ứ ứ ữ ụ ộ ữ ệ ư ụ ả
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 ng ụ
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 máy ph d ng nên gi ổ ụ ả ở ộ ư ể ấ ả ố
đ 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 ng
i u, d d 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 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ái t n t ồ ạ ề ỗ ệ ố ộ ậ ệ ặ ạ ộ
c đi m l n nh t c a các gi i pháp này th ng có c a các máy ch g p khó khăn. Nh ủ ặ ủ ượ ấ ủ ể ớ ả ườ
i. Đây là đi u không th ch p nh n đ tính n đ nh kém, hi u năng th p, d m c l ệ ễ ắ ỗ ấ ổ ị ể ấ ề ậ ượ 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. ẵ ố ớ ệ ố ư ỏ
1.2.8. Cân b ng t ằ Nhóm này th ng s d ng các mođun c m thêm trên các thi i v i thi ả ớ ườ t b k t n i ế ị ế ố ử ụ ắ ế ị ụ t b chuyên d ng
nh B đ nh tuy n (Router) hay hay b chuy n m ch (Switch) đ chia t i theo lu ng, ư ộ ị ế ể ể ạ ộ ả ồ
th layer 4 tr xu ng. Vì s d ng thi ườ ng ho t đ ng t ạ ộ ừ ử ụ ở ố ế ị ệ t b chuyên d ng nên có hi u ụ
nă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 ở ộ ả ổ ị ố ơ ư ể ượ
nă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 n
nh DNS round-robin (đây là thu t toán chia t i ph bi n nh t và đ n gi n, tuy nhiên ư ậ ả ổ ế ấ ả ơ
ề c 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ái ả ả ộ ượ ạ
i ng d ng và giá thành c a máy ch , x lý k t n i ủ ử ủ ế ố ở ứ ứ m c ng d ng r t kém, d gây l ấ ụ ễ ỗ ứ ụ
cao. 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ính ố ớ ệ ố ứ ầ ợ
chu n xác c a các ho t đ ng giao d ch nh tài chính, ngân hàng. ạ ộ ủ ư ẩ ị
i pháp có kh năng theo dõi tr ng thái ng d ng t Nh v y, gi ư ậ ả ứ ụ ạ ả ố t thì m r ng, tăng ở ộ
i pháp m r ng, tăng t c, b o m t t t, thì t c, b o m t kém(GP dùng ph n m m). Gi ố ề ả ậ ầ ả ở ộ ậ ố ả ố
15
theo dõi tr ng thái ng d ng kém, không n đ nh, hi u năng th p(GP 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(GP chia t t b chia k t n i). Trong khi đó, t t c các yêu c u v ố ả i nh thi ờ ế ị ế ố ấ ả ầ ề
t, tăng t c t hi u năng cao, n đ nh, m r ng 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 p d ch v . GP s n có c a ạ ộ ứ ủ ụ ấ ẵ ị
c m t ph n trong các yêu c u trên nh Module CSS c a Cisco, các hãng ch đáp ng đ ỉ ứ ượ ủ ư ầ ầ ộ
ISA c a Microsoft, hay Netscaler c a Citrix). ủ ủ
1.2.9. X lý các yêu c u k t n i t p trung
ầ ế ố ậ
ử
Thay vì y quy n cho DNS vi c phân ph i nh ng yêu c u đ n các server riêng l ủ ữ ế ề ệ ầ ố ẻ
trong m t cluster, phu ng pháp x lý các yêu c u k t n i t p trung (Centrallized ố ậ ử ế ầ ơ ộ
Connection Routing - CCR) s d ng m t router c c b đ th c hi n ch c năng này. ụ ộ ể ự ử ụ ứ ệ ộ
Hình 1.7. X lý các yêu c u k t n i t p trung ử Router ho t đ ng nh m t b ng chuy n m ch, phân ph i các yêu c u d ch v đ n các ạ
ầ ế ố ậ
ư ộ ả ạ ộ ụ ế ể ầ ố ị
node riêng l trong cluster. ẻ
u đi m c a kĩ thu t CCR: Ư ể ủ ậ
• Vi c đ nh hu ng l ị
i cho các k t n i Client đ n các server thích h p trong h ệ ớ ạ ế ố ế ợ ệ
th ng là hoàn toàn trong su t v i ng i dùng. ố ớ ố ườ
• Tính linh ho t cao: khi phát hi n m t node b ch t, local router s chuy n t ộ
t c ị ế ể ấ ả ệ ẽ ạ
các yêu c u k ti p đ n node khác đang ho t đ ng. ầ ế ế ạ ộ ế
• Khi k t n i t
Nhu c đi m c a kĩ thu t CCR: ủ ể ậ ợ
tăng cao toàn b h th ng s g p tình tr ng nút ế ố ừ client đ n rout ế ẻ ộ ệ ố ẽ ặ ạ
• Thi
i thi t b này. c chai ngay t ổ ạ ế ị
• Khi thi
t b router là thi t b ph n c ng nên giá thành cao. ế ị ế ị ầ ứ
ế ị ị t b trung tâm hong toàn b h th ng s ng ng ho t đ ng do đó tính ch u ộ ệ ố ẽ ư ạ ộ
l ỗ i th p. ấ
Tóm l i, k thu t x lý các yêu c u k t n i t p trung rõ ràng đã gi i quy t đ ạ ế ố ậ ậ ử ầ ỹ ả ế ượ ấ c v n
16
i th p và chi phí cao. đ cân b ng t ề ằ ả i trên m ng. Tuy nhiên k thu t này có tính ch u l ỹ ị ỗ ậ ạ ấ
CH
NG II. GI
ƯƠ
Ả
I PHÁP CÂN B NG T I TRÊN FILE SERVER Ả
Ằ
2.1. GI
2.1.1. Gi
Ớ I THI U CÂN B NG T I TRÊN FILE SERVER Ả Ằ Ệ
i thi u Windows Server 2008 ớ ệ
Window Server 2008 là h đi u hành cho máy ch đ c s n xu t b i Microsoft, ệ ề ủ ượ ả ấ ở
đ c gi i thi u ngày 04 tháng 02 năm 2008 có nhi u tính năng h n so v i h ượ ớ i thi u gi ệ ớ ớ ệ ệ ề ơ
đi u hành Windowns 2000 và Windows Server 2003 tr c đó. Windowns Server 2008 ề ướ
thi ế ế ớ t k nh m tăng s c m nh cho các m ng, ng d ng và d ch v Web th h m i. V i ứ ế ệ ớ ụ ứ ụ ạ ằ ạ ị
Windows Server 2008, b n có th phát tri n, cung c p và qu n lý các tr i nghi m ng ể ệ ể ấ ả ả ạ ườ i
dùng và ng d ng phong phú, đem t i m t h t ng m ng có tính b o m t cao, và tăng ứ ụ ớ ộ ạ ầ ả ậ ạ
ng hi u qu v m t công ngh và giá tr trong ph m vi t ch c c a mình. Windows c ườ ả ề ặ ệ ệ ạ ị ổ ứ ủ
Server 2008 k th a nh ng thành công và th m nh c a các h đi u hành Windows ế ừ ệ ề ế ạ ủ ữ
Server th h tr c, đ ng th i đem t ế ệ ướ ồ ờ ớ ạ i tính năng m i có giá tr và nh ng c i ti n m nh ị ả ế ữ ớ
ậ m cho h đi u hành c s này. Công c Web m i, công ngh o hóa, tính b o m t ệ ề ơ ở ệ ả ụ ẽ ả ớ
tăng c ng và các ti n ích qu n lý giúp ti t ki m th i gian, gi m b t các chi phí, và đem ườ ệ ả ế ệ ả ờ ớ
t ớ i m t n n t ng v ng ch c cho h t ng Công ngh Thông tin c a b n. ạ ầ ộ ề ả ủ ạ H đi u hành ệ ề ữ ệ ắ
Windows Server 2008 hi n có 7 phiên b n bao g m: Windows Server 2008 Standard ệ ả ồ
ệ (B n tiêu chu n), Windows Server 2008 Enterprise (B n dungfcho doanh nghi p), ả ả ẩ
Windows Server 2008 Datacenter (B n dùng cho trung tâm d li u), Windows Web ữ ệ ả
Server 2008 (B n dùng cho Web), Windows Server 2008 dành cho các h th ng d a trên ệ ố ự ả
ẩ n n t ng Itanium, Windows Server 2008 Standard without Hyper-V (B n tiêu chu n, ề ả ả
không có Hyper-V), cu i cùng là b n Windows Server 2008 Datacenter without Hyper-V ả ố
17
(B n dùng cho Trug tâm d li u, không có Hyper-V). H đi u hành ti p theo đã phát ệ ề ữ ệ ế ả
hành trên th tr ng là Windows Server 8) (WS8) là ị ườ Windows Server 2012 (hay còn g i làọ
tên mã cho h đi u hành Windows t ng lai đ c phát tri n b i ệ ề ươ ượ ở Microsoft. Nó là m tộ ể
phiên b nả Windows 8 và n i ti p phiên b n ố ế ả Windows Server 2008 R2. Windows Server 8
ế là phiên b nả Windows Server đ u tiên không h tr cho các máy tính d a n n t ng ki n ự ề ả ỗ ợ ầ
trúc Itanium t lúc ra đ i ừ ờ Windows NT 4.0. M t phiên b n phát tri n th nghi m (phiên ả ử ể ệ ộ
c công b vào ngày 9 tháng 9 năm 2011 t i các l p trình viên phát b n Beta) đ ả ượ ố ớ ậ
tri nể MSDN. Vào ngày 1 tháng 3 năm 2012, Microsoft phát hành phiên b n Beta công ả
c ngộ beta (build 8250).
2.1.2. 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 đóng ờ ạ ổ ủ ệ ệ ạ
vai 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ũng ạ ộ ủ ệ ơ ọ ổ ứ
nh 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àng ạ ư ẳ ị
ạ không ho c ngân hàng l n, m ng máy tính có th ví nh h th n kinh đi u khi n ho 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ác ho t
t h i khó có th l ng tr c. đ ng chính c a đ n v , và thi ủ ơ ộ ị ệ ạ ể ườ 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 n ẽ ị ư ủ ệ ố ạ ộ ệ ề ế ạ ỏ
xu 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 ng ư ữ
hó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 n ệ ố ể ả ả
ho 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 t ự ố ả ủ ạ ố ớ ệ ự ả ọ
server đ 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 ơ ẻ ầ ư ự ứ ể ẽ ầ ấ ạ
i quy t đ ch c. Gi r t l n và không gi ấ ớ ả ế ượ c các v n đ đ t ra c a các t ề ặ ủ ấ ổ ứ ả ệ 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 u khi 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 ể ủ ố ả ụ ề ộ ả ằ ả ề ấ
i pháp cân b ng t đ a ra gi ư ả ằ ả ớ ấ i nh Cisco, Coyote Point, Sun Microsystems... v i r t ư
nhi u tính n ng phong phú. Tuy nhiên, v c b n, nguyên t c cân b ng t ề ơ ả ề ắ ằ ǎ ả ẫ ấ i v n xu t
18
phát t ng đ ng. M t k thu t cân b ng t ừ nh ng quan đi m k thu t khá 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 ớ ả ế ộ ị
i, RRDNS s v n ti p t c g i t i cho server đó cho đ n khi ng l ỗ ế ụ ử ả ẽ ẫ ế ườ 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à Optimized
Weighted Least Connection, k thu t cân b ng t ằ ậ ỹ ả ậ i hi n nay nh s k t h p các thu t ờ ự ế ợ ệ
toá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 i ẫ ả ǎ ụ ụ ể ậ ớ ỹ
cá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 ố ả ứ ụ ụ ệ ệ ỉ
c các client. mà còn còn cung c p c ch đ m b o h th ng server luôn kh d ng tr ả ơ ế ả ệ ố ả ụ ấ ướ
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 ph 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. ở ứ ấ
K ch b n A K ch b n B ả ị ả ị
Tính s n sàng cao Có Không ẵ
Tính m r ng Có Không ở ộ
2.1.3. So sánh h th ng cân b ng t
X lý đa nhi m X lý nhanh đ n nhi m Ứ ng d ng ụ ử ệ ử ệ ơ
19
ng ệ ố ằ ả i server và h th ng thông th ệ ố ườ
Hình 2.1. So sánh h th ng cân b ng t ng ệ ố ằ ả i server và h th ng thông th ệ ố ườ
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àm ạ ộ ấ ả ề ạ ấ ộ
vi c quá t i trong khi server khác l i đang “nhàn r i”. ệ ả ạ ỗ
ch c nào c n có gi i pháp cân b ng t i ? Nh ng t ữ ổ ứ ầ ả ằ ả
- Các doanh nghi p ệ
- Nhà cung c p d ch v ISP ấ ụ ị
- Trung tâm x lý d li u ữ ệ ử
- Chính phủ
- Phòng thí nghi m ệ
- Tr ườ ng đ i h c, vi n nghiên c u… ệ ạ ọ ứ
2.2. Các thành ph n c a cân b ng t i File Server ầ ủ ả ằ
2.2.1. Ch c năng c a các thành ph n cân b ng t i File Server ứ ủ ằ ầ ả
20
i pháp cân b ng t i ph i (Server Load Balancer) có nh ng ch c năng sau: M t gi ộ ả ằ ả ữ ứ ả
• Can thi p vào lu ng d li u m ng t ồ
• Chia lu ng d li u đó thành các yêu c u đ n l
ữ ệ ệ ạ ớ i m t đi m đích. ể ộ
và quy t đ nh máy ch nào ữ ệ ơ ẻ ầ ồ ế ị ủ
• 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
s x lý nh ng yêu c u đó. ẽ ử ữ ầ
ả ằ ạ ộ ủ ệ ả
ạ 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 ộ ả ư ứ ủ ắ ỏ ộ
• 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
vòng.
ấ ự ộ ơ ệ ậ ụ ề ằ ạ ơ ị
tình hu 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 đ ự ụ ệ ặ ặ ặ ỏ ố ượ c
th 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 ệ ủ ự ự ệ ườ ấ ự ư
• Cung c p s phân ph i d trên s hi u bi
c nh báo nào). ả
t v n i dung ví d nh đ c URL, ấ ự ố ự ự ể ế ề ộ ụ ư ọ
• Server Load Balancers: Load Balancer là m t thi
can thi p vào cookies ho c truy n XML. ệ ề ặ
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 ụ ộ ổ ộ ị ẽ ạ ỉ
c dành cho lu ng d li u c a web. M t VIP v i m t VIP nh c ng TCP 80 đ ớ ư ổ ộ ượ ữ ệ ủ ộ ồ
c gán đ a ch IP đó và máy ch này s làm s có ít nh t m t máy ch th c s đ ẽ ủ ự ự ượ ấ ộ ủ ẽ ị ỉ
c chuy n đ n. Th ng th ng thì s có nhi m v phân ph i lu ng d li u đ ố ữ ệ ụ ệ ồ ượ ể ế ườ ườ ẽ
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 ữ ệ ủ ằ ủ ẽ ế ề ồ ử
ng th c đ c mô t trong ph n “Active - Active d ng các metric ho c các ph ụ ặ ươ ứ ượ ả ầ
• Các máy ch (Servers): Máy ch ch y m t d ch v đ
Scenario” sau đây.
c chia s t i gi a các d ch ủ ạ ộ ị ụ ượ ủ ẻ ả ữ ị
21
ng đ c ám ch t i các máy ch HTTP, m c dù các máy v khác. Máy ch th ụ ủ ườ ượ ỉ ớ ủ ặ
ng có ch khác ho c ngay c nh ng d ch v khác có liên quan. M t máy ch th ụ ả ữ ủ ườ ủ ặ ộ ị
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 ắ ộ ổ ộ ị ề ớ ỉ ị ỉ
• Nhóm (Groups): Dùng đ ch m t nhóm các máy ch đ
khai (đi u này còn ph thu c vào topo c a m ng). ụ ủ ề ạ ộ
c cân b ng t i. Các ỉ ộ ủ ượ ể ằ ả
• C p đ ng
thu t ng nh “farm” ho c “server farm” có cùng m t ý nghĩa v i thu t ng này. ữ ư ữ ậ ặ ậ ộ ớ
ấ ộ ườ ề 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
i. Không ch nh ng nhà cung c p thi t b khác nhau cung c p nh ng c p đ t ả ữ ấ ỉ ế ị ữ ấ ấ ộ
truy nh p khác nhau, 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ác nhau. 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 n ng ự ậ ả ườ ộ 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ách th 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 dùng có quy n ch đ c ch có th xem các thi đ i nào đ ổ ượ c th c hi n. M t ng ệ ự ộ ườ ỉ ọ ề ể ỉ ế ặ 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 đ xem các th ng kê hi u su t ho t ệ ể ấ ả ả ộ ố
ng là c p đ truy c p đ u tiên c a m t ng đ ng c a thi ộ ủ ế ị t b .Truy nh p ch đ c th ậ ỉ ọ ườ ủ ầ ấ ậ ộ ộ ườ i
dùng khi đăng nh p vào h th ng tr ậ ệ ố ướ ậ c khi thay đ i sang các ch đ v i quy n truy c p ế ộ ớ ề ổ
cao h n. ơ
- Superuser: Superuser là c p đ truy c p cho phép ng ấ ậ ộ ườ ề i dùng có đ y đ quy n ầ ủ
đi u khi n h th ng. Superuser có th thêm các tài kho n khác, xóa file, c u hình l ệ ố ể ể ề ả ấ ạ ệ i h
th ng v i b t kỳ tham s nào. ớ ấ ố ố
i dùng - Các c p đ khác: R t nhi u s n ph m cung c p thêm m t vài c p đ ng ẩ ề ả ộ ườ ấ ấ ấ ấ ộ ộ
• Gi
trung gian gi a hai c p đ trên, có nh ng quy n gi i h n trên h th ng. ở ữ ữ ề ấ ộ ớ ạ ệ ố
22
i pháp d phòng (Redundancy) ả ự
Gi t b đó s ả i pháp d phòng r t đ n gi n: n u m t thi ấ ơ ự ế ả ộ ế ị ặ t b g p tr c tr c, thi ụ ặ ế ị ẽ
đ t b khác mà không ho c gây ít nh h ượ c thay th b i m t thi ế ở ộ ế ị ặ ả ưở ạ ng nh t đ n ho t ấ ế
đ ng c a toàn b h th ng. Thi ộ ộ ệ ố ủ t b đ ế ị ượ c thay th s th c hi n nh ng ch c năng ệ ế ẽ ự ứ ữ
gi ng nh thi t b b thay th . H u h t các thi t b trên th tr ư ố ế ị ế ầ ế ị ế ị ị ườ ng đ u có kh năng này. ả ề
Có m t vài cách đ th c hi n kh năng này. Cách thông th ng nh t là s d ng hai ể ự ệ ả ộ ườ ử ụ ấ
thi t b . M t giao th c s đ c s d ng b i m t trong hai thi t b đ ki m tra tình ế ị ứ ẽ ượ ử ụ ộ ộ ở ế ị ể ể
t b còn l i. Trong m t vài tình hu ng, c hai thi tr ng ho t đ ng c a thi ạ ộ ủ ạ ế ị ạ ả ố ộ ế ị ề ạ t b đ u ho t
ộ đ ng, đáp ng các lu ng d li u đ n. Trong m t vài tình hu ng khác, s ch có m t ộ ữ ệ ứ ế ẽ ồ ố ộ ỉ
thi t b ho t đ ng chính, thi t b còn l c s d ng trong tình hu ng h ng hóc i s đ ế ị ạ ộ ế ị ạ ẽ ượ ử ụ ố ỏ
• Vai trò c a vi c d phòng
ho c tr c tr c. ụ ặ ặ
ệ ự ủ
Trong gi i pháp d phòng, t n t i m t quan h là active - standby. M t thi t b , hay ả ồ ạ ự ệ ộ ộ ế ị
t b đang ho t đ ng th c hi n m t vài ho c đ y đ các ch c năng chính, còn g i là thi ọ ế ị ặ ầ ủ ạ ộ ứ ự ệ ộ
trong khi đó thi t b d phòng s đ i đ th c hi n nh ng ch c năng này. M i quan h ế ị ự ẽ ợ ể ự ữ ứ ệ ố ệ
này cũng có th đ c g i là m i quan h master/slave. ể ượ ọ ệ ố
Trong nh ng tình hu ng nh t đ nh, c hai thi t b s là ch (master) trong m t vài ấ ị ữ ả ố ế ị ẽ ủ ộ
ch c năng và làm ph c v (slave) trong m t vài ch c năng khác nh m phân tán t i. Cũng ụ ụ ứ ứ ằ ộ ả
trong m t vài tình hu ng khác, c hai thi ả ố ộ ế ị ề t b đ u là ch (master) c a t ủ ủ ấ ả ứ t c các ch c
• K ch b n Active - Standby (ho t đ ng - ch ) ờ
năng đ ượ c chia s gi a hai thi ẻ ữ ế ị t b . Quan h này còn đ ệ ượ ọ c g i là quan h active - active. ệ
ạ ộ ả ị
K ch b n d phòng ho t đ ng - ch là cách d nh t đ th c hi n. M t thi ấ ể ự ả ự ạ ộ ễ ệ ờ ộ ị ế ị ẽ ậ t b s nh n
toàn b lu ng d li u đ n, trong khi đó thi t b còn l ộ ồ ữ ệ ế ế ị ạ ẽ ờ ụ i s ch trong các tình hu ng tr c ố
23
tr cặ
Hình 2. Hình 2.2: K ch b n Active – Standby ị ả
N u thi t b đang ho t đ ng g p tr c tr c, m t thi ế ế ị ạ ộ ụ ặ ặ ộ ế ị t b kia s xác đ nh tr c tr c và ị ụ ẽ ặ
nh n x lý toàn b lu ng d li u đ n. ộ ồ ậ ử ữ ệ ế
• K ch b n Active - Active
Hình 2.3: Ho t đ ng c a k ch b n Active – Standby ủ ị ạ ộ ả
ả ị
t c các tr ng h p, c hai thi Có m t vài bi n th c a k ch b n này. Trong t ể ủ ị ế ả ộ ấ ả ườ ả ợ ế ị ề t b đ u
ch p nh n x lý lu ng d li u đ n. Trong tình hu ng m t trong hai thi ữ ệ ử ế ấ ậ ồ ộ ố ế ị ặ ụ t b g p tr c
tr c thì thi t b còn l i s nh n th c thi luôn c nh ng ch c năng c a thi ặ ế ị ạ ẽ ả ữ ự ủ ứ ậ ế ị ặ ụ t b g p tr c
tr c.ặ
Trong m t bi n th khác, VIPs đ c phân ph i gi a hai thi t b cân b ng t i (Load ế ể ộ ượ ữ ố ế ị ằ ả
Balancer - LB) đ chia s lu ng d li u đ n. VIP 1 đ n LB A, VIP 2 đ n LB B. ẻ ồ ữ ệ ế ế ế ể
Hình 2.4: K ch b n Active-Active ả ị
Trong m t bi n th khác, c hai VIPs s đ u tr l ẽ ề ả ờ ể ế ả ộ ứ i trên c hai LB v i m t giao th c ả ộ ớ
phá v s h n ch r ng c hai LB s không có cùng m t đ a ch IP. ỡ ự ạ ộ ị ế ằ ẽ ả ỉ
24
Hình 2.5: Ho t đ ng c a k ch b n Active-Active ủ ị ạ ộ ả
Trong t t c các k ch b n active - active, n u m t LB g p tr c tr c, các VIP còn l ấ ả ụ ế ặ ặ ả ộ ị ạ ẽ i s
ti p t c tr l i trên LB còn l t b còn l i s th c thi h t t ế ụ ả ờ ạ i. Nh ng thi ữ ế ị ạ ẽ ự ế ấ ả ứ t c các ch c
năng. Hình 2-6.
• VRRP
Hình 2.6: Ho t đ ng c a k ch b n Active-Active ủ ị ạ ộ ả
Giao th c d phòng ph bi n nh t là giao th c VRRP (Virtual Router Redundancy ổ ế ứ ự ứ ấ
Protocol). Đây là m t chu n m và các thi c cho là h tr VRRP s đ u phù ẩ ở ộ t b đ ế ị ượ ỗ ợ ẽ ề
c mô t trong RFC 2338. h p đ i v i các đ c đi m đ ợ ố ớ ể ặ ượ ả
M i m t thi t b trong m t c p g i đi các packet và nh n ph n h i t các thi t b còn ỗ ộ ế ị ộ ặ ồ ừ ử ậ ả ế ị
i. N u không nh n đ c ph n h i t các thi t b khác thì thi l ạ ế ậ ượ ồ ừ ả ế ị ế ị t b này s đánh giá là ẽ
thi t b kia b vô hi u hóa và b t đ u th c hi n ti p qu n t t c các ch c năng. ế ị ắ ầ ả ấ ả ự ứ ệ ế ệ ị
Chúng ta không c n n m rõ t t c các chi ti t bên trong c a giao th c VRRP, tuy nhiên ắ ầ ấ ả ế ủ ứ
m t vài đ c đi m c a giao th c này cũng c n đ c n m rõ. VRRP s d ng c ng UDP ứ ủ ể ầ ặ ộ ượ ắ ử ụ ổ
1985 đ g i đi các packet t i đ a ch multicast là 225.0.0.2. Nh ng chi ti ể ử ớ ị ữ ỉ ế ẽ ấ ữ t này s r t h u
ích trong khi làm vi c v i các b l c IP ho c các thi ệ ớ ộ ọ ặ ế ị t b có ch c năng t ứ ườ ng l a. ử
VRRP đòi h i c hai thi ỏ ả ế ị ề t b đ u có th giao ti p đ ể ế ượ ớ ộ c v i nhau. N u nh cô l p m t ư ế ậ
trong hai thi t b đó v i thi t b còn l i thì m i thi t b đó s xác đ nh thi t b đã ch t và ế ị ớ ế ị ạ ỗ ế ị ẽ ị ế ị ế
ti p qu n tr ng thái master. Tr ng h p này có gây ra nh ng l i nghiêm tr ng trong ế ả ạ ườ ữ ợ ỗ ọ
m ng b i vì xung đ t đ a ch IP ho c các v n đ khác s x y ra khi c hai thi ẽ ả ộ ị ề ấ ả ặ ạ ở ỉ ế ị ề t b đ u
• Tính liên t c (Persistence) ụ
nghĩ r ng chúng đang là thi t b đang ho t đ ng trong k ch b n active - standby. ằ ế ị ạ ộ ả ị
S liên t c là hành đ ng gi cho lu ng d li u đ n cu m t ng i dùng xác đ nh s ch ự ụ ộ ữ ả ộ ữ ệ ế ồ ườ ẽ ỉ ị
đ n m t máy ch duy nh t. Trong khi thi ế ủ ấ ộ ế ị ọ t b SLB có th có m t vài máy đ l a ch n ộ ể ự ể
lu ng d li u đ n c a m t ng thì nó s luôn gi ẽ ữ ồ ế ủ ữ ệ ộ ườ ấ i dùng đ n m t máy ch duy nh t. ủ ế ộ
Đi u này đ c bi ề ặ ệ t quan tr ng đ i v i các ng d ng ki u web-store - cho phép ng ụ ố ớ ứ ể ọ ườ i
25
dùng đi n các thông tin mua bán và nh ng thông tin này ch đ c l u l ỉ ượ ư ạ ữ ề i trên m t máy ộ
tính duy nh t. Có m t s cách đ th c hi n k t n i liên t c tuy nhiên m i cách đ u có ể ự ế ố ộ ố ụ ệ ề ấ ỗ
• Ki m tra d ch v (Service Checking) ụ
nh ng u và nh c đi m nh t đ nh. ữ ư ượ ấ ị ể
ể ị
M t nhi m v c a thi t b SLB là nh n bi ụ ủ ệ ộ ế ị ậ ế ạ t khi nào server ho c d ch v b treo và lo i ặ ị ụ ị
b server đó ra kh i danh sách quay vòng. Tính năng này còn đ ỏ ỏ ượ c g i là ki m tra tình ể ọ
tr ng (Health Checking). Có m t s cách đ th c hi n vi c ki m tra này t ể ự ộ ố ệ ệ ể ạ ừ ơ cách đ n
gi n nh t nh ping ki m tra, ki m tra c ng (ki m tra xem c ng 80 có tr l i hay không) ả ờ ư ể ể ể ả ấ ổ ổ
ng h p web server đ ho c ki m tra n i dung trong tr ộ ể ặ ườ ợ ượ ồ c truy v n cho các ph n h i ấ ả
t nào đó. M t thi đ c bi ặ ệ ộ ế ị t b SLB s ch y ki m tra các d ch v m t cách liên ti p, quan ị ẽ ạ ụ ộ ể ế
• Thu t toán cân b ng t
nh ng kho ng th i gian đ c ng i dùng đ nh nghĩa s n. ữ ả ờ ượ ườ ẵ ị
i (Load Balancing Algorithm) ậ ằ ả
Tùy theo nh ng yêu c u nh t đ nh c a ng i dùng mà có m t s cách th c phân tán t ấ ị ữ ủ ầ ườ ộ ố ứ ả i
ậ gi a các nhóm server s d ng m t metric cho s n. Các cách th c đó d a trên các thu t ử ụ ữ ứ ự ẵ ộ
toán đ t b . Các cách th c này ch y ượ ậ c l p trình s n trong thi ẵ ế ị ạ ở ớ ế l p trên cùng và k t ứ
c v i b t kỳ m t cách th c duy trì tính liên t c nào. Chúng đ h p đ ợ ượ ớ ấ ứ ụ ộ ượ ữ c gán cho nh ng
• C s h t ng cung c p ấ
VIP riêng l .ẻ
ơ ở ạ ầ
H t ng c s m ng là s k t h p c a các m ng thành ph n cung c p k t n i t ự ế ợ ơ ở ạ ế ố ớ i ạ ầ ủ ạ ầ ấ
Internet, Extranet ho c Intranet cho máy ch web. Nó k t n i gi a các máy ch web và ủ ế ố ữ ủ ặ
ng i s d ng d ch v . Có hai cách đ th c hi n đi u này: t i m t đ a đi m đ ườ ử ụ ể ự ụ ệ ề ị ạ ộ ị ể ượ c
ki m soát b i m t site ho c m t đ a đi m đ c duy trì b i m t colocation / nhà cung ộ ị ể ể ặ ở ộ ượ ở ộ
c p d ch v hosting cho các công ty. ấ ụ ị
- Trung tâm d li u: Các site c a chúng ta dù ch y các m ng c c b hay ch y trên ữ ệ ạ ở ủ ụ ạ ạ ộ
máy ch c a các nhà cung c p hosting thì chúng đ u đ c đ t t i các data center. Data ủ ủ ề ấ ượ ặ ạ
ng đ Center là m t khái ni m dùng đ ch m t khu v c có đ an toàn cao, môi tr ỉ ộ ự ệ ể ộ ộ ườ ượ c
26
t (th ng s d ng đi u hòa không khí), các thi t b phòng cháy ch a cháy không đi u ti ề ế ườ ử ụ ề ế ị ữ
s d ng n ử ụ ướ ố ề c (nh Halon ho c FM200) và h th ng các UPS l u tr đi n năng. S ti n ữ ệ ệ ố ư ư ặ
đ c đ u t vào đây có th là m t khía c nh đ xác đ nh ch t l ng c a m t data ượ ầ ư ấ ượ ể ể ạ ộ ị ủ ộ
center.
ộ - Leased Line: M t site có th ch y v i m t ho c nhi u các k t n i leased line c a m t ể ạ ế ố ủ ề ặ ộ ộ ớ
hay nhi u nhà cung c p d ch v . Leased line đ n gi n có th là các đ ng DSL cũng có ụ ể ề ả ấ ơ ị ườ
th r t ph c t p nh s d ng nhi u đ ng OC3s ch y trên các phiên BGP đ y đ t ư ử ụ ứ ạ ể ấ ề ườ ủ ớ i ầ ạ
nhi u nhà s d ng. L i ích mà Leased line đem l i là ng ử ụ ề ợ ạ ườ ề i ch có toàn quy n đi u ủ ề
khi n và truy c p vào các thi t b c a mình. ể ậ ế ị ủ
- Colacation: Là m t d ch v cho phép b n l p đ t và s p x p các máy ch c a mình t ạ ắ ắ ế ủ ủ ộ ị ụ ặ ạ i
đ a đi m c a nhà cung c p d ch v . Thông th ị ủ ụ ể ấ ị ườ ng là các rack ho c các l ng an ninh. ặ ồ
Nhà cung c p s đ m b o an toàn, cung c p đi n năng, đi u hòa không khí cũng nh ấ ấ ẽ ả ề ệ ả ư
băng thông cho các thi ế ị ủ ạ t b c a b n. Nh ng nhà cung c p d ch v này s cho phép các ấ ụ ữ ẽ ị
thi i các đ ế ị ủ t b c a b n k t n i t ạ ế ố ớ ườ ng k t n i backbone c a h thông qua “network ủ ế ố ọ
drop” th ng k t n i Ethernet. Đi m l i c a cách này là băng thông ườ ng là s d ng đ ử ụ ườ ế ố ể ợ ủ
c a nhà cung c p d ch v th ủ ụ ườ ấ ị ng có kh năng m r ng h n là nh ng gì b n có v i các ơ ở ộ ữ ạ ả ớ
thi t b c a mình. N u b n mu n m r ng băng thông t ế ị ủ ở ộ ế ạ ố ừ nhà cung c p d ch v , b n ch ị ụ ạ ấ ỉ
c n yêu c u nhà cung c p ho c nâng c p các k t n i Ethernet c a mình. Còn n u khi ầ ế ố ủ ế ấ ầ ặ ấ
trên thì b n ph i m t t b n s d ng Leased line nh ạ ử ụ ư ở ấ ừ ạ ả ầ 30 ngày đ n 6 tháng đ yêu c u ể ế
công ty vi n thông tăng thêm băng thông cho đ ng k t n i c a mình nh đ ng T-1 ễ ườ ế ố ủ ư ườ
(1,5 Mbps) ho c DS-3 (45 Mbps), v i các đ ng k t n i có băng thông l n h n thì s ặ ớ ườ ế ố ớ ơ ẽ
c n th i gian lâu h n. ầ ơ ờ
Colocation là m t d ch v đ ộ ị ụ ượ ư c a chu ng nh t hi n nay b i các y u t ệ ế ố ấ ớ ộ giá c và kh ả ả
năng m r ng mà nó đem l ở ộ ạ ơ i. D ch v này s t n ít chi phí và d dàng tri n khai h n ẽ ố ụ ể ễ ị
đ i v i các công ty vì các công ty s không c n ph i quan tâm đ n data center cũng nh ố ớ ẽ ế ầ ả ư
là các đ ng k t n i. Các đ ng k t n i m ng th ng th ườ ế ố ườ ế ố ạ ườ ườ ng r t ph c t p, có liên ứ ạ ấ
quan đ n các đi m ngang hàng, các leased line t i các nhà cung c p, và có th là chính ế ể ớ ể ấ
đ ng backbone c a b n. Thông th ng, t t c các site ch c n quan tâm đ n network ườ ủ ạ ườ ấ ả ỉ ầ ế
27
drop t ừ nhà cung c p d ch v . ụ ấ ị
2.2.2. Ki n trúc h th ng cân b ng t ệ ố i đa hoá thông l ằ ng và đ kh d ng, công ngh cân b ng t ế Đ t ể ố i ả ộ ả ụ ệ ằ ượ ả ử ụ 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 c cài đ t và ế ề ề ể ằ ầ i đ ả ượ ặ
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 ờ ư ượ ể ệ ạ ộ ồ ế ạ ị ỉ
nhi u v trí khác nhau). Trên IP chính c a nhóm (và các đ a ch b sung c a các host ị ỉ ổ ủ ủ ở ề ị
ạ 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.
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 ả ị
. Do th i gian l c các gói không mong mu n di n ra tuy n các gói đ n t ng host riêng l ế ừ ế ẻ ễ ờ ọ ố
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
ng cũng 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 ố ộ ủ ộ ề ự ạ ǎ ố ượ
thu n, do đó lo i b đ c b t c s l t ng theo t l ǎ ỉ ệ ạ ỏ ượ ậ ấ ứ ự ệ ế thu c nào vào vi c đ nh tuy n ệ ộ ị
t. Trên th c t , b cân b ng t d a trên các ph n c ng đ c bi ự ầ ứ ặ ệ ự ế ộ ằ ả 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 ơ ả ộ ư ủ ể ế ạ
c t ng c ng v i (N-1) cách kh c ph c l hoàn toàn là đ kh d ng đ ộ ả ụ ượ ǎ ườ ụ ỗ ắ ớ ộ 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 cân b ng t c nh ng u đi m v ki n trúc các ế ằ ả i cũng t n d ng đ ậ ụ ượ ề ế ữ ư ể
thi ế ị ệ t b chuy n m ch (switch) ho c các b t p trung (hub) c a m ng con trong vi c ộ ậ ủ ể ặ ạ ạ
ng m ng đ n t t c các host trong nhóm. Tuy nhiên, đ ng th i phân ph i l u l ồ ố ư ượ ờ ế ấ ả ạ
ph ng pháp này làm t ng "t i tr ng" trên các chuy n m ch do chi m thêm b ng thông ươ ǎ ả ọ ể ế ạ ǎ
c ng. Đây không ph i là v n đ trong ph n l n các ng d ng nh d ch v Web hay ổ ầ ớ ư ị ứ ụ ụ ề ả ấ
28
streaming media, do t l l u l ỉ ệ ư ượ ư ng đ n ch chi m m t ph n r t nh trong t ng l u ầ ấ ế ế ộ ỏ ổ ỉ
ng m ng. Tuy nhiên, n u các k t n i m ng phía client đ n thi l ượ ế ố ế ế ạ ạ ế ị t b chuy n m ch có ể ạ
ng có th chi m m t t l t c đ nhanh h n nhi u các k t n i phía server, l u l ố ế ố ư ượ ề ơ ộ ộ ỉ ệ ớ l n ể ế
quá m c cho phép c a b ng thông c ng phía server. V n đ t ng t ủ ǎ ề ươ ứ ấ ổ ự ẽ ế s gia t ng n u ǎ
nhi u nhóm k t n i trên cùng m t thi t b chuy n m ch và các bi n pháp thi t l p các ế ố ề ộ ế ị ệ ể ạ ế ậ
m ng LAN o cho t ng nhóm không đ ừ ạ ả ượ ệ c th c hi n. Trong quá trình nh n gói, vi c ự ệ ậ
tri n khai c a SLB 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, SLB cũng t ng ử ế ậ
ng thông l và ph phí (overhead) nh t ng s l ng gói mà c ườ ượ ng, gi m đ tr ả ộ ễ ờ ǎ ố ượ ụ
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, ộ ế ố ể ử ể ượ ề ệ ữ ệ ả ǎ
SLB 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. ử ụ ể ố ợ ạ ộ ủ ề ể
ạ ộ ủ ệ ố Mô hình SLB đ n gi n đ ằ c mô t i đây 2.2.3 . Ho t đ ng c a h th ng cân b ng t ơ ả nh ả ư ở ả ượ i File Server hình d ướ
Hình 2.7: H th ng SLB đ n gi n ả ệ ố ơ
SLB m r ng hi u n ng c a các server ng d ng, nh File server, Web server ở ộ ủ ứ ụ ư ệ ǎ
ch ng h n, 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. ể ư ề ầ ộ
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 ỗ
i c a host. T i do các client g i đ n đ s l a ch n và x lý m t ph n t ẽ ự ầ ả ủ ử ế ử ả ộ ọ ượ ố 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ó. ậ ượ ố ượ ỗ ầ ả ầ ủ ị
29
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. 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 ả ừ ụ ế ặ ặ ộ
i đ duy trì liên t c các d ch v cho các host khác s đi u ch nh và tái phân ph i l ỉ ẽ ề i t ố ạ ả ể ụ ụ ị
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 đ i. ườ ử ụ ễ ộ ậ ượ ỉ ả ấ c đáp ng tr l ứ ả ờ
2.3. Tri n khai h th ng File Server ệ ố ể
ệ 2.3.1. Gi DFS đ i thi u DFS (Distributed File System) ớ c s d ng đ xây d ng c u trúc phân c p đ i di n cho nhi u v trí chia s d ự ượ ử ụ ể ề ệ ấ ạ ấ ẻ ữ ị
ỗ li u trên nhi u File server khác nhau. N u trong m ng c a b n có nhi u File server, m i ủ ạ ề ề ệ ế ạ
ả File server đó có m t vài th m c chia s ch a d li u, b n s g p khó khăn khi ph i ẻ ứ ữ ệ ạ ẽ ặ ư ụ ộ
ắ nh chia s nào n m trên server nào. Nh ng v i DFS, thay vì ph i nh t ng share g n ớ ừ ư ẻ ả ằ ớ ớ
t c chia i t v i t ng File server, b n s ch ph i nh m t tên duy nh t đ có th đi t ớ ừ ạ ẽ ỉ ấ ể ớ ộ ể ả ớ ấ ả
t c server. B n có th t ng t ng cái tên đó nh là m t “home” c a t t c s trên t ẻ ấ ả ể ưở ạ ượ ủ ấ ả ư ộ
shared files, trong “home” đó ch a đ i v trí th c s c a các th m c chia ứ ườ ng d n tr t ẫ ỏ ớ ị ự ự ủ ư ụ
s trên các File server. DFS có th d n client t ẻ ể ẫ ớ i File server g n nh t có th b ng cách ấ ể ằ ầ
s d ng “Active Directory site metric”. DFS cũng có th cài trên m t h th ng Cluster ử ụ ộ ệ ố ể
t h n và đ tin c y cao h n. đ cung c p hi u năng t ể ệ ấ ố ơ ơ Đ hi u DFS làm vi c nh nào, ể ể ư ệ ậ ộ
• DFS Root: là tên g c cho m i đ
chúng ta c n ph i hi u m t s thu t ng : ữ ể ộ ố ậ ầ ả
ọ ườ ố ư ộ ng d n DFS. B n có th hi u nó nh m t ể ể ẫ ạ
• DFS Link: đ
“Root Share”, trong đó b n có th có các t p tin và th m c khác. ể ư ụ ệ ạ
ng d n t i m t th m c chia s n m m t v trí c th nào đó ườ ẫ ớ ẻ ằ ở ộ ị ư ụ ụ ể ộ
trên mang. Khi user truy c p t i DFS Link s đ c chuy n h ậ ớ ẽ ượ ể ướ ư ụ ng sang th m c
• DFS Target (Replica): có th là DFS Root hay DFS Link. N u b n có 2 chia s
chia s th t. ẻ ậ
ế ể ạ ẻ
gi ng h t nhau nh ng l u tr 2 v trí khác nhau, b n có th nhóm chúng vào ư ư ệ ố ữ ở ể ạ ị
30
chung trong m t DFS Target. ộ
DFS có hai d ng:ạ
Hình 2.8: C u trúc th m c th t s c a m t h th ng DFS ộ ệ ố ậ ự ủ ư ụ ấ
ự 1. Active Directory Intergrated DFS (Fault-tolerant DFS): Là h th ng DFS d a ệ ố
trên n n Active Directory. H th ng DFS s t đ ng đ ng b gi a các Domain ẽ ự ộ ữ ề ệ ố ồ ộ
Controller và ng ườ i dùng có th truy xu t đ n DFS thông qua đ ấ ế ể ườ ẫ ng d n
\\domainname\dfsname. D ng này th ng đ c áp d ng trong tr ạ ườ ượ ụ ườ ạ ng h p các B n ợ
mu n xây d ng các Files Server đ ng b v i nhau, m c đích chính là đ m b o tính liên ộ ớ ự ụ ả ả ồ ố
m t Files Server nào đó thì Files Server khác s t c trên h th ng m t khi có s c ụ ệ ố ự ố ở ộ ộ ẽ
thay th VÀ d li u t đ ng nhân b n, c p nh t cho toàn b h th ng DFS Server. ữ ệ ự ộ ộ ệ ố ế ả ậ ậ
2. Stand-alone DFS: Là h th ng DFS trên m t máy Server Stand-alone. Ng ệ ố ộ ườ i
dùng truy xu t h th ng DFS thông qua đ ng d n ấ ệ ố ườ ẫ \\servername\dfsname. D ng này ạ
th ng đ c dùng trong tr ng h p các B n mu n t t c các Files Server đ c QUI v ườ ượ ườ ố ấ ả ạ ợ ượ ề
m t m t k t n i duy nh t. Ng i DFS Server là có th truy ố ế ố ấ ộ ườ ử ụ i s d ng ch c n k t n i t ỉ ầ ế ố ớ ể
xu t t i các Files Server khác theo ki u duy t cây th m c. ấ ớ ư ụ ể ệ
2.4.1. Thu t toán Round Robin:
ậ
2.4. Các thu t toán cân b ng t i ả ằ ậ
Đây g i là thu t toán luân chuy n vòng, các máy ch s đ c xem ngang hàng và ủ ẽ ượ ể ậ ọ
c g i t i các máy s p x p theo m t vòng quay. Các truy v n d ch v s l n l ắ t đ ụ ẽ ầ ượ ượ ử ớ ế ấ ộ ị
ch theo th t s p x p. ứ ự ắ ế ủ
Ví d :ụ
C u hình m t c m Cluster bao g m 03 máy ch : A, B, C. ộ ụ ủ ấ ồ
Yêu c u d ch v th nh t s đ c g i đ n máy ch A. ụ ứ ấ ẽ ượ ử ế ủ ầ ị
Yêu c u d ch v th hai s đ c g i đ n máy ch B. ụ ứ ẽ ượ ử ế ủ ầ ị
Yêu c u d ch v th ba s đ c g i đ n máy ch C. ụ ứ ẽ ượ ử ế ủ ầ ị
2.4.2. Thu t toán Weighted Round Robin:
ậ
s l c g i cho máy ch A…. i đ Yêu c u d ch v th t ị ụ ứ ư ẽ ạ ượ ử ủ ầ
B n ch t gi ng nh thu t toán Round Robin, tuy nhiên chúng ta có th c u hình ể ấ ư ả ậ ấ ố
31
cho m t máy ch nào đó th ng xuyên đ c s d ng h n. ủ ộ ườ ượ ử ụ ơ
2.4.3. Thu t toán Least Connection:
ậ
ng k t n i đ th c hi n cân b ng t Đây là thu t toán d a trên tính toán s l ự ố ượ ậ ế ố ể ự ệ ằ ả i
cho máy ch , nó s t đ ng l a ch n máy ch v i s l ng k t n i đang ho t đ ng là ẽ ự ộ ủ ớ ố ượ ự ủ ọ ạ ộ ế ố
2.4.4. Thu t toán Weights Least Connection:
ậ
nh nh t. ấ ỏ
ư B n ch t gi ng thu t toán Least Connection, nh ng chúng ta có th c u hình u ể ấ ư ả ấ ậ ố
2.4.5. Thu t toán Least Response Time:
ậ
tiên cho m t máy ch trong c m máy ch ho t đ ng. ủ ạ ộ ủ ụ ộ
Đây là thu t toán s d ng ph ử ụ ậ ươ ng pháp th i gian đáp ng ít nh t, l a ch n d ch ứ ấ ự ờ ọ ị
v trên máy ch v i th i gian đáp ng là th p nh t. ụ ủ ớ ứ ấ ấ ờ
Ngoài ra còn có r t nhi u thu t toán cân b ng t ề ằ ậ ấ ả ầ i khác tùy theo ph n m m ho c ph n ầ ề ặ
c s d ng. i đ c ng cân b ng t ứ ằ ả ượ ử ụ
2.4.6. Hàm băm:
Hàm băm là gi i thu t nh m sinh ra các giá tr băm t ng ng v i m i database ả ậ ằ ị ươ ứ ớ ỗ
t các database server. cũng server. Giá tr băm đóng vai g n nh m t khóa đ phân bi ầ ư ộ ể ị ệ
gi ng v i gi i thu t Round-robin, hàm băm ch đ nh server tr l i truy v n cho client mà ố ớ ả ả ờ ậ ỉ ị ấ
i c a server đó (có ít hay nhi u truy v n). không quan tâm đ n tr ng thái hi n t ế ệ ạ ủ ề ấ ạ
2.4.7. Gi i thu t xác đ nh t ng s k t n i nh nh t: ả ố ế ố ỏ ấ ổ ậ ị
Gi ả i thu t này xác đ nh t ng s k t n i hi n t ổ ố ế ố ệ ạ ậ ị ế i trên các database server, n u
server
c ch đ nh là tr l i truy v n ti p theo nào có t ng k t n i nh nh t thì server đó s đ ỏ ế ố ẽ ượ ấ ổ ả ờ ị ỉ ế ấ
c a client. Trong gi ủ ả i thu t này có quan tâm đ n tr ng thái c a server. Đây là m t gi ạ ủ ế ậ ộ ả i
thu t t i u đ cân b ng t i cho các database server. Tuy nhiên, th i gian th c hi n bài ậ ố ư ể ằ ả ự ệ ờ
toán là lâu h n hai gi i thu t trên, b i vì nó ph i ghi l ơ ả ả ậ ở ạ i và tính s k t n i đ n các server ố ế ố ế
32
hi n th i. ệ ờ
CH
NG III. CÀI Đ T TH C NGHI M - ĐÁNH GIÁ H
ƯƠ
Ự
Ặ
Ệ
Ệ
TH NGỐ
Trong m ng LAN khi h th ng m ng đòi h i ph i th c hi n vi c chia s tài ệ ố ự ẻ ệ ệ ả ạ ạ ỏ
nguyên gi a các ng ữ ườ ỏ ệ ố i dùng trong m ng v i nhau ngày càng nhi u thì đòi h i h th ng ề ạ ớ
ph i có m t File Server đ đ m đ ng công vi c này. ể ả ả ộ ươ ệ
Tuy nhiên trên th c t v i m t h th ng m ng l n đ n r t l n thì vi c m t máy File ự ế ớ ộ ệ ố ế ấ ớ ệ ạ ộ ớ
Server g ng gánh cho t t c các yêu c u là không th . Mà yêu c u đ t ra là làm sao có ồ ấ ả ể ầ ầ ặ
33
nhi u File Server h n và cùng chia s m t l ng tài nguyên nào đó. Chính vì th ẻ ộ ượ ề ơ ế
Microsoft đã đ a ra m t gi i pháp là Distributed File System (DFS) hay còn g i là h ư ộ ả ọ ệ
th ng d li u phân tán. ữ ệ ố
V i DFS l ng d li u dùng đ chia s cho ng i dùng gi ớ ượ ữ ệ ể ẻ ườ ờ ằ đây không còn n m
trên duy nh t m t File Server n a mà tùy theo nhu c u th c t ng i qu n tr m ng s ự ế ữ ầ ấ ộ ườ ị ạ ả ẽ
thi t c các ế ế t k 2 hay nhi u File Server cùng th c hi n vi c chia s này, t ng h p t ự ợ ấ ả ệ ẻ ề ệ ổ
File Server này đ c g i là Distributed File System (DFS). ượ ọ
Nh v y v i mô hình DFS khi có các yêu c u truy c p tài nguyên t bên ngoài ư ậ ậ ầ ớ ừ
vào DFS thì h th ng s t phân chia đ u các yêu c u này cho các File Server bên trong ệ ố ẽ ự ề ầ
DFS nh m tránh tình tr ng m t File Server nào đó quá t i trong khi m t File Server khác ằ ạ ộ ả ộ
thì quá nhàn r i.ỗ
3.1. C u hình và ch y ch ng trình ạ ấ ươ
Mô hình Đ ng b hóa d li u trên 2 Server s d ng DFS Replication. Mô hình ữ ệ ử ụ ộ ồ
này thi t l p hai Domain Controller ch y song song, đ ng th i cũng là 2 file server có ế ậ ạ ờ ồ
kh năng đ ng b hóa d li u cho nhau. Khi m t trong 2 File Server ch t, thì Server kia ữ ệ ế ả ộ ồ ộ
k t n i v i client, đ m b o d li u có tính s n sàng cao. Đ ng th i có s ti p t c gi ẽ ế ụ ữ ế ố ớ ữ ệ ả ả ẵ ồ ờ
th đ c áp d ng cho vi c cân b ng t i, gi m b t gánh n ng truy xu t lên m t File ể ượ ụ ệ ằ ả ả ấ ặ ớ ộ
Server.
Trong bài này, Server 1 s có tên là SERVER1 v i IP là 184.0.18.142 và Server 2 có tên ẽ ớ
là SERVER2 v i IP là 14.0.18.143 ớ
• Nâng Server 1 lên thành Domain Controller.
• Thi
Các b ướ c th c hi n chính: ệ ự
• Cài đ t File Server, Distributed File System trên Server 1 và Server 2.
t l p Secondary Domain Controller trên Server 2. ế ậ
• C u hình DFS Namespaces và DFS Replication trên Server 1.
ặ
• Testing...
• Nâng Server 1 lên thành Domain Controller
34
ấ
• Thi
C u hình IP c a Server 1 nh sau ủ ư ấ
35
t l p Secondary Domain Controller trên Server 2. ế ậ
• Cài đ t File Server, Distributed File System trên Server 1 và Server 2
ặ
Trên 2 Server ta vào Server Manager đ Add m t File Services ộ Role m i làớ ể
36
Nh nấ Next
Ch n cài đ t Distributed File System g m DFS Namespaces và DFS Replication ồ ặ ọ
Managemnet snap-in in Server Manager
37
t l p sau. Vì th ch n Chúng ta s ti n hành thi ẽ ế ế ậ ọ Create a namespace later using DFS ế
B mấ Install
38
Cài đ t xong, ta nh t ấ Close ặ
• C u hình DFS Namespaces và DFS Replication trên Server 1
ấ
Bung Role --> File Services --> DFS Managemet
39
Nh n ph i chu t vào ả ấ ộ Namespaces và ch nọ New Namespace
40
H p tho i hi n ra, ta nh n ệ ấ Browser và add vào Server 1 là server1 ạ ộ
H p tho i k ti p, ạ ế ế Namespace name and setting : khai báo tên folder ch a d li u s ữ ệ ứ ộ ẽ
public trong h th ng cho user truy c p l y tài nguyên cũng nh l u tr d li u…Sau đó ữ ữ ệ ậ ấ ệ ố ư ư
41
ch n m c ụ Edit Setting… ọ
42
Ch nọ Use custom permission --> Customize
43
Cho Everyone quy nề Full Controll
44
Tr v h p tho i ở ề ộ ạ Namespace name and setting ch n Next ọ
T o ạ Namespace m i thành công, ta nh n ớ ấ Close
Ti p t c, ta nh n chu t ph i lên Namespace m i v a t o và ch n ớ ừ ạ ế ụ ọ Add Namespace ấ ả ộ
45
Server
46
Nh nấ Edit Settings
47
Ch nọ User custom permissions --> Customize
48
Cho Everyone quy nề Full Control
Nh nấ Ok --> OK và đ i m t lát đ h th ng ki m tra. N u thành công, ta s có k t qu ể ệ ố ế ế ẽ ể ộ ợ ả
49
nh hình d i đây. ư ướ
50
Ti p t c, ta nh n ph i chu t lên ấ ế ụ ả ộ Replication và ch nọ New Replication Group...
H p tho i ạ Replication Group Type, ta đánh d u ch n ọ Multipurpose replication group và lick ấ ộ
51
next
Nh p tên c a Relication này và nh n ấ Next ủ ậ
52
Click Add và thêm vào 2 thành viên SERVER1 và SERVER2
H p tho i Next ạ Topology Selection, ta ch nọ Full Mesh r i click ộ ồ
H p tho i ạ Replication Group Schedule and Bandwidth: Ch n Replicate continuously ộ ọ
using the specified bandwidth: Full (cho phép đ ng b d li u 24g trong ngày và 7 ngày ộ ữ ệ ồ
53
trong tu n v i băng thông Full) ầ ớ
54
Ch n 1 trong 2 server làm Primary ọ
H p tho i i th m c g c ch a các ạ Folder to Replicate hi n ra, ta ch n ADD và ch n t ọ ớ ệ ộ ọ ư ụ ố ứ
th m c đ c Replicate ư ụ ượ
55
Ch nọ Custom permission --> Edit Permissions...
Thêm vào 2 User là Domain Users và Creator Owner. Ta ti n hành phân quy n cho Domain ề ế
Users quy n đ c và ghi ề
ọ
ề
56
, Creator Owner quy n Full Controll
Tr l i c a s ở ạ ử ổ Folder To Replicate ch n Next ọ
57
Ch n thành viên ọ DNS2 và nh nấ Edit
58
ng d n ch a th m c g c c a các replicate Folder --> OK Ch nọ Enable --> Cho bi t đ ế ườ ư ụ ố ủ ứ ẫ
59
Tr l i c a s ở ạ ử ổ Local Path of DFSRoots on Other Members và ch nọ Next
60
Ki m tra l i thông tin l n cu i và nh n ể ạ ấ Create ầ ố
61
N u cài đ t thành công thì s có k t qu nh hình d i đây. ả ư ẽ ế ế ặ ướ
C a s Confirmation b o đ m Success hi n ra, ta ch n Close ử ổ ệ ả ả ọ
• Testing ch
K t qu c u hình ả ấ ế
ng trình ươ
Trong M cụ Data c a Server ủ ớ server1 ta ti n hành th t o 1 file Text v i ử ạ ế
tên server1_test
Trong M cụ Data c a Server ủ ớ server2 ta ti n hành th t o 1 file Text v i ử ạ ế
62
tên server2_test.
ả ở ụ
m c Data c a 2 Server đ u có c 2 file server1_test và server2_test ả
ủ
ề
Quá trình cài đ t và c u hình nh v y là đã thành công
==> K t qu ế
ư ậ ấ ặ
ệ ố 3.2. Đánh giá h th ng Server đang là n n t ng phân ph i các ng d ng quan tr ng, th ng xuyên và ề ả ụ ứ ố ọ ườ
i pháp lý r ng kh p nh File, Web, Mail, Streaming media, VPN. NLB cung c p m t gi ộ ư ấ ắ ộ ả
ng, kinh t đ t ng c ng tính kh m và kh d ng cho các ng d ng trên c môi t ưở ế ể ǎ ườ ả ở ả ụ ứ ụ ả
tr ng Internet và intranet. Ngoài nh ng ng d ng tích h p trong Windows Server 2008, ườ ữ ứ ụ ợ
NLB còn có th tích h p trong các h đi u hành m ng và các ng d ng ch y trên server ệ ề ứ ụ ể ạ ạ ợ
ạ khác m t cách hi u qu . Tuy nhiên M c dù DFS có th c ng c m nh m các ho t ố ạ ể ủ ẽ ệ ặ ả ộ
63
trên network c a b n, nh ng ti n ích này đ ng và tính s n có c a các d li u l u gi ủ ộ ữ ệ ư ẵ ữ ủ ạ ữ ệ
cũng có cái giá c a nó và có nh ng u và nh c đi m khác nhau. Đi u đó có nghĩa là ủ ư ữ ượ ể ề
•
c h t b n nên có m t k ho ch. n u l n đ u tiên b n đang xem xét cài đ t DFS, tr ế ầ ặ ầ ạ ướ ế ạ ộ ế ạ
- DFS cung c p cho b n m t vùng không gian duy nh t cho phép ng
u đi m Ư ể
ấ ạ ấ ộ ườ ể ế i dùng có th k t
n i đ n b t c th m c chia s nào trong doanh nghi p, d dàng tìm t p tin. DFS có th ố ế ấ ứ ư ụ ễ ẻ ệ ậ ể
-
cho phép nhân b n nh ng t p tin chia s ữ ả ậ ẻ
V m t kĩ thu t, thì b n không c n nhi u server DFS, nh ng n u dùng ề ặ ư ề ế ầ ạ ậ
chúng thì s có nh ng cái l i. V i nh ng ng ữ ẽ ợ ữ ớ ườ ạ i m i dùng, dùng nhi u b n sao cho b n ề ả ớ
kh năng m r ng. Thay vì b t m i ng i dùng trong t ch c c a b n truy c p các file ở ộ ả ắ ỗ ườ ổ ứ ủ ạ ậ
i làm vi c qua các b n sao c a DFS c a h t ủ ọ ừ cùng m t server, b n có th phân b t ạ ổ ả ể ộ ủ ệ ả
-
. khác nhau thay vì đè n ng lên m t server đ n l ặ ơ ẻ ộ
DFS cung c p fault tolerance t ấ ừ ệ ớ ế quan đi m b o v b n kh i vi c r t k t ệ ạ ể ả ỏ
văn phòng chi nhánh, thì các user văn n i network, N u b n đ t m t b n sao DFS ố ộ ả ế ặ ạ ở ở
phòng này v n có th truy c p đ ể ẫ ậ ượ ớ c vào các file c a h m c dù k t n i WAN đã r t. ủ ọ ặ ế ố
Khi k t n i đ c n i l i, b t kì thay đ i nào các file văn phòng s đ c đ ng b ế ố ượ ố ạ ấ ổ ở ở ẽ ượ ồ ộ
• Nh
hoá v i nh ng server khác. ữ ớ
-
ượ c đi m ể
N u ng i dùng liên t c thay đ i các d li u. Trong môi tr ế ườ ữ ệ ụ ổ ườ ư ậ ng nh v y,
t ấ ả t c các update cho m t file s thay đ i s phiên b n file, d n đ n vi c sao chép ổ ố ế ệ ẽ ẫ ả ộ
các update đ DFS. N u m t l ế ộ ượ ng kh ng l ổ ồ ượ ộ ơ c th c hi n thì có th d n đ n m t c n ể ẫ ự ệ ế
-
bão các b n sao chép. ả
N u các user c a b n th ủ ạ ế ườ ắ ng xuyên update các file thì b n nên cân nh c ạ
th i gian sao chép th c hi n ph n l n các sao chép tránh vào gi cao đi m. M c dù là ầ ớ ự ệ ờ ờ ể ặ
m t l n n a, đi u này có th d n đ n vi c xung đ t các phiên b n n u 2 instance riêng ộ ầ ữ ả ế ể ẫ ệ ế ề ộ
c update tr l ẻ ủ c a m t file đ ộ ượ ướ c khi th c hi n sao chép. ệ ự
K T LU N
Ậ
Ế
1.
64
T ng k t ế ổ
Đ án đã đ a ra các thành ph n c n ph i xây d ng c a m t b cân b ng t i và ộ ộ ư ự ủ ầ ầ ả ằ ồ ả
i pháp phân t i đ ng thông minh ho t đ ng hi u qu h n so v i gi đã cài đ t m t gi ặ ộ ả ả ộ ạ ộ ả ơ ệ ớ ả i
pháp đang ch y trên m t b cân b ng t ộ ộ ằ ạ ả i mã ngu n m . ở ồ
Tr c tiên, đ án đã đ a ra mô hình File v i kh năng m r ng, t ướ ở ộ ư ả ồ ớ ừ ầ đó nh n m nh t m ấ ạ
quan tr ng c a vi c cân b ng t ủ ệ ằ ọ ả ử ụ i cho các File server trong toàn b h th ng. S d ng ộ ệ ố
phép so sánh v hi u năng ề ệ h th ng cân b ng t ệ ố ằ ả i server và h th ng thông th ệ ố ườ , ng
i đ phân t i cho các File server này. đ ng th i s d ng m t b cân b ng t ồ ờ ử ụ ộ ộ ằ ả ể ả
M t b cân b ng t t c n ph i ki m tra đ c tr ng thái server, ộ ộ ằ ả i ho t đ ng t ạ ộ ố ầ ể ả ượ ạ
nh m đ m b o không chuy n yêu c u c a ng i dùng đ n nh ng server không còn ủ ể ầ ằ ả ả ườ ữ ế
ho t đ ng. Thu t toán phân t i c n ph i đ ạ ộ ậ ả ầ ả ượ ự c xây d ng m t cách thông minh nh m l a ự ằ ộ
ch n đ c server t t nh t đ ph c v yêu c u ng i dùng. ọ ượ ố ấ ể ụ ụ ầ ườ
Đ án đã gi i thi u 8 thu t toán cân b ng t i hi n đang đ ồ ớ ệ ằ ậ ả ệ ượ ử ụ ộ c s d ng b i m t ở
i c a các công ty l n trên th gi i, đ c chia ra làm 2 nhánh là s s n ph m cân b ng t ố ả ẩ ằ ả ủ ế ớ ớ ượ
ỏ ậ các thu t toán tĩnh và các thu t toán đ ng. Các thu t toán này không nh ng đòi h i l p ữ ậ ậ ậ ộ
trình ph n m m tinh vi, mà còn yêu c u s h tr c a các ph n c ng. ầ ự ỗ ợ ủ ầ ứ ề ầ
Đ án còn nêu ra các thành ph n c a cân b ng t ầ ủ ằ ồ ả i File server, ch c năng c a các ứ ủ
thành ph n, ho t đ ng c a h th ng, ki n trúc h th ng trong File server. ủ ệ ố ạ ộ ệ ố ế ầ
Ngoài ra còn tri n khai thi t k đ c ể ế ế ượ Mô hình Đ ng b hóa d li u trên 2 Server ữ ệ ồ ộ
Mô hình này thi t l p hai Domain Controller ch y song song s d ng DFS Replication. ử ụ ế ậ ạ
giúp h th ng duy trì ho t đ ng khi m t trong hai b cân b ng t i b h ng. ạ ộ ệ ố ằ ộ ộ ả ị ỏ
Do th i gian và ngu n l c có h n, đ án ch a thi c m t b cân b ng t ồ ự ư ạ ờ ồ t k đ ế ế ượ ộ ộ ằ ả i
hoàn ch nh, hi v ng s đ c th c hi n trong m t nghiên c u sâu h n v đ tài này. ẽ ượ ọ ỉ ề ề ự ứ ệ ộ ơ
Nh ng ý t c do h n ch trong thi t k c a b cân b ng t i xin ữ ưở ng ch a th c hi n đ ự ệ ượ ư ế ạ ế ế ủ ộ ằ ả
2.
ng phát tri n. đ dành trong ph n đ nh h ể ầ ị ướ ể
H ng phát tri n ướ ể
trong khoá lu n t Ph n demo s hoàn thi n h n đ đúng v i mô hình th c t ơ ự ế ẽ ệ ể ầ ớ ậ ố t
65
nghi p.ệ
TÀI LI U THAM KH O
Ả
Ệ
Tài li u ti ng Vi
ế
ệ
t ệ
[1]. Vũ Duy L i (2002), M ng thông tin máy tính. NXB Th gi i ế ớ ạ ợ
66
[2]. V ng Đ o Vi, M ng truy n d li u. NXB Đ i H c Qu c Gia Hà N i. ề ữ ệ ươ ạ ạ ạ ố ọ ộ
ư [3]. Lê Văn Long, “Qu n tr m ng”, bài gi ng Khoa CNTT- Đ i h c Duy Tân, L u ạ ọ ị ạ ả ả
hành n i b . ộ ộ
[4]. Nguy n Gia Nh “Thi t k m ng”, bài gi ng Khoa CNTT - Đ i h c Duy ư ễ ế ế ạ ạ ọ ả
Tân, L u hành n i b . ộ ộ ư
[5]. H ng Phúc (2005), T i u Hóa Th c Thi M ng V i Content Switching Server, ồ ố Ư ự ạ ớ
Firewall Và Cân B ng T i, NXB Th ng kê ả ằ ố
[6]. http://kenhgiaiphap.vn/Detail/969/Dong-bo-hoa-du-lieu-tren-2-Server-su-dung-
DFS-Replication.html
[7]. http://tailieu.vn/xem-tai-lieu/cong-nghe-can-bang-tai-server.442531.html
[8]. http://forum.thegioimaychu.vn/thu-thuat-tin-hoc/74355-ky-thuat-can-bang-tai-
mang.html
[9]. http://www.vnnic.vn/dns/congnghe/công-ngh -cân-b ng-t ệ ằ i ả
[10]. http://www.itnews.vn/he-dieu-hanh/hdh-windows/windows-server/xay-dung-
cau-truc-dfs
[11].http://www.congnghemaychu.vn/forum/forumdisplay.php?
s=40a3acc61573facfa9e2043efed07439&f=92
Tài li u ti ng Anh
ế
ệ
[12]. Paul Albitz, Cricket Liu, DNS and BIND, Fourth Edition, 2001
[13]. Tony Bourke, Server Load Balancing, O'Reilly & Associates
[14]. http://en.wikipedia.org/wiki/Load_balancing_(computing)
[15]. Tony Bourke, 2001, Server Load Balancing
[16]. Chandra Kopparapu, 2002, Load Balancing Servers, Firewalls, and Caches
[17]. Valeria Cardellini, Michele Colajani, Philip S. Yu, Dynamic Load Balancing on
67
Web Server Systems, 1999
68