Transfert de serveur IIS

Ici est évoqué partiellement le fruit d'une triple expérience, le transfert d'un serveur IIS4 à un autre IIS4 et le transfert d'un serveur IIS4 sur un IIS5, le transfert d'un serveur IIS5 à l'identique sur un second pour mise en oeuvre d'un load balancing entre les deux..
En ce qui me concerne, le transfert c'est fait chaque fois d'un ordinateur contrôleur de domaine à un autre nouveau contrôleur du même domaine. Certains concepts d'ordre général s'appliquent cependant à tout transfert d'un ancien serveur web vers un nouveau quelle que soit la version considérée et le type d'installation serveur. Certaines différences de situation seront tout de même évoquées.

Voici la liste des choses à faire, que j'ai suivie, accompagnée de variantes possibles.

  1. Installation des applications sur le nouveau serveur
  2. Transfert des fichiers avec les ACL
  3. Recherche et remplacement de toutes les références absolues à l'ancien serveur dans les pages html
  4. Changements éventuels de comptes dans les ACL
  5. Transfert de la configuration IIS (Métabase de IIS)
  6. Load balancing de serveurs IIS et ODBC

  1. Installation des applications sur le nouveau serveur
  2. Transfert des fichiers avec les ACL
    Vous avez deux solutions classiques pour transférer les fichiers avec leurs ACL (primordial si vous continuer à accéder aux ressources de votre serveur Web avec les mêmes comptes) plus la solution du "IIS Migration Wizard" du Resource Kit dans le cas d'une migration vers IIS5 (depuis IIS4 ou IIS5).

    Cependant la situation peut différer de façon très important selon le type de migration que vous allez effectuer. Les cas des serveurs membres et des contrôleurs de domaine sont assez différents à ce sujet. Si vous êtes organisé en contrôleur de domaine, le compte IUSR_nom_serveur qui est par défaut le compte d'accès anonyme à votre serveur IIS est donc un compte de domaine. Il peut être conservé comme compte d'accès sur le nouveau serveur mais il faut alors penser à mettre à jour la configuration IIS du nouveau serveur qui aura configuré par défaut un nouveau compte IUSR_nouveau_serveur pour ce faire. C'est ce que j'ai fait lors de ma première migration de IIS4 à IIS4. Je ne voulais pas retravailler toutes les ACL des serveurs web et FTP pour cause de changement du compte anonyme car il y avait de très nombreux changements de droits dans l'arborescence (mélange important de parties publiques et privées).

    Plus tard, lors de ma grosse migration, IIS4 vers IIS5, j'ai profité du fait que je ne travaillais pas dans l'urgence, comme la première fois, et que je changeais tout le système d'ACL afin de bénéficier de l'héritage des ACL Windows 2000, pour modifier ce compte. Et là j'ai carrément choisi de créer un compte moi-même, à cet effet. Je n'utilise donc plus du tout les comptes IUSR_nom_serveur pour mon accès anonyme.

    Note : il se peut que certains soucis non réglés encore, à ce jour, avec les scripts d'interrogation du moteur de recherche viennent de là mais je ne pense pas. Je penche plutôt pour les suppressions trop draconiennes que j'ai faites dans les extensions de scripts à la racine du serveur web (je voulais sécuriser davantage le serveur en éliminant tous les types de scripts que je n'utilise jamais sur ces serveurs) ou le changement de port du serveur par défaut IIS5.

     

  3. Recherche et remplacement de toutes les références absolues à l'ancien serveur dans les pages html
  4. Changements éventuels de comptes dans les ACL
  5. Transfert de la configuration IIS (Métabase de IIS)
    J'ai détaillé un peu plus cette opération dans le cas du passage d'IIS4 à IIS4 (ou IIS5 à IIS5) sur autre serveur semblable. Vous trouverez la documentation ici.

    Pour le transfert d'IIS4 à IIS5, il y a un outil dans le Resource Kit de Windows 2000 serveur qui m'a servi mais donné pas mal de soucis également.
    Quand vous lancez le CD du ResKit, il y a, en plus de l'installation de base, des options pour produits complémentaires d'origine Microsoft et produit complémentaires tierce partie. C'est dans les produits complémentaires Microsoft que se trouve cet outil de migration : IIS Migration Wizard. Si vous avez fait une documentation sur son utilisation, je veux bien pointer l'URL voir la mettre en ligne s'il elle n'y est pas (Me contacter). Cet outil permet de migrer un site web IIS4 vers IIS5 ou IIS5 vers IIS5. J'ai testé les deux et ça marche mais j'ai rencontré quelques difficultés dans certains cas et il y a quelques remarques qui méritent d'être faites.

    Personnellement je me bornerai à lister ici, sans ordre particulier, quelques remarques concernant des difficultés rencontrées.

  6. Load balancing de serveurs IIS et ODBC
    Le load balancing pose un problème particulier avec les sources ODBC. En effet, les sources DSN, utilisées pour un accès à travers IIS, sont visiblement verrouillées dès le départ par IIS. Je n'ai pas réussi à contourner cette contrainte. J'avais voulu déclarer une datasource locale sur le premier serveur et distante sur le second, afin de pointer sur le même fichier. Le deuxième arrivé se fait jeter pour cause de fichier verrouillé. Peut-être quelque chose m'a-t-il échappé ; si c'est le cas je suis preneur de la solution.
    A partir du blocage constaté, il y a deux cas à envisager :

    Bien entendu, ce discours ne s'applique qu'aux technologies que j'ai testées et qui ont besoin d'une source DSN déclarée, tels que les scripts PHP, les scripts IDC/HTX, etc.

    Je n'ai pas fait l'essai avec les ASP et autres ADO qui déclarent eux-même leur datasource dans le courant du script. Si quelqu'un l'a fait dans le cadre d'un ensemble de serveurs IIS en WLBS, avec accès concurrentiel en édition à la même datasource, cela m'intéresse de savoir si ça marche. Vous pouvez me mettre un mot et j'ajouterai votre expérience (à votre crédit, bien entendu) à cette page.


mailto:etienne.durup@free.fr

Dernière mise à jour : 24.03.2003