Migration de l'équilibreur de charge Nginx vers RELIANOID ADC

Voir les catégories

Migration de l'équilibreur de charge Nginx vers RELIANOID ADC

6 min de lecture

Vue d'ensemble #

L'équilibrage de charge sur plusieurs instances d'une application est un excellent moyen d'améliorer les performances en réduisant la surcharge et la latence, et en augmentant la livraison en mettant en cache les ressources statiques.

Bien que Nginx serve un grand objectif au service Web, la plate-forme présente de nombreuses complexités. À mesure que le trafic augmente, il devient plus difficile d'équilibrer la charge du trafic des couches 4 et 7 sans sacrifier la sécurité. Pour cette raison, vous avez besoin d'un équilibreur de charge avec des fonctionnalités plus avancées qui offrent un contrôle sur une application métier via une interface utilisateur facile d'accès.

Dans cet article, nous verrons comment transférer les configurations de l'équilibreur de charge Nginx vers RELIANOID ADC.

Pré-requis : #

Pour suivre ce guide, assurez-vous de respecter les points de repère suivants.

  1. Une instance de RELIANOID L’appliance doit être installée sur votre poste de travail ou sur une plateforme cloud. Demander une évaluation si vous n'avez pas encore installé d'instance.
  2. Vous devez avoir accès au panneau Web. Si vous ne le faites pas, suivez ce rapide guide d'installation.
  3. Nginx est un jeu d'enfant pour vous, mais vous n'êtes pas satisfait de ses capacités d'équilibrage de charge. Donc, tu as besoin RELIANOID intervenir.
  4. Un serveur virtuel est essentiel pour distribuer le trafic aux serveurs principaux. Si vous n'en avez pas créé, suivez ce guide sur création d'un serveur virtuel de couche 4 et de couche 7 (ferme)

Concepts de base #

en amont: La directive amont définit un cluster de serveurs hébergeant une application Web. Habituellement, l'amont est défini dans le contexte http. Dans RELIANOID ADC, le Services contient une sous-section dorsale pour la gestion des serveurs hôtes.

Ecoutez: L'option d'écoute définit le port que Nginx écoutera pour le trafic entrant en provenance du Web. RELIANOID utilise une Port virtuel pour écouter le trafic entrant via un Ferme.

emplacement: Le contexte d'emplacement vous permet de donner des instructions sur les répertoires pour récupérer les données des fichiers HTML.

proxy_pass : Cette directive est utilisée lors de la spécification de l'emplacement des serveurs proxy. Habituellement, l'emplacement est le La valeur affecté à la directive amont. Un concept similaire dans RELIANOID est une Ferme. C'est ici que vous définissez une adresse IP et un port qui sont connectés à un service contenant des serveurs principaux.

serveur: Cette directive spécifie un serveur hébergeant une application utilisant son adresse IP au format ipv4 ou ipv6. Le bloc serveur est l'endroit où vous définissez le Localisation directive, la auditeurainsi que, comprennent directif. Vous pouvez définir un serveur dans RELIANOID dans le cadre du backend .

ssl_ciphers et ssl_protocols : Les directives ssl_ciphers et ssl_protocol sont utilisées pour limiter la connexion aux versions SSL/TLS les plus puissantes ou les plus récentes. Certains de ces protocoles incluent TLSV1 et TLSV2. Le chiffrement par défaut avec nginx est HIGH : aNULL : !MD5. Pour utiliser des chiffrements et personnaliser les protocoles SSL dans RELIANOID, vous devez utiliser l'écouteur HTTPS. Accéder au Paramètres HTTPS dans les paramètres globaux de cette ferme.

Exemples de configurations : activation des sessions persistantes #

La persistance de session, également connue sous le nom de sessions persistantes, est une technique utilisée dans l'équilibrage de charge pour garantir que les demandes d'un client sont envoyées au même serveur dans un cluster pendant la durée d'une session. Ceci est souvent utilisé pour maintenir l'état ou pour s'assurer que les ressources, telles que les fichiers ou les données, sont disponibles pour le client tout au long de la session. Il existe plusieurs façons d'implémenter la persistance de session, y compris l'utilisation de cookies ou l'affinité d'adresse IP. La méthode utilisée dépend des exigences spécifiques de l'application et de l'architecture d'équilibrage de charge.

