Is e aon de na prĂŹomh ghnĂŹomhan nuair a thathar aâ togail bun-structaran Zimbra OSE air sgèile mhòr cothromachadh luchdan ceart. A bharrachd air an fhĂŹrinn gu bheil e a 'meudachadh fulangas sgĂ inidhean na seirbheis, gun a bhith a' cothromachadh luchdan tha e do-dhèanta dèanamh cinnteach gu bheil an aon fhreagairt aig an t-seirbheis airson a h-uile neach-cleachdaidh. Gus an duilgheadas seo fhuasgladh, thathas aâ cleachdadh luchd-cothromachaidh luchdan - fuasglaidhean bathar-bog is bathar-cruaidh a bhios ag ath-riarachadh iarrtasan eadar frithealaichean. Nam measg tha feadhainn gu math prĂŹomhadail, leithid RoundRobin, a bhios dĂŹreach aâ cur gach iarrtas Ă s deidh sin chun ath fhrithealaiche air an liosta, agus tha feadhainn nas adhartaiche ann cuideachd, mar eisimpleir HAProxy, a tha air a chleachdadh gu farsaing ann am bun-structaran coimpiutaireachd lĂ n luchd air sgĂ th a Ă ireamh de bhuannachdan cudromach. Bheir sinn sĂšil air mar as urrainn dhut toirt air an HAProxy load balancer agus Zimbra OSE obrachadh còmhla.

Mar sin, a rèir aithris na trioblaid, tha bun-structar Zimbra OSE againn, anns a bheil dĂ Zimbra Proxies, dĂ fhrithealaiche LDAP, leth-bhreac LDAP, ceithir stòran bogsa-puist le 1000 bogsa-puist gach fear, agus trĂŹ MTAn. Aâ beachdachadh gu bheil sinn aâ dèiligeadh ri frithealaiche puist, gheibh e trĂŹ seòrsaichean trafaic a dhâ fheumas cothromachadh: HTTP airson an neach-dèiligidh lĂŹn a luchdachadh, a bharrachd air POP agus SMTP airson post-d a chuir air adhart. Thèid trafaic HTTP a chuir gu frithealaichean Proxy Zimbra le seòlaidhean IP 192.168.0.57 agus 192.168.0.58, agus thèid trafaic SMTP gu frithealaichean MTA le seòlaidhean IP 192.168.0.77 agus 192.168.0.78.
Mar a chaidh a rĂ dh roimhe, gus dèanamh cinnteach gu bheil iarrtasan air an sgaoileadh gu cothromach eadar frithealaichean, cleachdaidh sinn cothromachadh luchdan HAProxy, a ruitheas air nĂłd inntrigidh bun-structair Zimbra a tha aâ ruith Ubuntu 18.04. Thèid haproxy a stĂ ladh san t-siostam obrachaidh seo a dhèanamh leis an Ă ithne sudo apt-faigh stĂ ladh haproxy. Ăs deidh seo feumaidh tu san fhaidhle /etc/default/haproxy atharraich paramadair CUMHACHD=0 air CUMHACHD=1. A-nis, gus dèanamh cinnteach gu bheil haproxy ag obair, dĂŹreach cuir a-steach an Ă ithne haproxy seirbheis. Ma tha an t-seirbheis seo aâ ruith, bidh seo soilleir bho thoradh na h-Ă ithne.
Is e aon de na prĂŹomh eas-bhuannachdan a tha aig HAProxy nach eil e aâ sgaoileadh seòladh IP an neach-dèiligidh a tha aâ ceangal gu bunaiteach, ga chur na Ă ite leis an t-seòladh aige fhèin. Faodaidh seo leantainn gu suidheachaidhean far nach gabh puist-d a chuireas luchd-ionnsaigh aithneachadh le⌠Seòladh IPgus a chur ris an liosta dhubh. Ach, faodar an duilgheadas seo fhuasgladh. Gus seo a dhèanamh, feumaidh tu am faidhle a dheasachadh /opt/zimbra/common/conf/master.cf.in air frithealaichean le Postfix agus cuir na loidhnichean a leanas ris:
26 inet n - n - 1 postscreen
-o postscreen_upstream_proxy_protocol=haproxy
466 inet n - n - - smtpd
%%uncomment SERVICE:opendkim%% -o content_filter=scan:[%%zimbraLocalBindAddress%%]:10030
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=
-o smtpd_data_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_recipient_restrictions=
-o smtpd_relay_restrictions=permit_sasl_authenticated,reject
-o syslog_name=postfix/smtps
-o milter_macro_daemon_name=ORIGINATING
-o smtpd_upstream_proxy_protocol=haproxy
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_filter=[%%zimbraLocalBindAddress%%]:10027
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_options=speed_adjust
588 inet n - n - - smtpd
%%uncomment SERVICE:opendkim%% -o content_filter=scan:[%%zimbraLocalBindAddress%%]:10030
-o smtpd_etrn_restrictions=reject
-o smtpd_sasl_auth_enable=%%zimbraMtaSaslAuthEnable%%
-o smtpd_tls_security_level=%%zimbraMtaTlsSecurityLevel%%
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o smtpd_data_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_recipient_restrictions=
-o smtpd_relay_restrictions=permit_sasl_authenticated,reject
-o syslog_name=postfix/submission
-o milter_macro_daemon_name=ORIGINATING
-o smtpd_upstream_proxy_protocol=haproxy
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_filter=[%%zimbraLocalBindAddress%%]:10027
%%uncomment LOCAL:postjournal_enabled%% -o smtpd_proxy_options=speed_adjustAir sgĂ th seo, fosglaidh sinn puirt 26, 466 agus 588, a gheibh trafaic a-steach bho HAProxy. Ăs deidh na faidhlichean a bhith air an sĂ bhaladh, bu chòir dhut Postfix ath-thòiseachadh air a h-uile frithealaiche a âcleachdadh an Ă ithne ath-thòisich zmmtactl.
Ăs deidh sin, tòisichidh sinn aâ stèidheachadh HAProxy. Gus seo a dhèanamh, an toiseach cruthaich leth-bhreac cĂšl-taic den fhaidhle roghainnean cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak. An uairsin fosgail am faidhle tĂšsail ann an deasaiche teacsa /etc/haproxy/haproxy.cfg agus tòisich aâ cur na roghainnean riatanach ris ceum air cheum. Bidh aâ chiad bhloca aâ cur ris frithealaiche a bhios aâ gabhail logaichean, aâ suidheachadh an Ă ireamh as motha de cheanglaichean aig an aon Ă m a tha ceadaichte, a bharrachd air a bhith aâ sònrachadh ainm agus buidheann an neach-cleachdaidh dham buin am pròiseas cur an gnĂŹomh.
global
user daemon
group daemon
daemon
log 127.0.0.1 daemon
maxconn 5000
chroot /var/lib/haproxyNochd am figear de 5000 ceangal aig an aon Ă m airson adhbhar. Leis gu bheil 4000 bogsa puist againn nar bun-structar, feumaidh sinn beachdachadh air aâ chomas gum faigh iad uile cothrom air aâ phost-d obrach aca aig an aon Ă m. A bharrachd air an sin, feumar tèarmann beag fhĂ gail gun fhios nach èirich an Ă ireamh aca.
A-nis leig dhuinn bloc a chuir ris le roghainnean bunaiteach:
defaults
timeout client 1m
log global
mode tcp
timeout server 1m
timeout connect 5sBidh am bloc seo aâ suidheachadh an Ăšine as Ă irde airson an neach-dèiligidh agus an frithealaiche an ceangal a dhĂšnadh nuair a thig e gu crĂŹch, agus bidh e cuideachd aâ suidheachadh modh obrachaidh HAProxy. Anns a âchĂšis againn, bidh an cothromachadh luchdan ag obair ann am modh TCP, is e sin, bidh e dĂŹreach aâ sgaoileadh pacaidean TCP gun a bhith a âdèanamh anailis air na tha annta.
An uairsin cuiridh sinn riaghailtean airson ceanglaichean air diofar phuirt. Mar eisimpleir, ma thèid port 25 a chleachdadh airson ceanglaichean SMTP agus post, tha e ciallach ceanglaichean a chuir air adhart gu na MTAn a tha rim faighinn sa bhun-structar againn. Ma tha an ceangal air port 80, is e seo iarrtas http a dhâ fheumar a chuir air adhart gu Zimbra Proxy.
Riaghailt airson port 25:
frontend smtp-25
bind *:27
default_backend backend-smtp-25
backend backend-smtp-25
server mta1 192.168.0.77:26 send-proxy
server mta2 192.168.0.78:26 send-proxyRiaghailt airson port 465:
frontend smtp-465
bind *:467
default_backend backend-smtp-465
backend backend-smtp-465
server mta1 192.168.0.77:466 send-proxy
server mta2 192.168.0.78:466 send-proxyRiaghailt airson port 587:
frontend smtp-587
bind *:589
default_backend backend-smtp-587
backend backend-smtp-587
server mail1 192.168.0.77:588 send-proxy
server mail2 192.168.0.78:588 send-proxyRiaghailt airson port 80:
frontend http-80
bind *:80
default_backend http-80
backend http-80
mode tcp
server zproxy1 192.168.0.57:80 check
server zproxy2 192.168.0.58:80 checkRiaghailt airson port 443:
frontend https
bind *:443
default_backend https-443
backend https-443
mode tcp
server zproxy1 192.168.0.57:80 check
server zproxy2 192.168.0.58:80 checkThoir an aire, anns na riaghailtean airson pacaidean TCP a chuir air adhart chun MTA, ri taobh an seòlaidhean gu bheil paramadair ann send-proxy. Tha seo riatanach gus, a rèir nan atharrachaidhean a rinn sinn na bu thrà ithe air na roghainnean Postfix, gun tèid seòladh IP tÚsail an neach a chuir e a chuir còmhla ri pacaidean TCP.
A-nis gu bheil na h-atharrachaidhean riatanach uile air an dèanamh gu HAProxy, faodaidh tu an t-seirbheis ath-thòiseachadh leis an à ithne ath-thòiseachadh seirbheis haproxy agus tòisich ga chleachdadh.
Airson a h-uile ceist co-cheangailte ri Zextras Suite, faodaidh tu fios a chuir gu Riochdaire Zextras Ekaterina Triandafilidi air post-d katerina@zextras.com
Source: www.habr.com
