Konfigurieren von FTP für IIS in einem Windows Server-Failovercluster

In diesem Artikel wird beschrieben, wie Sie FTP für Internetinformationsdienste (IIS) 8.0 oder eine höhere Version in einem Windows Server-Failovercluster konfigurieren. Die Verfahren in diesem Artikel gelten nur für den FTP-Dienst.

Hinweis

Weitere Informationen zum Konfigurieren von Webdiensten in einem Failovercluster finden Sie im folgenden Artikel der Microsoft Knowledge Base:

970759 Konfigurieren des IIS World Wide Web Publishing Service in einem Windows Server-Failovercluster

Gilt für: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Ursprüngliche KB-Nummer: 974603

Konfigurieren von Hochverfügbarkeit für IIS-FTP-Server mithilfe von Failoverclustering

  1. Installieren Sie die Webserverrolle auf allen Clusterknoten. Wenn Sie auf Windows Server 2012 installieren, schließen Sie die Rolle "FTP-Server" nicht ein. Wenn Sie auf Windows Server 2012 R2 oder einer höheren Version installieren, schließen Sie die im Lieferumfang enthaltene Rolle "FTP-Server" ein. Weitere Informationen zum Bereitstellungshandbuch für IIS 8 finden Sie auf der folgenden Website: Öffnen des IIS-Managers (IIS 8)

  2. Installieren Sie das Failoverclustering-Feature auf allen Clusterknoten, und erstellen Sie den Cluster. Weitere Informationen finden Sie auf der folgenden Website: Bereitstellungshandbuch für Failovercluster

  3. Richten Sie eine Dateifreigabe ein, die für die freigegebene IIS-Konfiguration verwendet wird.

  4. Konfigurieren Sie die freigegebene IIS-Konfiguration auf allen Clusterknoten.

  5. Konfigurieren Sie Offlinedateien für die freigegebene IIS-Konfiguration auf allen Clusterknoten.

  6. Konfigurieren Sie den FTP-Standort, und geben Sie den Speicherort des Inhalts auf einem Clusterknoten an.

  7. Konfigurieren Sie die Hochverfügbarkeit für Ihren FTP-Standort, indem Sie unter Failoverclustering ein generisches Skript erstellen.

Einrichten einer Dateifreigabe, die für die freigegebene IIS-Konfiguration verwendet wird

  1. Erstellen Sie einen Benutzer, der auf die Freigabe zugreift, die für die freigegebene IIS-Konfiguration verwendet wird.

  2. Erstellen Sie die Dateifreigabe. Diese Freigabe wird verwendet, um die freigegebene IIS-Konfiguration zu speichern, die von IIS auf allen Clusterknoten gemeinsam genutzt wird. Es gibt mehrere Optionen:

  3. Legen Sie die Berechtigungen für die Freigabe fest, die Sie in Schritt 2 erstellt haben. Erteilen Sie dem Benutzer, den Sie in Schritt 1 erstellt haben, Vollzugriffsberechtigungen für die Dateifreigabe und NTFS-Berechtigungen.

  4. Vergewissern Sie sich, dass alle Clusterknoten zur Dateifreigabe navigieren können. Der Pfad der Dateifreigabe ist \\<fileservername>\<sharename>.

Konfigurieren der freigegebenen IIS-Konfiguration auf allen Clusterknoten

Exportieren Sie auf einem der Clusterknoten die freigegebene Konfiguration in die Dateifreigabe:

  1. Navigieren Sie zu Verwaltung, und wählen Sie dann Internetinformationsdienste-Manager (IIS) aus.
  2. Wählen Sie im linken Bereich den Servernamenknoten aus.
  3. Doppelklicken Sie auf das Symbol Freigegebene Konfiguration .
  4. Wählen Sie auf der Seite Freigegebene Konfiguration im Bereich Aktionen (im rechten Bereich) die Option Konfiguration exportieren aus, um die Konfigurationsdateien vom lokalen Computer an einen anderen Speicherort zu exportieren.
  5. Geben Sie im Dialogfeld Konfiguration exportieren den Pfad der Dateifreigabe (\\<fileservername>\<sharename>) in das Feld Physischer Pfad ein.
  6. Wählen Sie Verbinden als aus, geben Sie dann den Benutzernamen und das Kennwort für das Benutzerkonto ein, das Zugriff auf die Freigabe hat, in der die freigegebene Konfiguration gespeichert ist, und wählen Sie dann OK aus. Dieses Konto wird für den Zugriff auf die Freigabe verwendet. Sie sollten ein eingeschränktes Active Directory-Konto verwenden, das nicht der Domänenadministrator ist.
  7. Geben Sie im Dialogfeld Konfiguration exportieren ein Kennwort ein, das zum Schutz der Verschlüsselungsschlüssel verwendet wird, und wählen Sie dann OK aus.
  8. Aktivieren Sie auf der Seite Freigegebene Konfiguration das Kontrollkästchen Freigegebene Konfiguration aktivieren .
  9. Geben Sie den physischen Pfad, das Benutzerkonto und das Kennwort ein, die Sie zuvor eingegeben haben, und klicken Sie dann im Bereich Aktionen auf Anwenden.
  10. Geben Sie im Dialogfeld Kennwort für Verschlüsselungsschlüssel das Kennwort für den Verschlüsselungsschlüssel ein, das Sie zuvor festgelegt haben, und wählen Sie dann OK aus.
  11. Wählen Sie im Dialogfeld Freigegebene Konfiguration die Option OK aus.
  12. Wählen Sie OK aus.

Verwenden Sie auf jedem der anderen Clusterknoten die freigegebene Konfiguration, die Sie soeben in die Dateifreigabe exportiert haben:

  1. Navigieren Sie zu Verwaltung, und wählen Sie dann Internetinformationsdienste-Manager (IIS) aus.
  2. Wählen Sie den Servernamenknoten aus.
  3. Doppelklicken Sie auf das Symbol Freigegebene Konfiguration .
  4. Aktivieren Sie auf der Seite Freigegebene Konfiguration das Kontrollkästchen Freigegebene Konfiguration aktivieren .
  5. Geben Sie den physischen Pfad der Dateifreigabe (\\<fileservername>\<sharename>), das Benutzerkonto und das Kennwort ein, die Sie zuvor eingegeben haben, und wählen Sie dann im Bereich Aktionendie Option Übernehmen aus.
  6. Geben Sie im Dialogfeld Kennwort für Verschlüsselungsschlüssel das Kennwort für den Verschlüsselungsschlüssel ein, das Sie zuvor festgelegt haben, und wählen Sie dann OK aus.
  7. Wählen Sie im Dialogfeld Freigegebene Konfiguration die Option OK aus.
  8. Wählen Sie OK aus.

Hinweis

Weitere Informationen zum Einrichten freigegebener Konfigurationen in IIS finden Sie auf der folgenden Microsoft-Website: Freigegebene Konfiguration

Konfigurieren von Offlinedateien für die freigegebene IIS-Konfiguration auf allen Clusterknoten

Aktivieren Sie auf jedem Clusterknoten Offlinedateien:

  1. Installieren Sie das Desktopdarstellungsfeature. Gehen Sie dazu wie folgt vor:

    1. Navigieren Sie zu Verwaltung, und wählen Sie dann Server-Manager aus.
    2. Wählen Sie im linken Bereich Features aus.
    3. Wählen Sie im rechten Bereich Features hinzufügen aus.
    4. Führen Sie je nach Windows-Version einen der folgenden Schritte aus:
  2. Gehen Sie wie folgt vor:
    Wählen Sie für Windows Server 2012, 2012 R2 und 2016 Synchronisierungscenter in Systemsteuerung und dann Offlinedateien verwalten aus.

  3. Wählen Sie Offlinedateien aktivieren aus. Starten Sie den Computer an diesem Punkt nicht neu.

  4. Stellen Sie sicher, dass der Cache schreibgeschützt ist. Führen Sie dazu den folgenden Befehl an einer Eingabeaufforderung mit erhöhten Rechten aus:

    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f
    
  5. Starten Sie den Computer neu.

  6. Navigieren Sie vom Computer zum Dateiserver. Klicken Sie mit der rechten Maustaste auf die Freigabe, die die freigegebene IIS-Konfiguration enthält, und wählen Sie dann Immer offline verfügbar aus.

    Hinweis

    Wenn Sie die Dateifreigabe so einrichten, dass sie auf demselben Failovercluster hochverfügbar ist, auf dem IIS-Knoten gehostet werden, wird die Option Offline immer verfügbar nicht angezeigt, wenn Sie mit der rechten Maustaste auf die Freigabe klicken, wenn der Clusterknoten, auf dem Sie sich befinden, den hochverfügbaren Dateiserver hostet. Sie müssen die hoch verfügbare Dateiserveranwendung auf einen anderen Knoten verschieben.

  7. Öffnen Sie Systemsteuerung Offlinedateien. Wählen Sie Synchronisierungscenter öffnen und dann Zeitplan aus.

  8. Planen Sie eine Offlinedateisynchronisierung für jeden Tag oder gemäß Ihren Anforderungen. Sie können die Offlinesynchronisierung auch so konfigurieren, dass sie alle paar Minuten ausgeführt wird. Auch wenn Sie keinen Planer einrichten, wird die Änderung auf dem Webserver wiedergegeben, wenn Sie etwas in der Applicationhost.config-Datei ändern.

