Microsoft web farm framework Microsoft web farm framework Le Microsoft web framework est un logiciel gratuit, entièrement supporté, ce produit Microsoft vous permet de provisionner automatiquement une ferme de serveur en terme de contenu, de configuration de l?application web et configuration IIS (comme media services et ses contenus). Une synchronisation des serveurs IIS (7.0 uniquement) sans coupure de service est également possible. Cet outil offre un gestion facile de vos fermes de serveurs IIS. Prérequis : Maj update windows à jour avec le framework 3.5 pour les serveurs (controller server, primary server et secondary server(s).) Il sera nécessaire d?activer l?option remote assistance, WinRM port tcp (http) :5985 et (https) 5986, WinrM IIS extension, Webmanagement service (port tcp 8172). L?installation de WebDeploy 2.0 sur tous les serveurs (controller server, primary server et secondary server(s).) ainsi que IIS webdeployement tools ici Dans le serveur Controller server, Une installation dans l?ordre Application Request Routing, webplateform installer 3 http télécharger ici, et web framework télécharger ici pour 64 bits et pour 32 bits sera nécessaire et obligatoire En résumé : Et x86: URL rewrite (v2): Download from here. Web Farm Framework (v1): Download from here. ARR (v2.5): Download from here. External Cache (v1): Download from here. x64: URL rewrite (v2): Download from here. Web Farm Framework (v1): Download from here. ARR (v2.5): Download from here. External Cache (v1): Download from here. de WebDeploy 2.0 ainsi que IIS webdeployement tools ici Remarques Afin d?obtenir une administration centralisé à partir du controller server, il sera nécessaire d?activer plusieurs Remarques 1
option windows sur 2008 server. Le remote assistance Activation - Ouvrez l'outil de configuration des GPO's. - Éditez ou créez la stratégie de groupes qui s'appliquera à tous les ordinateurs dont vous voulez pouvoir prendre possession. - Suivez le chemin : Computer Configuration >> Policies >> Administrative Templates >> System >> Remote Assistance. - Ouvrez la stratégie Offer Remote Assistance. Indiquez Enabled et dans les options indiquez Allow helpers to remotely control the computer. - Vous devez aussi indiquer le(s) groupe(s) et/ou le(s) utilisateur(s) qui auront le droit de prendre contrôle à distance des différents ordinateurs. Attention! Veillez à indiquer convenablement le nom des groupes et/ou utilisateurs, aucune vérification n'est faite à ce niveau! (DOMAIN\GROUP ou DOMAIN\USER) - Validez cette configuration. Adaptation au firewall - Ouvrez l'outil de configuration des GPO's - Editez la stratégie de groupes qui s'appliquera à tous les ordinateurs dont vous voulez pouvoir prendre possession. - Suivez le chemin : Computer Configuration >> Policies >> Windows Settings >> Security Settings >> Windows Firewall with Advanced Security >> Inbound Rules. - Créez une première règle. - Dans Rule Type sélectionnez Port. Cliquez sur Next. - Dans Protocol and Ports sélectionnez TCP et Specific local ports. Dans Sepecific local ports indiquez 135. Cliquez sur Next. - Dans Action sélectionnez Allow the connection. Cliquez sur Next. - Dans Profile, assurez vous que Domain soit coché. Cliquez sur Next. - Indiquez un nom et une description. Cliquez sur Finish. Le remote assistance 2
A la fin de la configuration, afin de forcer la policy exécutez la commande gpupdate /force sur la machine cible. WinrM Installation Pour chaque serveur primaire, secondaires et controller, il faudra appliquer le paquet Microsoft suivant : télécharger ici (KB968930) Exécuter la commande en privilèges administrateur sur les serveurs primaire et secondaire : Winrm quickconfig Un dialogue de ce type s?affichera : Make these changes [y/n]?, tapez y. Etablissement de la liste de serveur qui doivent se connecter serveur primaire winrm set winrm/config/client '@{TrustedHosts ="server controller server"}' serveurs secondaires winrm set winrm/config/client '@{TrustedHosts ="server controller server, server primaire"}' Service de gestion IIS 7 (action à effectuer sur les serveurs secondaires et primaire) Webmanagement service Il faut activer l?option management service: [[Image:]] Adaptation au firewall 3
Permission Cliquez sur IIS Manager Users Ajouter le ou les utilisateurs du domaine ou compte local (si compte local veillez à ce que ce compte existe sur les autres serveurs) Webmanagement service 4
Configuration Sous la console IIS 7.0 Le management service devient accessible tel que : Cliquez sur Management Service vous obtiendrez le dialogue suivant : Permission 5
Dans l?option IP and domain Restrictions, vous devez ajouter l?adresse ip du controller server de la ferme. Installation Web framework Il est conseillé que les serveurs soient dans un domaine. Ces opérations fonctionnent uniquement sous IIS 7.0. Attention le serveur primary doit être configuré entièrement et finaliser pour se répandre au sein de la ferme. Création de la webfarm Une fois que le Framework Microsoft Web Farm est installé, vous verrez une nouvelle «ferme de serveurs" noeud listés dans l'arborescence à gauche de l'outil d'administration IIS sur le "tutu" machine. Si vous faites un clic droit sur??ce n?ud "ferme de serveurs", vous verrez une option "Créer une batterie de serveurs..." Création de la webfarm 6
Sélectionner cette option fera apparaître une "Créer une batterie de serveurs". Un dialogue s?affiche. Via ce dialogue, nous pourrons configurer et parametrer la ferme de machine.nous allons nommer la nouvelle batterie de serveurs «laferme» et indiquer que nous voulons affecter automatiquement tous les serveurs de la batterie (en cochant la "batterie de serveurs à disposition" dans la boîte de dialogue). Nous allons également indiquer que nous voulons le rendre disponible pour l'équilibrage de charge avec la demande d'applications IIS Routing (ARR) équilibreur de charge. Dans mon labo, j?ai décoché l?équilibreur de charge. J?ai rencontré des problèmes erreur 12007 provenant de la configuration des proxy dans internet explorer. J?ai tout désactivé. De plus en milieu de production les serveurs n?ont pas accès à internet. Le serveur «titi» sera désigné comme le serveur primaire et les autres serveurs seront désignés comme serveurs secondaires. De sorte que tous les serveurs secondaires seront synchronisés par rapport au serveur primary. Dans notre exemple «tata» est le serveur secondaire. Création de la webfarm 7
Attention si les serveurs ne sont pas dans un domaine, il est obligatoire d?avoir un compte appartenant au groupe administrateurs. Ce même compte doit exister sur l?ensemble des serveurs de la ferme. Apres avoir cliqué sur «Next», nous allons ajouter les serveurs. Installation Controler server et primary server au sein du même serveur Création de la webfarm 8
Cliquez sur «Add» pour ajouter par la suite les serveurs secondaires. Dans mon labo «tata» est le serveur secondaire. Lorsque nous cliquons sur le bouton "Finish". La ferme «laferme»» se connecte aux serveurs Web «titi» et «tata que nous avons ajouté à la ferme de serveurs. Dès que le service d?équilibrage de charge est valide pour les deux serveurs, Toute la configuration du serveur primaire est synchronisé sur les serveurs secondaires. Il est possible de rendre indisponible un serveur de la ferme, de le redémarrer etc? Un fichier de log fonctionne en continue visible en continue par le sysadmin voir ci-dessous: Création de la webfarm 9
L?état «ready for load balancer» prend un certain temps (voir 5 minutes) C?est peut-être dû que mon labo comporte 3 VM de windows 2008 server sur un poste de travail eburo? Installation Controler server et primary server sur le même serveur 1. Click "Start" button, then click "Run" and type "Regedit" and click ok 2. In the Registry editor, click the registry subkey HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control 3. In the details pane, locate the ServicesPipeTimeOut entry, right click and then select Modify.Note: If the ServicesPipeTimeout entry does not exist, you must create it by selecting New on the Edit menu, followed by the DWORD value, then typing ServicesPipeTimeout and clicking Enter 4. Click Decimal and enter the new timeout value(something like 60000) in milliseconds, and then click OK 5. Restart the machine Les paramétrages intéressants Provisionnement Il existe deux sortes de provisionnements Provisionnement applicatif : synchronisation les sites web. Provisionnement des plateformes : synchronisation les configuration IIS Les paramétrages intéressants 10
Il est possible de synchroniser des serveurs sans coupure de services pour paramétrer cette option : Cliquez sur «Application» vous obtenez le dialogue suivant : Fichier:Provisionning-2.png Le dialogue est similaire pour la partie la partie «Plateform» Le framework dispose des commandes qui permettent de déployer des mises à jour Microsoft, surveiller l?état de service et le relancer. Il faut cliquer sur «Server Farm Operations» etc? Provisionnement 11
Etude de cas Soit un ensemble de trois serveurs comprenant windows 2008 server comportant les prérequis. On a tutu qui est le serveur controllerserver, titi primary server, tata secondary server. Etude de cas 12
Avant de débuter une opération de synchronisation automatique via web farm framework, il faut que les serveurs soient online et ready pour loadbalancer tels que : Sur le site nous allons créer un nouveau site web le site 5 : Ouvrez la console de management IIS : Etude de cas 13
Création du site «site5» ainsi que son contenu. Puis cliquez «Ok» tel que nous obtenons le dialoge suivant : Etude de cas 14
Quelques secondes après nous obtenons sur la console de management de tata: Le contenu du site a été copié sur le serveur cible tata ainsi que la configuration entière du site. Etude de cas 15
Les autres méthodes (avantages et incovénients) Configuration partagé: Shared Configuration L'idée est que vous pouvez prendre une configuration des serveurs web et l'exporter vers un fichier de configuration XML. Ensuite, pointez tous les serveurs Web que vous souhaitez simuler votre configuration dans le fichier via un partage réseau.? (+) Super simple à apprendre et à configurer? (-) Il ne sera pas s'assurer que les composants sont installés sur tous les serveurs Web? (-) Il ne sera pas s'assurer que le contenu est synchronisé sur vos serveurs Web? (+ / -) Personnalisation entre les serveurs est limité IIS Web Farm Framework 2 L'idée ici est que vous configurez «primaire» et «secondaire» des serveurs. Toutes les modifications de configuration sont effectuées sur le serveur principal, puis «reproduit» sur les autres serveurs de secondaires de la ferme. http://www.iis.net/download/webfarmframework? (+) L? interface utilisateur et la configuration sont simples? (+) Tout, depuis le serveur principal est répliquée sur les serveurs secondaires. Cela inclut les composants IIS sont installés, ce qui a été ajouté par l'installateur plate-forme web et son contenu. (-) A ce jour le produit est nouveau et la documentation est assez rare. Très peu de cas de figure existe. On trouve que des principes de bases. WebDeploy 2 (ou MSDeploy) C'est le couteau suisse de solutions. Il est conçu pour faire beaucoup de choses - de migrer iis 6 à 7, paquet applications Web pour déployer et synchroniser les fermes Web. Je soupçonne que c'est le pilier de la plupart des autres options de code SEP.? (+) Le plein accès à IIS via Winrm? (+) Générer des scripts, des déploiements reproductibles pour plusieurs serveurs? (+) une très bonne documentation? (+) Webdeploy est intégré par le logiciel Web Farm Framework2? (-) L?utilisation de Webdeploy implique la maitrise de powershell et de l?utilisation du module administrationweb Les autres méthodes (avantages et incovénients) 16