Configurations Nginx #

Nginx a principalement deux méthodes pour activer la persistance de session, c'est-à-dire en utilisant le hash_ip méthode d'équilibrage de charge et l'utilisation de biscuits collants.

Hash_ip : La méthode d'équilibrage de charge hash_ip acquiert les adresses IP de destination et source et les utilise pour former une identité unique pour une connexion établie.

serveurs backend en amont { hash_ip ; serveur 192.168.0.112 ; serveur 192.168.0.115 ; }

biscuit collant : Vous pouvez également utiliser des cookies persistants en définissant un biscuit collant option dans le contexte en amont.

serveurs backend en amont { serveur 192.168.0.112 ; serveur 192.168.0.116 ; cookie collant zensessionid expires=2h domain=.example.com path="/"; }

identifiant zensession identifie de manière unique un cookie et son serveur associé. A partir de la configuration ci-dessus, le cookie expire en heures 2.

RELIANOID les configurations #

Pour activer la persistance des cookies lors de l'utilisation RELIANOID équilibreur de charge :

  1. Allez dans LSLB> Fermes et cliquez sur le Modifier Icône sur une ferme http.
  2. Accédez à la Services Languette.
  3. Faites défiler jusqu'à ce que vous atteigniez le persistance .
  4. Pour activer la persistance à l'aide de l'adresse IP du client, sélectionnez la persistance IP : client adresse.
  5. oracle_jd_edwards_load_balancing_farm

  6. Pour activer la persistance de session à l'aide d'un cookie, ignorez l'étape 4 et laissez le Persistence champ à Pas de persistance.
  7. Basculer sur le insertion de biscuit bouton et remplissez le Le nom, domaine, chemin, et Durée de vie(TTL) en secondes.
  8. Mettez à jour les paramètres en cliquant sur le Appliquer .

Exemples de configurations : création de règles de redirection #

Les règles de redirection sont utilisées pour rediriger automatiquement une page Web vers une autre page Web. Ceci est souvent utilisé lorsqu'un site Web a changé sa structure ou son contenu, ou lorsqu'une page a été déplacée vers un nouvel emplacement. Les règles de redirection peuvent être utilisées pour s'assurer que les utilisateurs et les moteurs de recherche sont dirigés vers la bonne page et pour éviter les liens rompus. Il existe plusieurs types de redirections pouvant être utilisées, notamment les redirections 301, les redirections 302 et les redirections de méta-actualisation. Le type de redirection utilisé dépend des besoins spécifiques du site Web et de la raison de la redirection.

Configurations Nginx #

Pour créer une règle de redirection, nous déclarons une directive de retour dans les contextes de serveur ou d'emplacement. La directive return est utilisée lorsque vous souhaitez rediriger les utilisateurs d'une url vers une autre, ou d'un canal non sécurisé vers un serveur sécurisé.
Les règles de redirection Nginx suivent la syntaxe suivante.

return ( 301 | 302 | 303 | 307 ) URL de redirection ;

Voici un exemple de configuration lors de la redirection des utilisateurs d'un http non sécurisé vers un emplacement https sécurisé.