Hinweis

Weitere Informationen zum Konfigurieren von Offlinedateien für eine freigegebene Konfiguration in IIS finden Sie unter Offlinedateien für die freigegebene Konfiguration.

Konfigurieren des FTP-Standorts und Angeben des Speicherorts des Inhalts auf einem Clusterknoten

Suchen Sie den Clusterknoten, der besitzer der Clusterdatenträgerressource ist, in dem sich die FTP-Websiteinhaltsdateien befinden:

  1. Navigieren Sie zu Verwaltung, und wählen Sie dann Failovercluster-Manager aus.
  2. Stellen Sie eine Verbindung mit dem Cluster her. Wenn Sie sich auf einem der Clusterknoten befinden, wird der Cluster automatisch in der Liste angezeigt.
  3. Suchen Sie unter "Speicher" die Datenträgerressource, auf der sich der FTP-Websiteinhalt befindet. Erweitern Sie dazu die Speicherstruktur für die Datenträgerressource. Stellen Sie sicher, dass der Speicher nicht von anderen Hochverfügbarkeitsanwendungen im Cluster verwendet wird. Sie finden den Speicher unter "Verfügbarer Speicher".
  4. Beachten Sie den Clusterknoten, auf dem diese Ressource online ist. Sie konfigurieren IIS auf diesem Clusterknoten.
  5. Notieren Sie sich den Namen der Clusterdatenträgerressource. Sie verwenden dies für die Inhaltsdateien.

Konfigurieren Sie auf dem Clusterknoten, auf dem die Ressource online ist, den FTP-Server für die Verwendung des freigegebenen Datenträgers für FTP-Websiteinhalte:

  1. Navigieren Sie zu Verwaltung, und wählen Sie dann Internetinformationsdienste-Manager (IIS) aus.
  2. Erweitern Sie im linken Bereich den Knoten Servername.
  3. Erweitern Sie Websites, klicken Sie mit der rechten Maustaste auf Websites, und wählen Sie dann FTP-Standort hinzufügen aus.
  4. Geben Sie im Dialogfeld FTP-Standort hinzufügen den Namen der Website ein. Geben Sie für das Inhaltsverzeichnis den Speicherort ein, an dem sich die FTP-Websiteinhaltsdateien befinden. Dies ist der Speicherort der Clusterdatenträgerressource, den Sie sich in Schritt 5 des vorherigen Verfahrens notiert haben.
  5. Konfigurieren Sie die verbleibenden FTP-Standorteinstellungen.
  6. Wählen Sie Fertig stellen aus.

Konfigurieren der Hochverfügbarkeit für Ihren FTP-Standort durch Erstellen eines generischen Skripts im Failovercluster-Manager

