Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Чӣ бояд кард, агар қудрати як сервер барои коркарди ҳама дархостҳо кофӣ набошад ва истеҳсолкунандаи нармафзор мувозинати сарбориро таъмин накунад? Имкониятҳои зиёде мавҷуданд, аз харидани баланси сарборӣ то маҳдуд кардани шумораи дархостҳо. Кадомаш дуруст аст, бояд вазъиятро бо назардошти шароити мавчуда муайян кард. Дар ин мақола мо ба шумо мегӯям, ки шумо чӣ кор карда метавонед, агар буҷаи шумо маҳдуд бошад ва сервери ройгон дошта бошед.

Ҳамчун системае, ки барои он кам кардани сарбории яке аз серверҳо лозим буд, мо аз InfoWatch DLP (системаи пешгирии ихроҷи иттилоот) -ро интихоб кардем. Хусусияти татбиқ ин ҷойгиркунии функсияи мувозинат дар яке аз серверҳои "ҷанговар" буд.

Яке аз мушкилоте, ки мо дучор шудем, ин имконнопазирии истифода аз Source NAT (SNAT) буд. Чаро ин лозим буд ва чӣ гуна мушкилот ҳал карда шуд, мо минбаъд шарҳ медиҳем.

Ҳамин тариқ, дар аввал диаграммаи мантиқии системаи мавҷуда чунин менамуд:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Трафики ICAP, SMTP, рӯйдодҳои компютерҳои корбар дар сервери Traffic Monitor (TM) коркард карда шуданд. Дар айни замон, сервери пойгоҳи додаҳо пас аз коркарди рӯйдодҳо дар ТМ бо осонӣ сарборӣ мекард, аммо бори худи ТМ вазнин буд. Ин аз пайдоиши навбати паёмҳо дар сервери Device Monitor (DM) ва инчунин аз CPU ва сарбории хотира дар ТМ маълум буд.

Дар назари аввал, агар мо ба ин схема сервери дигари ТМ илова кунем, он гоҳ ICAP ё DM-ро метавон ба он иваз кард, аммо мо тасмим гирифтем, ки ин усулро истифода набарем, зеро таҳаммулпазирии хатогиҳо коҳиш ёфт.

Тавсифи ҳалли

Дар ҷараёни ҷустуҷӯи ҳалли мувофиқ, мо ба нармафзори озод паҳншуда қарор гирифтем зинда монданд якҷоя бо LVS. Зеро keepalived мушкилоти эҷоди кластери нокомиро ҳал мекунад ва инчунин метавонад баланси LVS-ро идора кунад.

Он чизе ки мо мехостем ба даст оварем (кам кардани сарбории ТМ ва нигоҳ доштани сатҳи кунунии таҳаммулпазирии хатоҳо) бояд мувофиқи нақшаи зерин кор мекард:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Ҳангоми санҷиши функсия маълум шуд, ки маҷмӯаи фармоишии RedHat, ки дар серверҳо насб шудааст, SNAT-ро дастгирӣ намекунад. Дар ҳолати мо, мо нақша доштем, ки SNAT-ро истифода барем, то бастаҳои воридотӣ ва посухҳо ба онҳо аз як суроғаи IP фиристода шаванд, вагарна мо тасвири зеринро мегирем:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Ин ғайри қобили қабул аст. Масалан, сервери прокси, ки бастаҳоро ба суроғаи IP виртуалӣ (VIP) фиристодааст, посухи VIP-ро интизор мешавад, аммо дар ин ҳолат он аз IP2 барои сессияҳои ба нусха фиристодашуда меояд. Як роҳи ҳал ёфт шуд: зарур буд, ки ҷадвали дигари масирро дар нусхабардорӣ созед ва ду сервери ТМ-ро бо шабакаи алоҳида пайваст кунед, тавре ки дар зер нишон дода шудааст:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Танзимотҳо

Мо нақшаи ду серверро бо хидматҳои ICAP, SMTP, TCP 9100 ва дар яке аз онҳо тавозуни сарборӣ насб мекунем.

Мо ду сервери RHEL6 дорем, ки аз онҳо анборҳои стандартӣ ва баъзе бастаҳо хориҷ карда шудаанд.

Хидматҳое, ки мо бояд мувозинат кунем:

• ICAP – tcp 1344;

• SMTP – tcp 25.

Хидмати интиқоли трафик аз DM - tcp 9100.

Аввалан, мо бояд шабакаро ба нақша гирем.

Суроғаи IP виртуалӣ (VIP):

• IP: 10.20.20.105.

Сервер TM6_1:

• IP берунӣ: 10.20.20.101;

• IP-и дохилӣ: 192.168.1.101.

Сервер TM6_2:

• IP берунӣ: 10.20.20.102;

• IP-и дохилӣ: 192.168.1.102.

Сипас, мо интиқоли IP-ро дар ду сервери TM фаъол мекунем. Чӣ тавр ин корро кардан дар RedHat тавсиф шудааст дар ин ҷо.

Мо қарор медиҳем, ки кадоме аз серверҳое, ки мо дорем, сервери асосӣ ва кадоме аз серверҳои эҳтиётӣ хоҳад буд. Бигзор усто TM6_1 бошад, нусха TM6_2 бошад.

Ҳангоми нусхабардорӣ мо ҷадвали нави масир ва қоидаҳои масирро эҷод мекунем:

[root@tm6_2 ~]echo 101 balancer >> /etc/iproute2/rt_tables
[root@tm6_2 ~]ip rule add from 192.168.1.102 table balancer
[root@tm6_2 ~]ip route add default via 192.168.1.101 table balancer

Фармонҳои дар боло зикршуда то аз нав оғоз шудани система кор мекунанд. Барои боварӣ ҳосил кардани он, ки масирҳо пас аз бозоғозӣ нигоҳ дошта мешаванд, шумо метавонед онҳоро ворид кунед /etc/rc.d/rc.local, балки тавассути файли танзимот беҳтар аст /etc/sysconfig/network-scripts/route-eth1 (эзоҳ: дар ин ҷо синтаксиси гуногун истифода мешавад).

Keepalived -ро дар ҳарду серверҳои TM насб кунед. Мо ҳамчун манбаи паҳнкунӣ rpmfind.net-ро истифода мебарем:

[root@tm6_1 ~]#yum install https://rpmfind.net/linux/centos/6.10/os/x86_64/Packages/keepalived-1.2.13-5.el6_6.x86_64.rpm

Дар танзимоти нигоҳдорӣ, мо яке аз серверҳоро ҳамчун устод таъин мекунем, дигареро ҳамчун нусхабардорӣ. Сипас, мо VIP ва хидматҳоро барои мувозинати сарборӣ муқаррар кардем. Файли танзимот одатан дар ин ҷо ҷойгир аст: /etc/keepalived/keepalived.conf.

Танзимот барои сервери TM1

vrrp_sync_group VG1 { 
   group { 
      VI_1 
   } 
} 
vrrp_instance VI_1 { 
        state MASTER 
        interface eth0 

        lvs_sync_daemon_inteface eth0 
        virtual_router_id 51 
        priority 151 
        advert_int 1 
        authentication { 
                auth_type PASS 
                auth_pass example 
        } 

        virtual_ipaddress { 
                10.20.20.105 
        } 
}

virtual_server 10.20.20.105 1344 {
    delay_loop 6
    lb_algo wrr 
    lb_kind NAT
    protocol TCP

    real_server 192.168.1.101 1344 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 1344
        nb_get_retry 3
        delay_before_retry 3
        }
    }

    real_server 192.168.1.102 1344 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 1344
        nb_get_retry 3
        delay_before_retry 3
        }
    }
}

virtual_server 10.20.20.105 25 {
    delay_loop 6
    lb_algo wrr 
    lb_kind NAT
    protocol TCP

    real_server 192.168.1.101 25 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 25
        nb_get_retry 3
        delay_before_retry 3
        }
    }

    real_server 192.168.1.102 25 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 25
        nb_get_retry 3
        delay_before_retry 3
        }
    }
}

virtual_server 10.20.20.105 9100 {
    delay_loop 6
    lb_algo wrr 
    lb_kind NAT
    protocol TCP

    real_server 192.168.1.101 9100 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 9100
        nb_get_retry 3
        delay_before_retry 3
        }
    }

    real_server 192.168.1.102 9100 {
        weight 1
        TCP_CHECK { 
                connect_timeout 3 
            connect_port 9100
        nb_get_retry 3
        delay_before_retry 3
        }
    }
}

Танзимот барои сервери TM2

vrrp_sync_group VG1 { 
   group { 
      VI_1 
   } 
} 
vrrp_instance VI_1 { 
        state BACKUP 
        interface eth0 

        lvs_sync_daemon_inteface eth0 
        virtual_router_id 51 
        priority 100 
        advert_int 1 
        authentication { 
                auth_type PASS 
                auth_pass example 
        } 

        virtual_ipaddress { 
                10.20.20.105 
        } 
}

Мо LVS-ро дар усто насб мекунем, ки трафикро мувозинат мекунад. Барои сервери дуюм насб кардани мувозинат маъно надорад, зеро мо дар конфигуратсия ҳамагӣ ду сервер дорем.

[root@tm6_1 ~]##yum install https://rpmfind.net/linux/centos/6.10/os/x86_64/Packages/ipvsadm-1.26-4.el6.x86_64.rpm

Мувозинат аз ҷониби keepalived идора карда мешавад, ки мо онро аллакай танзим кардаем.

Барои ба итмом расонидани тасвир, биёед нигоҳдории автоматиро дар ҳарду сервер илова кунем:

[root@tm6_1 ~]#chkconfig keepalived on

хулоса

Санҷиши натиҷаҳо

Биёед keepalived-ро дар ҳарду сервер иҷро кунем:

service keepalived start

Санҷиши мавҷудияти суроғаи виртуалии VRRP

Биёед боварӣ ҳосил кунем, ки VIP дар усто аст:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Ва дар нусхаи эҳтиётӣ VIP вуҷуд надорад:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Бо истифода аз фармони ping, мо мавҷудияти VIP-ро тафтиш мекунем:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Акнун шумо метавонед устодро хомӯш кунед ва фармонро дубора иҷро кунед ping.

Натиҷа бояд бетағйир боқӣ монад ва ҳангоми нусхабардорӣ мо VIP-ро мебинем:

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Тафтиши мувозинати хидмат

Масалан, SMTP-ро гирем. Биёед ду пайвастро ба 10.20.20.105 ҳамзамон оғоз кунем:

telnet 10.20.20.105 25

Дар усто мо бояд бубинем, ки ҳарду пайвастшавӣ фаъоланд ва ба серверҳои гуногун пайвастанд:

[root@tm6_1 ~]#watch ipvsadm –Ln

Танзими мувозинати сарборӣ дар InfoWatch Traffic Monitor

Ҳамин тариқ, мо конфигуратсияи ба хатогиҳои хидматрасонии ТМ-ро тавассути насб кардани мувозинат дар яке аз серверҳои ТМ амалӣ кардем. Барои системаи мо, ин бори TM-ро ду баробар кам кард, ки ин имкон дод, ки бо истифода аз система масъалаи набудани миқёси уфуқӣ ҳал карда шавад.

Дар аксари мавридҳо, ин ҳалли зуд ва бе хароҷоти иловагӣ амалӣ карда мешавад, аммо баъзан дар конфигуратсия як қатор маҳдудиятҳо ва мушкилот вуҷуд доранд, масалан, ҳангоми мувозинати трафики UDP.

Манбаъ: will.com

Илова Эзоҳ