serveur { # Rediriger les utilisateurs vers HTTPS écouter 80 ; nom_du serveur test.relianoid.com www.test.relianoid.com ; renvoie 301 https://www.test.relianoid.com$request_uri ; }

L' $request_uri garantit que tout le trafic http sur le même domaine est redirigé vers le https sécurisé même si le chemin change.

RELIANOID les configurations #

Pour obtenir un résultat similaire avec RELIANOID ADC.

  1. Assurez-vous que vous avez deux fermes en cours d'exécution, les deux HTTP https. Reportez-vous à cet article sur comment créer des fermes de charge de couche 4 et de couche
  2. Allez dans LSLB >> Fermes Et cliquez sur le Modifier icône sur une ferme https.
  3. Localisez le Services et ouvrez l'un des services configurés pour les modifier. S'il n'y en a pas, cliquez sur le Nouveau service bouton et créez-en un.
  4. Faites défiler jusqu'à ce que vous atteigniez le Réorienter section et activez Activer la redirection.
  5. oracle_jd_edwards_load_balancing_farm

  6. Sélectionnez le type de redirection Ajouter, code de redirection 301 et écrivez l'URL complète de l'endroit où rediriger. Dans cet exemple, utilisons http://10.0.0.18
  7. Mettez à jour les configurations en cliquant sur le Appliquer .

Exemples de configurations : réécriture des règles d'en-tête #

Les en-têtes HTTP sont essentiels pour que les hôtes et les clients partagent des informations supplémentaires en plus d'interroger les demandes. Ces en-têtes permettent aux clients d'accéder aux ressources dans leurs langues préférées et d'accéder à des pages Web optimisées pour leurs appareils. Les serveurs Web peuvent utiliser ces informations pour optimiser le type d'informations pour servir les clients à l'aide d'en-têtes de cookies.

Malheureusement, l'utilisation de nombreux en-têtes de réponse peut révéler de nombreuses informations sensibles que les pirates pourraient utiliser pour des tentatives d'exploitation. Il est donc essentiel de supprimer les en-têtes non fiables ou de modifier certains contenus. Cela aide à prévenir les attaques malveillantes telles que les scripts intersites en fournissant Protection X-XSS.

Configurations Nginx #

Nginx fournit 2 directives pour modifier et ajouter des en-têtes. Ceux-ci inclus add_header more_set_headers. Utilisez ces en-têtes d'emplacement à l'intérieur du bloc d'emplacement.

Exemple de configuration utilisant add_header dans nginx.

emplacement / { ... add_header Serveur « nom_serveur » ; ... }

more_set_headers n'est pas installé nativement dans Nginx, donc, les utilisateurs installent généralement ce plugin manuellement avant de compiler nginx.

Exemple de configuration utilisant more_set_headers.

emplacement /{ ... more_set_headers Serveur « nom_serveur » ; ... }

RELIANOID les configurations #

  1. Tout d'abord, aller à LSLB>>Fermes et sélectionnez un HTTP ferme dont vous souhaitez définir les règles.
  2. Sous Global paramètres, cliquez sur le paramètres avancés languette.
  3. au sein de la paramètres avancés, Sélectionnez le Permettre option dans le réécrire les en-têtes d'emplacement règle.
  4. oracle_jd_edwards_load_balancing_farm

  5. Mettez à jour les configurations en cliquant sur le Appliquer .
  6. Faites défiler jusqu'à la section des en-têtes et cliquez sur le Créer une règle .
  7. au sein de la Type option déroulante, choisissez celle qui convient à votre application. Dans cet exemple, nous utiliserons Réponse : ajouter un en-tête.
  8. oracle_jd_edwards_load_balancing_farm

  9. Saisissez l'en-tête dont vous souhaitez modifier la valeur. Pour cet exemple, nous allons changer la valeur de Server en-tête.
  10. Enregistrez les configurations en cliquant sur le Appliquer .
  11. Recommencer la ferme pour que les configurations prennent effet.

XNUMX. Ressources supplémentaires #

Utilisation du programme Let's encrypt pour générer automatiquement un certificat SSL.
Équilibrage de charge Datalink/Uplink Avec RELIANOID ADC.
Équilibrage de charge DNS avec RELIANOID ADC.
Protection contre les attaques DDoS.
Surveillance des applications, de la santé et du réseau dans Reliianoid ADC.
Configuration du pare-feu applicatif Web.
Configuration des certificats SSL pour l'équilibreur de charge.

📄 Téléchargez ce document au format PDF #

    E-MAIL: *

    Sécurité accrue. Efforts réduits. Succès durable. Meilleurs Docs