Bai Viet Tap Chi Cong Nghe

Embed Size (px)

Citation preview

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    1/6

    1

    Tn bi vit:

    SDNG GII PHP LOAD BALANCING GIM TI CHO MY CH CUNG

    CP DCH V

    ThS. Hong STng KS: Cao Minh Tun

    Hin nay, khi nhu cu truy cp mng

    bng n, cc my ch cung cp dch vang

    trnn qu ti. Vic la chn mt my ch

    n l c cu hnh cc mnh p ng nhu

    cu ny s ko theo chi ph u t rt ln.

    Gii php hiu quc a ra l s dng

    mt nhm my ch cng thc hin mt chc

    nng di s iu khin ca mt cng c

    phn phi ti - Gii php cn bng ti.

    C rt nhiu hng a ra gii php

    cn bng ti nh Cisco, Coyote Point, Sun

    Microsystems... vi rt nhiu tnh nng

    phong ph. Tuy nhin, v c bn, nguyn

    tc cn bng ti vn xut pht t nhng quan

    im k thut kh tng ng.

    Nh vy ta c th thy c rng

    hin nay c rt nhiu gii php cn bng ti

    khc nhau. Ty thuc vo tnh bo mt, gi

    thnh, chc nng chng ta yu cu m la

    chn dng phng php no, phn cng hay

    phn mm...Tuy nhin, c nhng gii php

    dng phn cng hoc dng phn mm li c

    gi thnh rt cao so vi quy m ca n v

    s dng.

    nh ngha cn bng tiLoad

    Banlancing

    Cn bng ti (Load Balancing) l

    mt k thut phn phi khi lng cngvic mt cch ng u trn hai hoc nhiu

    my tnh v cc vn lin kt mng, CPU,

    cng, hoc cc ngun lc khc, c th

    s dng ti nguyn mt cch ti u, ti a

    ho thng lng, gim thiu thi gian hot

    ng, v trnh tnh trng qu ti. S dng

    nhiu dch v vi cn bng ti, thay v mt

    dch v duy nht, c thlm tng tin cy

    thng qua cc my d phng.

    Trong , Network Load Balancing

    l mt k thut nhm mrng hiu nng ca

    cc my chng dng, chng hn nh Web

    server, nhphn phi cc yu cu ca client

    cho cc my ch trong nhm. Cc my

    ch u nhn gi IP n, nhng gi ch

    c x l bi mt my ch nht nh. Cc

    my ch trong nhm s ng thi p ng

    cc yu cu khc nhau ca cc my trm,

    cho d mt my trm c th a ra nhiu

    yu cu. Vi k thut cn bng ti, qu trnh

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    2/6

    2

    x l v thi gian p ng my trm s

    nhanh hn nhiu.

    Chc nng ca cn bng ti

    Mt cn bng tiLoad balancer c

    nhng chc nng sau:

    Chn lu lng mng (chng hn lulng web) n 1 trang web. Bn thn

    thit b cn bng ti c th l mt Proxy,

    mt Firewall tng ng dng (

    Application Layer), n s l i tng

    u tin nhn cc yu cu trc khi chia

    ti, do , chc nng ny c coi nh

    mt chc nng thit yu ca mt cnbng ti.

    Tch cc lu lng thnh cc yu curing bit v quyt nh my ch no

    nhn cc yu cu . y l chc nng

    ch cht ca cn bng ti. Ty vo thut

    ton p dng m s c tng cch phn

    chia c th cho mi my.

    Duy tr mt c ch nhng my chang sn sng, chc chc rng chng

    ang p ng cc yu cu. Gia cn

    bng ti v my ch lun phi c lin lc

    vi nhau ( Keep Alive) bit c my

    ch cn sng hay khng.

    Cung cp khnng d phng bng cchs dng nhiu hn mt kch bn fail-

    over.

    Cung cp kh nng nhn thc ni dungphn tn bng cch c URL, chn

    cookies, v bin dch XML. y c coi

    nh l mt trong nhng tiu ch chia ti

    ca h thng.

    u im ca cn bng ti trong ng dng

    thc t

    Flexibility: Tnh linh hot cao. H

    thng cho php b sung v loi b cc my

    ch bt k lc no, v hiu qu l ngay lp

    tc. Thc t vic ny khng lm nh hng

    gin on ti hot ng ca c h thng, m

    ch l mt node trong h thng . iu ny

    cho php duy tr, sa cha bt k my

    no, thm ch trong gi cao im vi tc

    ng t hoc khng c tc ng no ti hthng. Mt cn bng ti (Load Balancer)

    cng c th trc tip iu khin lu lng

    mng bng cch s dng tp tin cookie,

    phn tch c php URL, cc thut ton tnh

    v ng, v nhiu hn na, tm ra cch

    phn ti ti u cho h thng.

    High availability: Tnh sn sng cao.

    H thng s lin tc kim tra trng thi

    (status) ca cc my ch trong h thng, t

    ng loi bt k my ch no khng c tr

    li v trong mt chu k, cng nh tng

    thm my ch ngay khi hot ng trli.

    iu ny l hon ton tng, thng qua c

    ch giao tip ca cn bng ti v cc server,

    khng cn c s tham gia iu khin trc

    tip ca ngi qun tr (Administrator). Do

    d, mt h thng cn bng ti hng n

    tnh d tha, d phng cho thit b chnh

    trong trng hp c thit bno bfail.

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    3/6

    3

    Scalability: Kh nng m rng cao.

    Cn bng ti chu trch nhim phn phi ti

    ti nhiu ny server trong mt h thng

    (Server Farm theo mt vt l, v c gi l

    Server Clusercc b Server), vi mc ch

    l nng cao hiu qu, tng sc mnh phc v

    vi s lng ln cc my ch. iu ny

    mang li li ch to ln v kinh t, v ch mt

    chi ph cho nhiu my ch nh, thay v u

    t cho mt my ch ln, thit b chuyn

    dng. Ngoi ra, trong qu trnh hat ng,

    cc my ch c th thay i, thm bt, loi

    b, thay th mt cch d dng khng nhhng n hot ng ca h thng, gi cho

    h thng lunHigh availability.

    Cc thut ton Load Balancing

    Hin nay, thut ton c s dng

    ph bin l thut ton Weighted Round

    Robin (WRR). Thut ton ny iu phi cc

    real server cng lun phin ging Round-

    Robin nhng n cn kt hp vo khnng

    x l ca tng my server (Round -

    Robin xem nh khnng x l tt c server

    bng nhau). Mi server c nh gi

    bng mt s integer (gi tr Weight) ch ra

    kh nng x l ca n. Mc nh gi

    tr Weight bng 1. V d ,

    cc realserver A, B, C c weight ln lt

    l 4, 3, 2 v th tiu phi cc yu cu

    AABABCABC, n lun phin trong chu k

    (mod sum(Wi)). Th t chn real server

    phc v da vo s Weight ca server.

    Trong WRR, cc realserver c gi

    tr weight cao s nhn c kt ni mi

    u tin v nhn nhiu kt ni hn server c

    weight thp, servers c gi tr weight bng

    nhau s nhn s phn ti cc kt ni mi

    bng nhau.

    Ngoi thut ton Weighted Round Robin cn

    mt s thut ton sau:

    Round Robin. Least Connection Weighted Least Connection

    Cc k thut sdng trong cn bng ti

    K thut c s dng ph bin lk thut Linux Virtual Server - Network

    Address Translation ( NAT ).

    Kin trc LVS-NAT c m tnh hnh

    sau:

    Hot ng ca LVS-NAT nh sau:

    khi 1 user truy cp vo virtual service c

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    4/6

    4

    cung cp bi cluster server, mt

    request packet c gi n virtual IP

    address (IP chp nhn yu cu cho Virtual

    service) n Load balancer.

    Load balancer xc nh a chch v port

    number ca packet nu n hp l vi virtual

    service c cung cp bi cc virtual server

    da vo bng rule table. Mt real server s

    c chn phc v bng cc thut ton

    Load balancing , thng tin v kt ni ny

    c lu vo bng hash table ghi nhn

    kt ni. Tip theo , a ch ch v port

    number ca packet c ghili cho ph hp vi server c chn

    v packet c chuyn tip n

    server. Khi m cc packet tip theo ca

    kt ni c thit lp trc (kt ni

    ny c tm thy trong bng hash table) v

    cc packet ny sc ghi v chuyn n

    cng server phc vn trc .

    Ngoi thut ton LVS-NAT cn mt s

    thut ton nh sau:

    DNS (Domain Name Service) chnh tng server cho mi nhm ngi

    dng c xc nh trc.

    K thut chia tigim sngi dngcho mi my ch (Reducing the number

    of users per server).

    Linux Virtual Server - Tunnelling (TUN ).

    Linux Virtual Server - Direct Routing.

    Xy dng m hnh chia ti (Load

    Balancing), chuyn i d phng (fail-

    over), ng b d liu cc my ch ng

    dng s dng k thut LVS (Linux

    Virtual Server)

    a, xut gii php

    Tit kim chi ph, h thng khng cnqu u t cho nhn thit b qu chuyn

    dng m c th tn dng nhng my

    chang s dng ri chia ti ra.

    m bo hiu sut ca h thng. Victng thm cc my ch (nodes) s lm

    tng kh nng x l, cng nh chngchu li, cc cuc tn cng t chi dch

    v (DoS, DDoS)

    Khnng mrng cao, d dng thay thv b sung cc nodes trong mng m

    khng lm nh hng n hot ng

    ca h thng. Vi chc nng chia ti l

    chnh, khi mt nodes gp s c d liu

    s chuyn ti sang nodes khc.

    b, M hnh trin khai:

    - Gii thiu v m hnh:

    Load Balancer 1 - Master (Ldirector 1):Sc cu hnh iu phi cc yu

    cu t bn ngoi ti cc my ch thc

    bn trong. My hot ng ch

    Active.

    Load Balancer 2 - Backup (Ldirector 2):My ny sc cu hnh tng tnh

    my 1 nhng trng thi ch (Stand-

    by). Khi my 1 gp s c th my 2 s

    thay th vai tr ca my 1.

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    5/6

    5

    Real Server: My ch ch ni dungdch v Website.

    K thut s dng: Linux virtual ServerDirect Routing.

    Thut ton s dng: Weighted RoundRobin: Thut ton ny iu phi cc

    Real Server lun phin da vo kh

    nng x l ca tng my. Thun li

    vic thay th nng cp my ch, gim

    chi ph khi mun nng cp.

    Master v Backup s dng tn hiuHeartbeat trao i vi nhau, nu

    Master c s c th Backup s thay th

    vai tr ca Master. Khi Master x l

    xong s c th Backup snhng li vai

    tr cho Master.

    Master dng Ldirector gim st ccReal Server. Nu mt trong cc Real

    Server gp s c th Master ch chia

    request cho cc Real Server cn li. Khi

    Real Server b s c c khc phc

    xong Master li tip tc chia request

    cho Real Server .

    M hnh Load Balancing LVSDirect Routing

  • 7/30/2019 Bai Viet Tap Chi Cong Nghe

    6/6

    6

    Kt lun:

    Bi vit ny gii thiu tng quan

    v Load Balancing v cc thut ton, chc

    nng, u im v mt s k thut trong

    Load Balancing. a ra m hnh trin khai

    Load Balancing vi k thut LVS Direct

    Routing lm mnh ha.

    Ti liu tham kho:

    [1] Sch in t: Load Balancing Servers Firewalls and Caches.

    Tc gi: Chandra Kopparapu

    [2] Bi vit: Load Balancer Topologies.

    Tc gi: Jay Dobbs

    [3] Sch in t: Linux Virtual Server Administration.

    (Red Hat Enterprise Linux)

    [4] Sch in t: Windows Server 2003 Clustering & Load balancing

    Tc gi: Robert J. Shimonski

    [5] Bi vit: Microsoft Network Load Balancing Technical Overview

    [6] Sch in t: Network Load Balancing

    Tc gi: Jonathan Held