Skip to main content

Installation de serveur web derriére le Haproxy

PRÉREQUIS:

  • Avoir 2 machine disonible pour installer les serveur web dessus.
    1. Installer le service nginx:
      apt update; apt upgrade; apt install nginx
Tester si le serveur est bien installé

Mes deux serveurs web on ces IPs 172.16.250.4 et 172.16.250.5

Se connecter sur un serveur disposant de la commande curl:
root@bastion-front-01:~/GIT/cours_bts# for i in {4..5}; do echo -e "####Je vais tester 172.16.250.${i}### \n";curl -IL http://172.16.250.$i ; done 
####Je vais tester 172.16.250.4### 

HTTP/1.1 200 OK
Server: nginx/1.22.1
Date: Thu, 21 Sep 2023 16:51:40 GMT
Content-Type: text/html
Content-Length: 615
Last-Modified: Thu, 21 Sep 2023 16:47:16 GMT
Connection: keep-alive
ETag: "650c7394-267"
Accept-Ranges: bytes

####Je vais tester 172.16.250.5### 

HTTP/1.1 200 OK
Server: nginx/1.22.1
Date: Thu, 21 Sep 2023 16:51:40 GMT
Content-Type: text/html
Content-Length: 615
Last-Modified: Thu, 21 Sep 2023 16:47:20 GMT
Connection: keep-alive
ETag: "650c7398-267"
Accept-Ranges: bytes

Les deux serveurs répondent bien

Modifier le fichier affiché par Nginx:
echo $HOSTNAME > /var/www/html/index.nginx-debian.html

On  refait la commande pour tester:

root@bastion-front-01:~/GIT/cours_bts# for i in {4..5}; do echo -e "####Je vais tester 172.16.250.${i}### \n";curl -L http://172.16.250.$i ; done 
####Je vais tester 172.16.250.4### 

web-front-01
####Je vais tester 172.16.250.5### 

web-front-02

Les deux serveurs répondent bien leurs Hostname(NOM)

Paramétrer le serveur haproxy pour qu'il renvoie vers les serveurs web
Ajouter les ligne suivante dans le fichier /etc/haproxy/haproxy.cfg
#L'ip que je veux mettre en avant
frontend http-external
    bind 172.16.250.3:80
    default_backend http

#Les IP vers lesquelles je veux renvoyer les requete
backend http
    balance roundrobin
    mode http
    option forwardfor
    option http-server-close
    server web-front-01 172.16.250.4:80 check
    server web-front-02 172.16.250.5:80 check
On Va tester le fichier de configuration
haproxy -c -f /etc/haproxy/haproxy.cfg

  1. Puis on va reload le service
    systemctl reload haproxy
Nous allons tester sir le haproxy prends bien en compte en regardant la page de stats

image.pngC'est OK on voit bien les deux serveurs

On va tester avec la commande curl
root@bastion-front-01:~/GIT/cours_bts# for i in {1..2}; do curl http://172.16.250.3; done 
web-front-01
web-front-02