Richten Sie im letzten Schritt zum Konfigurieren der Hochverfügbarkeit für den FTP-Standort die generische Skriptressource ein, die zum Überwachen des FTP-Diensts verwendet wird:

  1. Kopieren Sie auf jedem Clusterknoten das Skript am Ende dieses Artikels in Windows\System32\inetsrv\Clusftp7.vbs.
  2. Navigieren Sie zu Verwaltung, und wählen Sie dann Failovercluster-Manager aus.
  3. Stellen Sie eine Verbindung mit dem Cluster her. Wenn Sie sich auf einem der Clusterknoten befinden, wird der Cluster automatisch in der Liste angezeigt.
  4. Gehen Sie wie folgt vor:
    Klicken Sie für Windows Server 2012, 2012 R2 und 2016 mit der rechten Maustaste auf Rollen, und wählen Sie dann Rolle konfigurieren aus, um sie zu erstellen.
  5. Klicken Sie auf Generisches Skript.
  6. Wählen Sie die Skriptdatei aus dem folgenden Pfad aus:
    %systemroot%\System32\Inetsrv\Clusftp7.vbs
  7. Legen Sie den Namen des Clientzugriffspunkts (CAP) auf den FTP-Standortnamen fest, den Clients zum Herstellen einer Verbindung mit dem HOCHverfügbarkeits-FTP-Standort verwenden. Geben Sie die statischen IP-Adressen an, die für die CAP des FTP-Standorts verwendet werden sollen. Wenn Sie DHCP (Dynamic Host Configuration Protocol) verwenden, wird diese Option nicht angezeigt.
  8. Wählen Sie im Schritt Speicher auswählen den freigegebenen Clusterdatenträger aus, auf dem sich die FTP-Websiteinhaltsdateien befinden. Der Speicher sollte von jeder anderen Hochverfügbarkeitsanwendung im Cluster nicht verwendet werden. Wenn die Dateifreigabe, die für die freigegebene IIS-Konfiguration verwendet wird, im selben Cluster gehostet wird, sollte hier eine andere Datenträgerressource verwendet werden.
  9. Nachdem Sie die Einstellungen bestätigt haben, erstellt der Assistent die Clustergruppe, Clusterressourcen und die Abhängigkeiten zwischen den Ressourcen und bringt die Ressourcen dann online.

Hinweis

Führen Sie zum Hosten mehrerer HOCHverfügbarkeits-FTP-Standorte im gleichen Failovercluster die gleichen Schritte aus, die zuvor erwähnt wurden. Sie können auf dieselbe Skriptdatei für alle FTP-Websites im Cluster verweisen, wenn Sie das Skript nicht angepasst haben. Wenn Sie jedoch Änderungen vornehmen, die für die einzelnen FTP-Websites spezifisch sind, verwenden Sie eine andere Skriptdatei für jeden FTP-Standort und einen anderen freigegebenen Clusterspeicher. Beispielsweise in %systemroot%\System32\Inetsrv, useClusftp7.vbs für die erste FTP-Website Clftp7-2.vbsfür die zweite,Clftp7-3.vbsfür die dritte usw. Jede Skriptdatei überwacht eine andere FTP-Website.

Wichtig

Das folgende Skript dient nur zu Beispielzwecken und wird von Microsoft nicht explizit unterstützt. Die Verwendung dieses Skripts in einer IIS 8.0 FTP-Clusterumgebung erfolgt auf eigenes Risiko.


'<begin script sample>

'This script provides high availability for IIS FTP websites
'The script is applicable to:
'   - Windows Server 2012: Microsoft FTP Service 7.5 for IIS 8.0 (available for download from microsoft.com)
'   - Windows Server 2012 R2 or a later version: FTP Service in the box

'More thorough and application-specific health monitoring logic can be added to the script if needed


Option Explicit



'Helper script functions


'Start the FTP service on this node
Function StartFTPSVC()

    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='ftpsvc'")
    strServiceState = objService.state

    If ucase(strServiceState) = "RUNNING" Then
        StartFTPSVC = 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
            StartFTPSVC = False
        Else
            StartFTPSVC = True
        End If
    End If

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 FTP service is started
Function Online( )

    Dim bOnline
    'Make sure FTP service is started
    bOnline = StartFTPSVC()

    If bOnline <> True Then
        Resource.LogInformation "The resource failed to come online because ftpsvc could not be started."
        Online = False
        Exit Function
    End If

    Online = true

End Function

'Cluster resource offline entry point
'On offline, do nothing.
Function Offline( )

    Offline = true

End Function


'Cluster resource LooksAlive entry point
'Check for the state of the FTP service
Function LooksAlive( )

    Dim objWmiProvider
    Dim objService
    Dim strServiceState

    set objWmiProvider = GetObject("winmgmts:/root/cimv2")
    set objService = objWmiProvider.get("win32_service='ftpsvc'")
    strServiceState = objService.state

    if ucase(strServiceState) = "RUNNING" Then
LooksAlive = True
    Else
LooksAlive = False
    End If

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