Configureer een Proxy HA op Cloudstack

Uit Nl Ikoula wiki
Versie door Ikbot (overleg | bijdragen) op 18 nov 2015 om 15:29
Jump to navigation Jump to search

ar:تكوين وكيل هكتار في كلودستاك zh:配置一个代理医管局对 Cloudstack de:Konfigurieren Sie einen Proxy HA auf Cloudstack it:Configurare un Proxy HA Cloudstack pt:Configurar um Proxy HA em Cloudstack es:Configurar a un Proxy HA de Cloudstack en:Configure a Proxy HA on Cloudstack fr:Configurer un HA Proxy sur Cloudstack

Dit artikel is vertaald door middel van automatische vertalingssoftware. U kunt het artikel bron hier te bekijken.

Introductie

U wilt configureren een HA Proxy op hen Clof dstack platform. Dit artikel zal uitleggen de aanpak via een voorbeeld configuratie.

Uitvoering

Hier is de procedure te volgen om uitvoering van een HA Proxy op een Debian exemplaar 8 "Jessie " onder Clof dstack.
Opmerking :Deze aanpak geldt ook in hen kader van een specifieke bepaling .

Maken van het nieuwe exemplaar HAProxy

Vindt u de procedures voor het maken van een instance Clof dstack nl direct-routering op fr:Deploiement d'une instance en zone direct-routing en in voorschot-routering op fr:Deploiement d'une instance en zone advanced-routing

Het nieuwe exemplaar HAProxy configureren

Onze VM wordt nu gestart

InfoVM.png

We kunnen verbinden vanuit de geïntegreerde console of ssh

ConnectVM.png

Vereisten

Een van de essentiële voorwaarde is voor het behoud van zijn systeem zo up-to-date mogelijk.

 apt-get update
 apt-get upgrade 

Uw Debian systeem up-to-date houden, zorg ervoor dat u een lijst van de officiële repositories. U kunt een lijst van de beschikbare op Ikoula repositories in installatie-instructies vinden a dit adres.

Waarschuwing : Voordat u wijzigingen aanbrengt op uw systeem zijn nog steeds van plan een back-up uw bestanden in het geval van ongepaste behandeling.
Op een Server productie, denken deze bewerkingen uitvoeren na kantooruren om te minimaliseren van de gevolgen van uw acties.

Voor de installatie van onze exemplaar van Loadbalancing onder Cloudstack we service nodig HA Proxy.

HA Proxy Setup

HA Proxy versie te installeren 1.5, voert u de volgende opdracht in uw terminal
 apt-get install haproxy 
Als u wilt dat de nieuwste versie van HA Proxy version 1.6, voert u de volgende opdrachten
# Ajout du repo
echo deb http://httpredir.debian.org/debian jessie-backports main | tee /etc/apt/sources.list.d/backports.list
apt-get install debian-keyring
# Recuperation de la cle gpg
gpg --keyring /usr/share/keyrings/debian-keyring.gpg --export bernat@debian.org |  apt-key add -
# Mise a jour des depots
apt-get update
# Installation de haproxy
apt-get install haproxy -t jessie-backports-1.6

HA Proxy activering

HA Proxy is nu geïnstalleerd, we nu weer inschakelen door het wijzigen van de waarde ingeschakeld =0 door ingeschakeld =1 in beide bestanden /etc/default/haproxy et /etc/init.d/haproxy
# activation de HA Proxy dans /etc/default/haproxy
sed -i "s/ENABLED=0/ENABLED=1/g" /etc/default/haproxy
# activation de HA Proxy dans /etc/init.d/haproxy
sed -i "s/ENABLED=0/ENABLED=1/g" /etc/init.d/haproxy

HA proxyconfiguratie

HA proxyconfiguratie wordt uitgevoerd in het bestand /etc/haproxy/haproxy.cfg .

Hier is een voorbeeld van configuratie d 'HAProxy
global
        log /dev/log    local0
        log /dev/log    local1 notice
        chroot /var/lib/haproxy
        user haproxy
        group haproxy
        daemon
 
defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        contimeout 5000
        clitimeout 50000
        srvtimeout 50000
        errorfile 400 /etc/haproxy/errors/400.http
        errorfile 403 /etc/haproxy/errors/403.http
        errorfile 408 /etc/haproxy/errors/408.http
        errorfile 500 /etc/haproxy/errors/500.http
        errorfile 502 /etc/haproxy/errors/502.http
        errorfile 503 /etc/haproxy/errors/503.http
        errorfile 504 /etc/haproxy/errors/504.http
 
listen cluster_web xxx.xxx.xxx.xxx:80

        mode http

        balance roundrobin
 

        option httpclose
        option forwardfor
 

        server web1 yyy.yyy.yyy.yyy:80 check
        server web2 zzz.zzz.zzz.zzz:80 check
 

        stats enable
        stats hide-version
        stats refresh 30s
        stats show-node
        stats auth ikoula:ikoula
        stats uri  /stats

De xxx.xxx.xxx.xxx IP-adres is het IP-adres van onze Server taakverdeling, yyy.yyy.yyy.yyy en zzz.zzz.zzz.zzz adressen zijn onze ServerWeb s achter de LoadBalancer .

listen cluster_web Het adres en de poort waarop de service HA Proxy moet luisteren naar verbindingen.
mode De swing-bedrijf, in ons voorbeeld http voor web
balance Het algoritme wordt gebruikt voor de verdeling van de belasting, in ons voorbeeld RoundRobin
De beschikbare waarden zijn : RoundRobin, bron, ten minste verbinding, eerste reactie
server Verklaring van de verschillende servers achter onze LoadBalancer , in ons voorbeeld web1 et web2.
stats Voor het configureren van de toegang tot de statistiekenpagina van LoadBalancer
In ons voorbeeld zullen de pagina toegankelijk op xxx.xxx.xxx.xxx /statistieken met ikoula/ikoula zoals login en wachtwoord

HA Proxy starten

We kunnen nu beginnen HA Proxy
 service haproxy start 

ou

 etc/init.d/haproxy start 
Maken van ons op onze xxx.xxx.xxx.xxx ip /statistieken en bij het gebruik van onze login en wachtwoord we op de beheerpagina HA Proxy komen.

HAProxyStats.png

We kunnen nu verbinding maken met onze Servers en SSH typen
# Serveur web1
ssh root@yyy.yyy.yyy.yyy
# Serveur web2
ssh root@zzz.zzz.zzz.zzz

Configureer de ServerWeb s

Als de Servers nog geen webservice het wordt geïnstalleerd, bijvoorbeeld
 apt-get install apache2 php5 
Zodra de webservices geïnstalleerd, of als de Server al had één web 1 en web 2 weergegeven in het groen in de statistiekenpagina

HAProxyStat2.png

Als u toegang wilt tot de Server met behulp van de xxx.xxx.xxx van de adres je op de testpagina valt de Server web1 of web 2 Volgens de toewijzing gedaan

HAProxSite.png

Configureren van persistentie

De persistentie door bron IP

Om te configureren persistentie door bron IP adres gewoon verandering de swing-bedrijf in de HA Proxy configuratiebestand door opties toe te voegen Kleverige .

Inschakelen van persistentie door bron IP via een stok-tabel , hier is het voorbeeld met onze configuratie
listen cluster_web xxx.xxx.xxx.xxx:80

        mode http

       # Modifier le mode de balancement
       balance source
       hash-type consistent

       # Ajouter une stick-table afin de garder en mémoire les IP
       stick-table type ip size 1m expire 1h
       stick on src

        option httpclose
        option forwardfor

        server web1 yyy.yyy.yyy.yyy:80 check
        server web2 zzz.zzz.zzz.zzz:80 check

        stats enable
        stats hide-version
        stats refresh 30s
        stats show-node
        stats auth utilisateur:motdepasse
        stats uri  /stats

In het bovenstaande voorbeeld kan om een persistentie van load balancing gebaseerd op van de gebruiker IP. Deze volharding wordt gewaarborgd door een stok-tabel Wie herinnert zich nog de IPS die hebben contact opgenomen met de Server.
Dit stick-table heeft een grootte van 1MB en elk uur afloopt. Wanneer een gebruiker is aangesloten op een Server Het blijft op dit dezelfde Server tot het verstrijken van de tabel of in het geval van fout Server.

Opmerking : Het geheugen dat nodig is voor de stick-table is relatief laag, in het bereik van 25.000 adressen voor 1MB. Beide 40MB voor 1.000.000 van IP-adressen.

Door Cookie persistentie

Een andere methode om ervoor te zorgen het voortbestaan van de achtervork is het gebruik van een cookie. Een cookie is een klein bestand geplaatst op de computer van de gebruiker om te slaan informatie van Server.

Methode van cookie-invoegen

Het eerste voorbeeld is de oprichting van een speciaal ontworpen extra cookie HA Proxy.

Bewerk het HA Proxy configuratiebestand en voeg de volgende regels toe aan onze configuratie
listen cluster_web xxx.xxx.xxx.xxx:80

        mode http

        # Modifier le mode de balancement
        balance roundrobin

        # option du cookie
        cookie SRVNAME insert indirect nocache

        option httpclose
        option forwardfor

        server web1 yyy.yyy.yyy.yyy:80 cookie WeB1 check
        server web2 zzz.zzz.zzz.zzz:80 cookie WeB2 check

        stats enable
        stats hide-version
        stats refresh 30s
        stats show-node
        stats auth utilisateur:motdepasse
        stats uri  /stats

Het bovenstaande voorbeeld kan om onze sessies door een speciale cookie persistentie. Wanneer u verbinding maakt de laden - balancer de client wordt omgeleid naar een van de twee Servers en een cookie met de naam toevoegen SRVNAME met de waarde WeB1 ou WeB2 na de verdeling gemaakt.
De optie indirect de generatie van een cookie, kan niet als een ander geldig cookie al aanwezig voor de bezoeker is en NoCache voorkomt caching van de cookie tussen de bezoeker en de laden - balancer .
HACookieInsert.png

Methode cookie-prefix

In het tweede voorbeeld is de pre-fixage van een reeds bestaande cookie, deze methode kan nuttig zijn als u persistentie alleen op sommige cookies wilt of die u niet wilt maken van een speciale cookie HA Proxy.

Bewerk het HA Proxy configuratiebestand en voeg de volgende regels toe aan onze configuratie
listen cluster_web xxx.xxx.xxx.xxx:80

        mode http

        # Modifier le mode de balancement
        balance roundrobin

        # option du cookie
        cookie PHPSESSID prefix indirect nocache

        option httpclose
        option forwardfor

        server web1 yyy.yyy.yyy.yyy:80 cookie WeB1 check
        server web2 zzz.zzz.zzz.zzz:80 cookie WeB2 check

        stats enable
        stats hide-version
        stats refresh 30s
        stats show-node
        stats auth utilisateur:motdepasse
        stats uri  /stats

Het bovenstaande voorbeeld kan het voortbestaan van onze sessies via een voorvoegsel dat je wil een bestaande cookie instellen. Wanneer u verbinding maakt de laden - balancer de client wordt omgeleid naar een van de twee Servers en een voorvoegsel toevoegen aan de benoemde cookie PHPSESSID met de waarde WeB1 ou WeB2 na de verdeling gemaakt.
De optie indirect de generatie van een cookie, kan niet als een ander geldig cookie al aanwezig voor de bezoeker is en nocache voorkomt caching van de cookie tussen de bezoeker en de laden - balancer .
HACookiePrefix.png

Configureer de Keep-Alive

Afhankelijk van uw configuratie moet u wellicht te activeren de keepalive .
De keepalive maakt het mogelijk om de laden - balancer hergebruik van de bestaande verbinding tussen de Server en de gebruiker, eerder dan begin een nieuwe verbinding voor elke verzoeken.

Bewerk het HA Proxy configuratiebestand en voeg de volgende regels toe aan onze configuratie
listen cluster_web xxx.xxx.xxx.xxx:80

        mode http

        balance roundrobin

        # Modifier la directive de fermeture
        option http-server-close
        # Ajouter un delai de 3000 secondes avant fermeture
        timeout http-keep-alive 3000

        option forwardfor

        server web1 yyy.yyy.yyy.yyy:80 check
        server web2 zzz.zzz.zzz.zzz:80 check

        stats enable
        stats hide-version
        stats refresh 30s
        stats show-node
        stats auth utilisateur:motdepasse
        stats uri  /stats

Implementeren van SSL beheer

Het kan zinvol zijn om in te stellen van de SSL-omleiding uw Sitebeheer, bijvoorbeeld in het geval van een site die ruimte veilig is.
Oog op de uitvoering van de HTTP-omleiding -> HTTPS op zijn HA Proxy documentatie is beschikbaar: fr: Mettre en place une redirection SSL HA Proxy



U mag niet reageren.