2010-09-28 23 views
3

J'ai essayé de comprendre comment je pourrais écrire une application pour déployer des configurations IIS sur plusieurs serveurs Web. Les configurations Web seront prises dans un environnement et restaurées sur un ou plusieurs serveurs Web. J'ai essayé l'API DirectroyServices à partir de .NET pour gérer IIS. Je voulais exporter toutes les configurations et les importer dans un autre WebServer physique exécutant la même version d'IIS. Les répertoires virtuels ont été restaurés, mais tous les paramètres n'ont pas été autorisés. Par exemple, les propriétés de sécurité avec des mots de passe définis. D'après ce que j'ai trouvé en regardant autour, il semble que l'API DirectoryServices pour IIS n'implémente pas toutes les fonctionnalités dont vous avez besoin. J'ai été en mesure de Shell AppCMD de mon application. Ce que je n'ai pas aimé à ce sujet est que j'ai dû utiliser un outil d'exécution à distance afin d'exécuter à distance un script de traitement par lots qui s'occupe de la restauration et de la sauvegarde d'IIS.Gérer à distance IIS 6 par programmation et plus tard

Y a-t-il une meilleure façon de procéder? Je regardais dans PowerShell pour voir si je peux écrire un script pour faire ce dont j'ai besoin, mais je me demandais si ce même script peut aussi fonctionner pour IIS 6 et IIS 7?

Merci d'avance pour toute contribution!

+0

Pouvez-vous développer sur quelles versions d'IIS copiez-vous la configuration de/vers? par exemple. 'IIS6 -> IIS6',' IIS6 -> IIS7', 'IIS7 -> IIS7' – Kev

+0

À tout le moins, il devrait copier les configs de la même version d'IIS vers la même version d'IIS. S'il copie les configs dans une autre version d'IIS, les configs qui correspondent doivent être mis à jour et toute configuration qui n'a pas été mise à jour doit être enregistrée. –

Répondre

1

Déploiement et migration est très facile avec Microsoft Web Deploy: http://www.iis.net/download/WebDeploy

J'utilise actuellement ce Synchronisez les fichiers d'applications Web, les paramètres IIS et les paramètres ACL entre les cases IIS6 et IIS7.

+0

Salut Markis, merci pour votre réponse. J'ai vu cet outil avant. Cela ressemblait à une application individuelle qui fonctionne seule pour le déploiement. Si une API est disponible pour y accéder par programme, il est possible que je puisse l'utiliser. J'espère ne pas avoir à installer cet outil sur les machines clientes, et juste référencer tous les assemblys dont il dispose. –

+0

Pas une API en soi, mais tout est fait par les arguments de la ligne de commande. Donc, vous pouvez tout faire à partir d'un script de shell de puissance. – Markis

+0

des échantillons faciles? – Kiquenet