GNU/Linux >> Tutoriels Linux >  >> FreeBSD

Comment installer HAProxy sur FreeBSD

HAProxy, comme son nom l'indique, est un serveur proxy et un équilibreur de charge pour fournir une haute disponibilité. Dans cet article, je vais d'abord montrer comment installer HAProxy dans FreeBSD. Ensuite, nous allons configurer pour agir en tant que proxy inverse.

L'installation

Sous FreeBSD, j'aime construire et installer mon logiciel à partir de l'arborescence des ports, donc exécutez-le en tant que root :

# cd /usr/ports/net/haproxy
# make install clean

Faites attention à l'écran si certaines options de dialogue apparaissent (principalement à partir de dépendances). Activez HAProxy dans /etc/rc.conf une fois installé et passez à la section suivante :

# /usr/local/etc/rc.d/haproxy enable
haproxy enabled in /etc/rc.conf

La configuration

Avant de procéder à la modification du fichier de configuration, laissez-moi vous expliquer un scénario :

Tout d'abord, nous n'avons qu'une seule adresse IP publique disponible. Deuxièmement, nous avons quelques services que nous voulons exposer sur Internet, disons une application (webapp) et notre site Web. Les deux fonctionnent sur leurs propres serveurs. Enfin, nous avons un troisième serveur de secours sur lequel nous avons déjà installé HAProxy dans la section précédente et ce sera celui exposé sur Internet.

Un utilisateur pointera son navigateur vers http://haproxy/website ou http://haproxy/app et haproxy enverra la requête au bon serveur et renverra les résultats au navigateur.

                                      ________         /------- [server A]
[ client browser] ----->   | haproxy  |-----+
                                    +----------+        \--------[server B]

Quoi qu'il en soit, wikipedia explique mieux comment fonctionne un proxy inverse.

Ajoutez les sections suivantes à /usr/local/etc/haproxy.conf. Pour commencer, les valeurs globales par défaut conviennent :

frontend http-in
    bind *:80
    option forwardfor
    use_backend uno if { path_beg /app}
    use_backend dos if { path_beg /www }

backend uno
    mode http
    server nodea ipAp.or.fqdn:port

backend dos
       mode http
       server nodeb ipB.or.fqdn:port

Si vous, comme moi, n'avez pas d'exemple haproxy.conf, ajoutez cette section en haut du fichier :

global
    daemon
    maxconn 4096

defaults
   log global
   mode http
   timeout connect 5s
   timeout client 10s
   timeout server 10s

Avec cette configuration minimale, vous pouvez vérifier si tout va bien et démarrer le service :

À des fins de test, j'ai créé haproxy pour obtenir des éléments de mon propre ordinateur :


J'ai un Apache où je stocke certains programmes dont je pourrais avoir besoin lorsque je suis sur le PC de quelqu'un d'autre. Le mot magique est l'URL complète de certains de ces programmes.

Qu'en est-il du vrai utiliser HAProxy ?

Ceci est un exemple minimal, pas très utile d'ailleurs. Je recommande fortement de lire au moins deux documents de HAProxy :

  • Guide de démarrage et
  • Manuel de configuration

Et votre haproxy.conf le fichier serait aussi compliqué ou simple que nécessaire.


FreeBSD
  1. Comment installer HAProxy sur Debian 11

  2. Comment installer Gitlab sur FreeBSD

  3. Comment installer Gnome sur FreeBSD 13

  4. Comment installer Cinnamon dans FreeBSD 13

  5. Comment installer XFCE dans FreeBSD 13

Comment installer HAProxy sur CentOS 8

Comment installer HAProxy sur Ubuntu 16.04 LTS

Comment installer HAProxy sur Ubuntu 18.04 LTS

Comment installer HAProxy sur Ubuntu 20.04 LTS

Comment installer Apache dans FreeBSD

Comment installer WordPress sur FreeBSD