KEMP : Load Balancer et Reverse Proxy avec Skype for Business

Dans le cadre d’un déploiement de la solution Skype for Business, j’ai eu l’occasion d’intégrer la solution Kemp LoadMaster qui est certifiée par Microsoft pour fonctionner pleinement avec Skype for Business dont voici un lien officiel qui en fait référence : LoadMaster is Certified as a Load Balancer and Reverse Proxy for Skype for Business .

Cet article a pour but de vous donner les informations essentielles pour comprendre et déployer la solution Kemp. La solution existe sur plusieurs formes à la fois en Appliance (boîtier physique) ou en Virtuelle, en machine virtuelle (VM) sur les hyperviseurs tels que Microsoft HyperV ou VMware ESX.

Rappel sur les notions essentielles

Les communications dans une infrastructure Skype for Business sont principalement sous deux formes :

  • Signalisation SIP : Ce sont des messages liés aux signalisations, par exemple lorsqu’un utilisateur se connecte au serveur Skype for Business ou lorsqu’il initie un appel Audio.
  • Web HTTPS : De nombreux services ne sont disponibles que via le protocole HTTPS, tels que : Téléchargement du carnet d’adresse, Modifier le code PIN, Télécharger le contenu d’une réunion Web etc

Avant Lync 2010, tout type de trafic (SIP et HTTPS) dans une architecture Enterprise Edition devait passer par un HLB (du type Big IP F5 ou Kemp). Depuis Lync 2010, Microsoft a introduit la fonctionnalité de DNS Load Balancing pour gérer la répartition de charge du trafic SIP.

Le DNS Load Balancing est un mécanisme intégré dans Skype for Business pour gérer la redondance au niveau du logiciel. Il s’applique exclusivement aux flux SIP. La redondance se gère au niveau du DNS où le même nom DNS est déclaré plusieurs fois (une fois pour l’adresse IP de chaque serveur du pool). Le client Lync récupère la liste des IP retournées par le serveur DNS et se connecte à la première adresse IP de la liste fournie par le serveur DNS. L’ordre des adresses IP de cette liste sera différente pour chaque requête et c’est le serveur DNS qui gère ce mécanisme de Round Robin. Si la connexion échoue, la deuxième adresse IP est testée et ainsi de suite jusqu’à ce que la connexion se fasse ou que toutes les tentatives de connexions aux IP retournées aient échouées.

Il est important de noter que pour le trafic HTTPS, le HLB est obligatoire afin de pouvoir répartir le trafic Web.

Périmètre technique de l’article

L’objectif est de vous donner une vision de la configuration à apporter dans le cadre d’une seule IP publique portée par un cluster de Kemp. Cependant nous allons avoir des requêtes qui vont arriver à destination des serveurs Office Web Apps et vers les serveurs Frontend. Ou encore si nous avions décidé de publier les services Exchange à l’extérieur cela aurait été également faisable. Tout ceci avec une seule IP publiée vers l’extérieur. En réalité la distinction se fait sur le nom DNS de la requête.

topologie-skype-for-business-et-kemp

La fonctionnalité technique utilisée par Kemp est le Sub-Virtual Services (SubVSs) dont voici le principe logique :

Le fait de décrypter le flux SSL permet d’analyser le contenu et de ‘router’ le flux vers le SubVSs qui lui attribuera une persistance, un test de santé et une destination qui lui est propre.

notions-subvss

Sources : Dans la documentation SubVSs du site de Kemp (lien plus haut)

Maintenant que les bases sont posées, rentrons dans le vif du sujet qui n’est pas de vous donner un tuto étape par étape mais plutôt une vision global avec la configuration essentielle dans le cadre du périmètre technique préalablement présenté.

 Tout d’abord, dès le démarrage de la machine, l’adresse IP pré-configurée est la 192.168.1.101 (default IP).

Configurer votre poste de travail avec une IP dans le sous-réseau 192.168.1.0 , par exemple la 192.168.1.102, puis ouvrez votre navigateur préféré pour débuter le paramétrage

De base la version téléchargé sur le site de Kemp contient l’ensemble des fonctionnalités avec une licence démo puis vous demande d’enregistrer une licence définitive sous 30 jours.

Pour obtenir une licence définitive il vous faudra contacter le support Kemp et leur donner le Serial Number de la machine ainsi que le numéro de contrat client qui lui sera associé.

 2

 Ensuite, je vous conseille très fortement de suivre les instructions officielles pour le déploiement de base avec Skype for Business : Skype for Business Deployment Guide .

Il existe également des Template de configuration prédéfinie permettant d’avoir une base pour configuré votre Load Banalcer et Reverse Proxy.

 3

Configuration du Reverse Proxy

Le points important pour que le Reverse Proxy fonctionne correctement est la notion de persistance dont voici le lien vers la recommandations Microsoft : Load balancing requirements for Skype for Business

Voici la configuration de mon IP naté en écoute sur le port 443 et ses 2 SubVSs à destination de la VIP du HLB Interne Config-Reverse-proxy-kemp
 La configuration principale avec la notion de réencryption indispensable dans le cas de l’utilisation de la fonctionnalité SubVSs  Config-Reverse-proxy-kemp2
 Les SubVSs associés avec les règles permettant de faire la distinction entre les requêtes SSL arrivant à destination de l’un ou de l’autre  Config-Reverse-proxy-kemp3
 Voici les règles discriminantes qui sont associées au SubVSs à destination de la VIP HLB Kemp des Frontends  Config-Reverse-proxy-kemp4
 Et la règle associée au SubVSs pour le serveur OWA  Config-Reverse-proxy-kemp5
 En détail la configuration du SubVs dédié à la VIP des Frontend avec son propre test de santé et persistance  SubVSs-Frontend
 Puis les détails de la configuration du SubVs dédié au serveur OWA avec son propre test de santé et persistance  SubVs-OWA

Configuration du Load Balancer

Maintenant passons

Voici la configuration de mon Load Balancer Kemp interne avec les 3 VIP en écoute sur différent port: 80,443 et le 4443 qui vient du Reverse Proxy Config-Loadbalancer-kemp
 Il est important de noter la persistance par Source sur les flux arrivant du Reverse Proxy vers le HLB en 4443  Config-Loadbalancer-kemp-2b
 Pour information, la configuration de la VIP en 443 avec la persistance et le test de santé en 5061 (au préalable, bien configuré dans la topologie Skype l’activation du port de santé, par défaut en 5061)  Config-Loadbalancer-kemp-3
 Pour information, la configuration de la VIP en 80 avec la persistance et le test de santé en 5061  Config-Loadbalancer-kemp-4

La solution Kemp est stable et facile à administrer, la solution Kemp Load Master peut-être une bonne alternative pour les petites et moyennes entreprises cherchant une nouvelle solution pour remplacer leur solution Forefront TMG / UAG abandonné par Microsoft. En termes de prix on est loin du haut de la gamme F5 Networks mais c’est tout à fait suffisant.

Au plaisir de vous avoir renseigné sur le sujet et si vous avez des questions ou un besoin de prestation sur la configuration n’hésitez pas à prendre contact.

Je vous partage également le Blog du Responsable Technique France de Kemp : http://yann-bouillon.wix.com/kemp

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *