Configuration du service de publication IIS World Wide Web dans un cluster de basculement Windows Server
Cet article explique comment configurer Microsoft Internet Information Services (IIS) World Wide Web Publishing Service (W3SVC) dans un cluster de basculement Windows Server (WSFC).
Version d’origine du produit : Windows Server 2008 et versions ultérieures, Internet Information Services 8.0 et versions ultérieures
Numéro de la base de connaissances d’origine : 970759
Introduction
Les procédures décrites dans cet article s’appliquent uniquement au service de publication World Wide Web. Pour obtenir des instructions sur la configuration du service de publication FTP dans un cluster de basculement, consultez Configuration de FTP pour IIS dans un cluster de basculement Windows Server.
Plus d’informations
Dans les versions antérieures d’Internet Information Services, Microsoft fournissait des composants génériques de surveillance des ressources pour prendre en charge des instances de serveur Web à haute disponibilité à l’aide de l’infrastructure de clustering Microsoft. Toutefois, un code personnalisé était nécessaire pour réaliser pleinement le potentiel d’une telle solution. En outre, les scripts génériques fournis par Microsoft ne répondaient pas aux besoins des clients. Pour configurer IIS 7.0 ou une version ultérieure dans un environnement en cluster qui utilise des clustering de basculement Windows Server, vous devez utiliser un code personnalisé (script) pour activer ce scénario de haute disponibilité. Lorsque vous le faites, les utilisateurs peuvent personnaliser la configuration pour répondre à leurs besoins. ce qui leur donne un contrôle total sur l’intégration à haute disponibilité des applications web. En outre, les interfaces de script pour l’administration et la surveillance qui ont été introduites dans IIS 7.0 fournissent un environnement plus riche que les scripts fournis précédemment.
Remarque
Les fichiers d’installation IIS 7.0 incluent de manière incorrecte les fichiers de scriptClusweb.vbs et Clusftp.vbs utilisés dans IIS 6.0 pour les tâches d’administration du cluster IIS. N’utilisez pas ces scripts avec IIS 7.0 ou une version ultérieure.
Nous recommandons aux administrateurs d’évaluer soigneusement l’utilisation de l’équilibrage de charge réseau (NLB) comme méthode principale et préférée pour améliorer la scalabilité et la disponibilité des applications Web avec plusieurs serveurs exécutant IIS 7.0 ou une version ultérieure, par opposition à l’utilisation de clustering de basculement. L’un des avantages de l’équilibrage de charge réseau est que tous les serveurs peuvent participer activement à la gestion simultanée des requêtes HTTP (HyperText Transfer Protocol) entrantes. Un autre avantage est que dans un environnement IIS NLB, il peut être beaucoup plus facile de prendre en charge les mises à jour propagées et les restaurations tout en fournissant une haute disponibilité des applications web. Pour plus d’informations sur l’utilisation d’IIS 7.0 ou d’une version ultérieure dans un environnement NLB, consultez les articles suivants :
Il est important de tenir compte du fait que clustering IIS au moyen de clustering les services IIS ne garantit pas toujours une solution haute disponibilité pour les applications web. Bien que les services IIS (en particulier le service WWW) puissent être opérationnels, le processus d’hébergement d’un pool d’applications spécifique peut s’être arrêté ou l’application peut générer des erreurs HTTP internes du serveur. Le clustering des applications web et la surveillance de leur intégrité à l’aide d’un script personnalisé sont la méthode correcte et recommandée pour obtenir un cluster IIS à haute disponibilité à l’aide de clustering de basculement. Voici un exemple de script qui surveille l’état d’un pool d’applications pour déterminer s’il est démarré ou non.
Pour configurer la haute disponibilité pour un serveur web IIS 7.0 ou version ultérieure à l’aide de clustering de basculement, procédez comme suit. Les étapes 3 à 7 sont décrites plus en détail ci-dessous. L’exemple de script plus loin dans cet article peut être utilisé comme exemple pour IIS 7.0 ou une version ultérieure.
- Installez le rôle Serveur web sur tous les nœuds de cluster. Pour plus d’informations, consultez guide de déploiement IIS 7.
- Installez la fonctionnalité de basculement clustering sur tous les nœuds de cluster et créez le cluster. Pour plus d’informations, consultez Guide de déploiement du cluster de basculement.
- Configurez un partage de fichiers qui sera utilisé pour la configuration partagée IIS.
- Configurez la configuration partagée IIS sur tous les nœuds de cluster.
- Configurez les fichiers iis hors connexion pour la configuration partagée sur tous les nœuds de cluster.
- Configurez le site web (y compris le pool d’applications associé) et spécifiez l’emplacement de son contenu sur un nœud de cluster.
- Configurez la haute disponibilité pour votre site web en créant un script générique dans les clustering de basculement.
Configurer un partage de fichiers qui sera utilisé pour la configuration partagée IIS
- Créez un utilisateur qui accédera au partage qui sera utilisé pour la configuration partagée IIS.
- Créez le partage de fichiers. Ce partage sera utilisé pour stocker la configuration partagée IIS qui sera partagée entre IIS sur tous les nœuds de cluster. Il existe plusieurs options :
- Sur un serveur autonome qui ne fait partie d’aucun cluster de basculement, créez un partage de fichiers.
- Sur un autre cluster de basculement Windows Server, créez un partage de fichiers à haute disponibilité. Pour plus d’informations, consultez Guide pas à pas du cluster de basculement : Configuration d’un cluster de basculement de serveur de fichiers Two-Node.
- Sur le même cluster de basculement qui hébergera le site web à haute disponibilité, créez un partage de fichiers à haute disponibilité. Pour plus d’informations, consultez Guide pas à pas du cluster de basculement : configuration d’un cluster de basculement de serveur de fichiers Two-Node.
- Définissez les autorisations sur le partage que vous avez créé à l’étape 2. Accordez à l’utilisateur que vous avez créé à l’étape 1 les autorisations Contrôle total sur le partage de fichiers et les autorisations NTFS.
- Vérifiez que tous les nœuds de cluster peuvent accéder au partage de fichiers. Le chemin d’accès au partage de fichiers est
\\<fileserver>\<share>
.
Configurer la configuration partagée IIS sur tous les nœuds de cluster
Remarque
Il existe un problème avec la configuration partagée IIS sur Windows 2008 Server en raison de privilèges manquants pour le Application Host Helper Service
. Pour que la configuration partagée fonctionne, vous devez suivre ces étapes lorsque vous configurez la configuration partagée IIS sur Windows 2008 Server.
Ouvrez une invite de commandes d’administration.
Exécutez la commande suivante :
net stop apphostsvc
Exécutez la commande suivante :
sc privs apphostsvc SeChangeNotifyPrivilege/SeTcbPrivilege/SeImpersonatePrivilege
Exécutez la commande suivante :
net start apphostsvc
Après avoir effectué ces étapes sur chaque serveur Windows 2008 du cluster, continuez à configurer la configuration partagée IIS comme décrit dans cette section.
Sur l’un des nœuds de cluster, exportez la configuration partagée vers le partage de fichiers :
- Accédez à Outils d’administration, puis sélectionnez Gestionnaire des services Internet (IIS).
- Dans le volet gauche, sélectionnez le nœud nom du serveur .
- Double-cliquez sur l’icône Configuration partagée .
- Dans la page Configuration partagée , sélectionnez Exporter la configuration dans le volet Actions (volet droit) pour exporter les fichiers de configuration de l’ordinateur local vers un autre emplacement.
- Dans la boîte de dialogue Exporter la configuration , tapez le chemin du partage de fichiers (
\\<fileserver>\<share>
) dans la zone Chemin d’accès physique . - Sélectionnez Se connecter en tant que, tapez le nom d’utilisateur et le mot de passe du compte d’utilisateur qui a accès au partage dans lequel la configuration partagée est stockée, puis sélectionnez OK. Ce compte sera utilisé pour accéder au partage. Vous devez utiliser un compte Active Directory restreint qui n’est pas l’administrateur de domaine.
- Dans la boîte de dialogue Exporter la configuration , tapez un mot de passe qui sera utilisé pour protéger les clés de chiffrement, puis sélectionnez OK.
- Dans la page Configuration partagée, cochez la case Activer la configuration partagée case activée.
- Tapez le chemin d’accès physique, le compte d’utilisateur et le mot de passe que vous avez entrés précédemment, puis sélectionnez Appliquer dans le volet Actions .
- Dans la boîte de dialogue Mot de passe des clés de chiffrement, tapez le mot de passe de la clé de chiffrement que vous avez défini précédemment, puis sélectionnez OK.
- Dans la boîte de dialogue Configuration partagée , sélectionnez OK.
- Sélectionnez OK.
Sur chacun des autres nœuds de cluster, utilisez la configuration partagée que vous venez d’exporter vers le partage de fichiers :
- Accédez à Outils d’administration, puis sélectionnez Gestionnaire des services Internet (IIS).
- Sélectionnez le nœud nom du serveur .
- Double-cliquez sur l’icône Configuration partagée .
- Dans la page Configuration partagée, cochez la case Activer la configuration partagée case activée.
- Tapez le chemin physique du partage de fichiers (
\\<fileserver>\<share>
), le compte d’utilisateur et le mot de passe que vous avez entré précédemment, puis sélectionnez Appliquer dans le volet Actions . - Dans la boîte de dialogue Mot de passe des clés de chiffrement, tapez le mot de passe de la clé de chiffrement que vous avez défini précédemment, puis sélectionnez OK.
- Dans la boîte de dialogue Configuration partagée , sélectionnez OK.
- Sélectionnez OK.
Remarque
Pour plus d’informations sur la configuration des configurations partagées dans IIS, consultez Configuration partagée.
Configurer des fichiers IIS hors connexion pour la configuration partagée sur tous les nœuds de cluster
Sur chaque nœud de cluster, activez fichiers hors connexion :
Installer l’expérience utilisateur
- Accédez à Outils d’administration, puis sélectionnez Gestionnaire de serveur.
- Dans le volet gauche, sélectionnez Fonctionnalités.
- Sélectionnez Ajouter des fonctionnalités dans le volet droit.
- Effectuez l’une des opérations suivantes, en fonction de votre version de Windows :
- Pour Windows Server 2016, consultez Installer le serveur avec expérience utilisateur.
- Pour Windows Server 2102 et 2012 R2, choisissez Expérience utilisateur sous Interfaces utilisateur et infrastructures dans la liste des fonctionnalités.
- Pour Windows Server 2008 et 2008 R2, choisissez Expérience utilisateur.
- Sélectionnez Installer pour installer Expérience utilisateur.
- Redémarrez l'ordinateur.
Effectuez l’une des opérations suivantes :
- Pour Windows Server 2012, 2012 R2 et 2016, sélectionnez Centre de synchronisation dans Panneau de configuration, puis gérer les fichiers hors connexion.
- Pour Windows Server 2008 et 2008 R2, sélectionnez Fichiers hors connexion dans Panneau de configuration.
Sélectionnez Activer les fichiers hors connexion. Ne redémarrez pas l’ordinateur pour l’instant.
Vérifiez que le cache est défini sur lecture seule. Pour ce faire, exécutez la commande suivante à une invite de commandes avec élévation de privilèges :
REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f
Redémarrez l'ordinateur.
Accédez au serveur de fichiers à partir de l’ordinateur. Cliquez avec le bouton droit sur le partage qui contient la configuration partagée IIS, puis sélectionnez Toujours disponible hors connexion.
Remarque
Si vous configurez le partage de fichiers pour qu’il soit hautement disponible sur le même cluster de basculement qui héberge les nœuds IIS, l’option Toujours disponible hors connexion n’apparaît pas lorsque vous cliquez avec le bouton droit sur le partage si le nœud de cluster sur lequel vous vous trouvez héberge le serveur de fichiers à haute disponibilité. Vous devez déplacer l’application de serveur de fichiers à haute disponibilité vers un autre nœud.
Dans Panneau de configuration, ouvrez Fichiers hors connexion. Sélectionnez Ouvrir le Centre de synchronisation, puis Planifier.
Planifiez une synchronisation de fichiers hors connexion pour chaque jour ou en fonction de vos besoins. Vous pouvez également configurer la synchronisation hors connexion pour qu’elle s’exécute toutes les quelques minutes. Même si vous ne configurez pas de planificateur, lorsque vous modifiez quelque chose dans le fichier Applicationhost.config , la modification est reflétée sur le serveur Web.
Remarque
Pour plus d’informations sur la configuration des fichiers hors connexion pour une configuration partagée dans IIS, consultez Fichiers hors connexion pour la configuration partagée.
Configurer le site web et spécifier l’emplacement de son contenu sur un nœud de cluster
Recherchez le nœud de cluster qui possède la ressource de disque de cluster où les fichiers de contenu du site web resteront :
- Accédez à Outils d’administration, puis sélectionnez Gestionnaire du cluster de basculement.
- Connectez-vous au cluster. Si vous êtes sur l’un des nœuds du cluster, le cluster apparaît automatiquement dans la liste.
- Sous Stockage, recherchez la ressource de disque sur laquelle se trouve le contenu de la page Web. Pour ce faire, développez l’arborescence de stockage de la ressource de disque. Assurez-vous que le stockage n’est pas utilisé par une autre application à haute disponibilité sur le cluster. Vous trouverez le stockage sous Stockage disponible.
- Nœud de cluster sur lequel cette ressource est en ligne. Vous allez configurer IIS sur ce nœud de cluster.
- Nom de la ressource de disque de cluster.
Vous l’utiliserez pour les fichiers de contenu. Sur le nœud de cluster sur lequel la ressource est en ligne, configurez le serveur Web pour utiliser le disque partagé pour le contenu du site web :
- Accédez à Outils d’administration, puis sélectionnez Gestionnaire des services Internet (IIS).
- Dans le volet gauche, développez le nœud nom du serveur.
- Développez Sites, puis sous Sites, sélectionnez le site que vous configurez.
- Dans le volet droit, sélectionnez Paramètres avancés sous Gérer le site web.
- Recherchez la propriété Chemin physique sous Paramètres généraux , puis tapez l’emplacement où se trouvent les fichiers de contenu du site web. Il s’agit de l’emplacement de la ressource de disque de cluster que vous avez notée à l’étape 5 de la procédure précédente.
- Sélectionnez OK.
Configurer la haute disponibilité pour votre site web en créant un script générique dans le Gestionnaire du cluster de basculement
Pour la dernière étape de configuration de la haute disponibilité pour les serveurs Web IIS, configurez la ressource de script générique qui sera utilisée pour surveiller le site web et le pool d’applications pour le site web :
Sur chaque nœud de cluster, copiez le script fourni à la fin de cet article dans
Windows\System32\inetsrv\Clusweb7.vbs
.Par défaut, le script surveille un site web nommé Site web par défaut et un pool d’applications nommé DefaultAppPool. S’il ne s’agit pas du site web et du pool d’applications appropriés, modifiez les
SITE_NAME and APP_POOL_NAME
variables. Assurez-vous que le même site web et le même pool d’applications dans le script existent sur tous les nœuds de cluster.Remarque
Les noms respectent la casse.
Accédez à Outils d’administration, puis sélectionnez Gestionnaire du cluster de basculement.
Connectez-vous au cluster. Si vous êtes sur l’un des nœuds du cluster, le cluster apparaît automatiquement dans la liste.
Effectuez l’une des opérations suivantes :
- Pour Windows Server 2012, 2012 R2 et 2016, cliquez avec le bouton droit sur Rôles, puis sélectionnez Configurer le rôle pour le créer.
- Pour Windows Server 2008 et 2008 R2, cliquez avec le bouton droit sur le cluster, puis sélectionnez Configurer un service ou une application. Un Assistant crée la charge de travail haute disponibilité.
Sélectionnez Script générique.
Sélectionnez le fichier de script à partir de
%systemroot%\System32\Inetsrv\clusweb7.vbs
.Définissez le nom du point d’accès client (CAP) sur le nom du site web que les clients utiliseront pour se connecter au site web à haute disponibilité. Spécifiez les adresses IP statiques à utiliser pour le cap du site web. Si vous utilisez dhcp (Dynamic Host Configuration Protocol), cette option ne s’affiche pas.
À l’étape Sélectionner le stockage , sélectionnez le disque partagé de cluster sur lequel se trouvent les fichiers de contenu du site web. Le stockage doit être inutilisé par toute autre application de haute disponibilité sur le cluster.
Remarque
Si le partage de fichiers utilisé pour la configuration partagée IIS est hébergé sur le même cluster, une autre ressource de disque doit être utilisée ici.
Une fois que vous avez confirmé les paramètres, l’Assistant crée le groupe de clusters, les ressources de cluster et les dépendances entre les ressources, puis met les ressources en ligne.
Remarque
Pour héberger plusieurs sites web à haute disponibilité sur le même cluster de basculement, suivez les mêmes étapes que ci-dessus. Toutefois, utilisez un fichier de script différent pour chaque site web et un stockage partagé en cluster différent. Par exemple, dans
%systemroot%\System32\Inetsrv
, utilisez clusweb7.vbs pour le premier site web, clweb7-2.vbs pour le deuxième, clweb7-3.vbs pour le troisième, etc. Chaque fichier de script surveille un site web et un pool d’applications différents.
Le script suivant est destiné à des exemples uniquement et n’est pas explicitement pris en charge par Microsoft. L’utilisation de ce script dans un environnement en cluster IIS 7.0 ou version ultérieure est à vos propres risques.
'<begin script sample>
'This script provides high availability for IIS websites
'By default, it monitors the "Default Web Site" and "DefaultAppPool"
'To monitor another website, change the SITE_NAME below
'To monitor another application pool, change the APP_POOL_NAME below
'More thorough and application-specific health monitoring logic can be added to the script if needed
Option Explicit
DIM SITE_NAME
DIM APP_POOL_NAME
Dim START_WEB_SITE
Dim START_APP_POOL
Dim SITES_SECTION_NAME
Dim APPLICATION_POOLS_SECTION_NAME
Dim CONFIG_APPHOST_ROOT
Dim STOP_WEB_SITE
'Note:
'Replace this with the site and application pool you want to configure high availability for
'Make sure that the same website and application pool in the script exist on all cluster nodes. Note that the names are case-sensitive.
SITE_NAME = "Default Web Site"
APP_POOL_NAME = "DefaultAppPool"
START_WEB_SITE = 0
START_APP_POOL = 0
STOP_WEB_SITE = 1
SITES_SECTION_NAME = "system.applicationHost/sites"
APPLICATION_POOLS_SECTION_NAME = "system.applicationHost/applicationPools"
CONFIG_APPHOST_ROOT = "MACHINE/WEBROOT/APPHOST"
'Helper script functions
'Find the index of the website on this node
Function FindSiteIndex(collection, siteName)
Dim i
FindSiteIndex = -1
For i = 0 To (CInt(collection.Count) - 1)
If collection.Item(i).GetPropertyByName("name").Value = siteName Then
FindSiteIndex = i
Exit For
End If
Next
End Function
'Find the index of the application pool on this node
Function FindAppPoolIndex(collection, appPoolName)
Dim i
FindAppPoolIndex = -1
For i = 0 To (CInt(collection.Count) - 1)
If collection.Item(i).GetPropertyByName("name").Value = appPoolName Then
FindAppPoolIndex = i
Exit For
End If
Next
End Function
'Get the state of the website
Function GetWebSiteState(adminManager, siteName)
Dim sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod
Set sitesSection = adminManager.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)
Set sitesSectionCollection = sitesSection.Collection
index = FindSiteIndex(sitesSectionCollection, siteName)
If index = -1 Then
GetWebSiteState = -1
End If
Set siteSection = sitesSectionCollection(index)
GetWebSiteState = siteSection.GetPropertyByName("state").Value
End Function
'Get the state of the ApplicationPool
Function GetAppPoolState(adminManager, appPool)
Dim configSection, index, appPoolState
set configSection = adminManager.GetAdminSection(APPLICATION_POOLS_SECTION_NAME, CONFIG_APPHOST_ROOT)
index = FindAppPoolIndex(configSection.Collection, appPool)
If index = -1 Then
GetAppPoolState = -1
End If
GetAppPoolState = configSection.Collection.Item(index).GetPropertyByName("state").Value
End Function
'Start the w3svc service on this node
Function StartW3SVC()
Dim objWmiProvider
Dim objService
Dim strServiceState
Dim response
'Check to see if the service is running
set objWmiProvider = GetObject("winmgmts:/root/cimv2")
set objService = objWmiProvider.get("win32_service='w3svc'")
strServiceState = objService.state
If ucase(strServiceState) = "RUNNING" Then
StartW3SVC = True
Else
'If the service is not running, try to start it
response = objService.StartService()
'response = 0 or 10 indicates that the request to start was accepted
If ( response <> 0 ) and ( response <> 10 ) Then
StartW3SVC = False
Else
StartW3SVC = True
End If
End If
End Function
'Start the application pool for the website
Function StartAppPool()
Dim ahwriter, appPoolsSection, appPoolsCollection, index, appPool, appPoolMethods, startMethod, callStartMethod
Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
Set appPoolsSection = ahwriter.GetAdminSection(APPLICATION_POOLS_SECTION_NAME, CONFIG_APPHOST_ROOT)
Set appPoolsCollection = appPoolsSection.Collection
index = FindAppPoolIndex(appPoolsCollection, APP_POOL_NAME)
Set appPool = appPoolsCollection.Item(index)
'See if it is already started
If appPool.GetPropertyByName("state").Value = 1 Then
StartAppPool = True
Exit Function
End If
'Try To start the application pool
Set appPoolMethods = appPool.Methods
Set startMethod = appPoolMethods.Item(START_APP_POOL)
Set callStartMethod = startMethod.CreateInstance()
callStartMethod.Execute()
'If started return true, otherwise return false
If appPool.GetPropertyByName("state").Value = 1 Then
StartAppPool = True
Else
StartAppPool = False
End If
End Function
'Start the website
Function StartWebSite()
Dim ahwriter, sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod
Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
Set sitesSection = ahwriter.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)
Set sitesSectionCollection = sitesSection.Collection
index = FindSiteIndex(sitesSectionCollection, SITE_NAME)
Set siteSection = sitesSectionCollection(index)
if siteSection.GetPropertyByName("state").Value = 1 Then
'Site is already started
StartWebSite = True
Exit Function
End If
'Try to start site
Set siteMethods = siteSection.Methods
Set startMethod = siteMethods.Item(START_WEB_SITE)
Set executeMethod = startMethod.CreateInstance()
executeMethod.Execute()
'Check to see if the site started, if not return false
If siteSection.GetPropertyByName("state").Value = 1 Then
StartWebSite = True
Else
StartWebSite = False
End If
End Function
'Stop the website
Function StopWebSite()
Dim ahwriter, sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod, autoStartProperty
Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
Set sitesSection = ahwriter.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)
Set sitesSectionCollection = sitesSection.Collection
index = FindSiteIndex(sitesSectionCollection, SITE_NAME)
Set siteSection = sitesSectionCollection(index)
'Stop the site
Set siteMethods = siteSection.Methods
Set startMethod = siteMethods.Item(STOP_WEB_SITE)
Set executeMethod = startMethod.CreateInstance()
executeMethod.Execute()
End Function
'Cluster resource entry points. More details here:
'http://msdn.microsoft.com/en-us/library/aa372846(VS.85).aspx
'Cluster resource Online entry point
'Make sure the website and the application pool are started
Function Online( )
Dim bOnline
'Make sure w3svc is started
bOnline = StartW3SVC()
If bOnline <> True Then
Resource.LogInformation "The resource failed to come online because w3svc could not be started."
Online = False
Exit Function
End If
'Make sure the application pool is started
bOnline = StartAppPool()
If bOnline <> True Then
Resource.LogInformation "The resource failed to come online because the application pool could not be started."
Online = False
Exit Function
End If
'Make sure the website is started
bOnline = StartWebSite()
If bOnline <> True Then
Resource.LogInformation "The resource failed to come online because the web site could not be started."
Online = False
Exit Function
End If
Online = true
End Function
'Cluster resource offline entry point
'Stop the website
Function Offline( )
StopWebSite()
Offline = true
End Function
'Cluster resource LooksAlive entry point
'Check for the health of the website and the application pool
Function LooksAlive( )
Dim adminManager, appPoolState, configSection, i, appPoolName, appPool, index
i = 0
Set adminManager = CreateObject("Microsoft.ApplicationHost.AdminManager")
appPoolState = -1
'Get the state of the website
if GetWebSiteState(adminManager, SITE_NAME) <> 1 Then
Resource.LogInformation "The resource failed because the " & SITE_NAME & " web site is not started."
LooksAlive = false
Exit Function
End If
'Get the state of the Application Pool
if GetAppPoolState(adminManager, APP_POOL_NAME) <> 1 Then
Resource.LogInformation "The resource failed because Application Pool " & APP_POOL_NAME & " is not started."
LooksAlive = false
Exit Function
End if
'Web site and Application Pool state are valid return true
LooksAlive = true
End Function
'Cluster resource IsAlive entry point
'Do the same health checks as LooksAlive
'If a more thorough than what we do in LooksAlive is required, this should be performed here
Function IsAlive()
IsAlive = LooksAlive
End Function
'Cluster resource Open entry point
Function Open()
Open = true
End Function
'Cluster resource Close entry point
Function Close()
Close = true
End Function
'Cluster resource Terminate entry point
Function Terminate()
Terminate = true
End Function
'<end script sample>
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour