Compartilhar via


Como configurar o FTP para IIS em um cluster de failover do Windows Server

Este artigo descreve como configurar o FTP para o IIS (Serviços de Informações da Internet) 8.0 ou uma versão posterior em um cluster de failover do Windows Server. Os procedimentos neste artigo se aplicam somente ao serviço FTP.

Observação

Para obter mais informações sobre como configurar serviços Web em um cluster de failover, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:

970759 Configurando o Serviço de Publicação na World Wide Web do IIS em um cluster de failover do Windows Server

Número original do KB: 974603

Configurar alta disponibilidade para servidores FTP do IIS usando o Clustering de Failover

  1. Instale a função de Servidor Web em todos os nós de cluster. Se você estiver instalando no Windows Server 2012, não inclua a função "Servidor FTP". Se você estiver instalando no Windows Server 2012 R2 ou em uma versão posterior, inclua a função "Servidor FTP" na caixa. Para obter mais informações sobre o guia de implantação do IIS 8, visite o seguinte site: Abrir o Gerenciador do IIS (IIS 8)

  2. Instale o recurso Clustering de Failover em todos os nós do cluster e crie o cluster. Para obter mais informações, visite o seguinte site: Guia de implantação do cluster de failover

  3. Configure um compartilhamento de arquivos que será usado para a Configuração Compartilhada do IIS.

  4. Configure a Configuração Compartilhada do IIS em todos os nós de cluster.

  5. Configure arquivos offline para configuração compartilhada do IIS em todos os nós de cluster.

  6. Configure o site FTP e especifique o local de seu conteúdo em um nó de cluster.

  7. Configure a alta disponibilidade para seu site FTP criando um script genérico no Clustering de Failover.

Configurar um compartilhamento de arquivos que será usado para a configuração compartilhada do IIS

  1. Crie um usuário que acessará o compartilhamento que será usado para a configuração compartilhada do IIS.

  2. Crie o compartilhamento de arquivos. Esse compartilhamento será usado para armazenar a configuração compartilhada do IIS que será compartilhada entre o IIS em todos os nós de cluster. Há várias opções:

  3. Defina as permissões no compartilhamento que você criou na etapa 2. Conceda ao usuário que você criou na etapa 1 permissões de Controle Total para o compartilhamento de arquivos e permissões NTFS.

  4. Confirme se todos os nós de cluster podem navegar até o compartilhamento de arquivos. O caminho do compartilhamento de arquivos é \\<fileservername>\<sharename>.

Definir a configuração compartilhada do IIS em todos os nós de cluster

Em um dos nós do cluster, exporte a configuração compartilhada para o compartilhamento de arquivos:

  1. Navegue até Ferramentas Administrativas e selecione Gerenciador de Serviços de Informações da Internet (IIS).
  2. No painel esquerdo, selecione o nó do nome do servidor.
  3. Clique duas vezes no ícone Configuração Compartilhada.
  4. Na página Configuração Compartilhada, selecione Exportar Configuração no painel Ações (o painel direito) para exportar os arquivos de configuração do computador local para outro local.
  5. Na caixa de diálogo Configuração de Exportação , digite o caminho do compartilhamento de arquivos (\\<fileservername>\<sharename>) na caixa Caminho físico .
  6. Selecione Conectar como e digite o nome de usuário e a senha da conta de usuário que tem acesso ao compartilhamento no qual a configuração compartilhada está armazenada e selecione OK. Essa conta será usada para acessar o compartilhamento. Você deve usar uma conta restrita do Active Directory que não seja o administrador do domínio.
  7. Na caixa de diálogo Configuração de Exportação, digite uma senha que será usada para proteger as chaves de criptografia e selecione OK.
  8. Na página Configuração Compartilhada, marque a caixa de seleção Habilitar configuração compartilhada.
  9. Digite o caminho físico, a conta de usuário e a senha inserida anteriormente e selecione Aplicar no painel Ações .
  10. Na caixa de diálogo Senha das Chaves de Criptografia, digite a senha da chave de criptografia definida anteriormente e selecione OK.
  11. Na caixa de diálogo Configuração Compartilhada, selecione OK.
  12. Selecione OK.

Em cada um dos outros nós do cluster, use a configuração compartilhada que você acabou de exportar para o compartilhamento de arquivos:

  1. Navegue até Ferramentas Administrativas e selecione Gerenciador de Serviços de Informações da Internet (IIS).
  2. Selecione o nó do nome do servidor.
  3. Clique duas vezes no ícone Configuração Compartilhada.
  4. Na página Configuração Compartilhada, marque a caixa de seleção Habilitar configuração compartilhada.
  5. Digite o caminho físico do compartilhamento de arquivos (\\<fileservername>\<sharename>), a conta de usuário e a senha inserida anteriormente e selecione Aplicar no painel Ações .
  6. Na caixa de diálogo Senha das Chaves de Criptografia, digite a senha da chave de criptografia definida anteriormente e selecione OK.
  7. Na caixa de diálogo Configuração Compartilhada, selecione OK.
  8. Selecione OK.

Observação

Para obter mais informações sobre como definir configurações compartilhadas no IIS, consulte Configuração compartilhada.

Configurar arquivos offline para configuração compartilhada do IIS em todos os nós de cluster

Em cada nó do cluster, habilite Arquivos Offline:

  1. Instale o recurso Experiência Desktop. Para fazer isso, siga estas etapas:

    1. Navegue até Ferramentas Administrativas e selecione Gerenciador do Servidor.
    2. No painel esquerdo, selecione Recursos.
    3. Selecione Adicionar recursos no painel direito.
    4. Siga um destes procedimentos, conforme apropriado para sua versão do Windows:
  2. Faça o seguinte:
    Para Windows Server 2012, 2012 R2 e 2016, selecione Central de Sincronização no Painel de Controle e, em seguida, selecione Gerenciar arquivos offline.

  3. Selecione Ativar arquivos offline. Não reinicie o computador neste momento.

  4. Certifique-se de que o cache esteja definido como somente leitura. Para fazer isso, execute o seguinte comando em um prompt cmd elevado:

    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f
    
  5. Reinicie o computador.

  6. Navegue até o servidor de arquivos a partir do computador. Clique com o botão direito do mouse no compartilhamento que contém a configuração compartilhada do IIS e selecione Sempre Disponível Offline.

    Observação

    Se você configurar o compartilhamento de arquivos para estar altamente disponível no mesmo cluster de failover que hospeda os nós do IIS, a opção Sempre Disponível Offline não aparecerá quando você clicar com o botão direito do mouse no compartilhamento se o nó de cluster em que você está estiver hospedando o servidor de arquivos altamente disponível. Você terá que mover o aplicativo de servidor de arquivos de alta disponibilidade para outro nó.

  7. No Painel de Controle, abra Arquivos Offline. Selecione Abrir Central de Sincronização e, em seguida, selecione Agendar.

  8. Agende uma sincronização de arquivos offline para todos os dias ou de acordo com suas necessidades. Você também pode configurar a sincronização offline para ser executada a cada poucos minutos. Mesmo que você não configure um agendador, quando você altera algo no arquivo Applicationhost.config, a alteração é refletida no servidor Web.

Observação

Para obter mais informações sobre como configurar arquivos offline para uma configuração compartilhada no IIS, consulte Arquivos offline para configuração compartilhada.

Configure o site FTP e especifique o local de seu conteúdo em um nó de cluster

Localize o nó de cluster que possui o recurso de disco de cluster em que os arquivos de conteúdo do site FTP residirão:

  1. Navegue até Ferramentas Administrativas e selecione Gerenciador de Cluster de Failover.
  2. Conecte-se ao cluster. Se você estiver em um dos nós do cluster, o cluster aparecerá na lista automaticamente.
  3. Em "Armazenamento", localize o recurso de disco no qual o conteúdo do site FTP residirá. Para fazer isso, expanda a árvore de armazenamento do recurso de disco. Verifique se o armazenamento não é usado por nenhum outro aplicativo de alta disponibilidade no cluster. Você encontrará o armazenamento em "Armazenamento disponível".
  4. Observe o nó do cluster no qual esse recurso está online. Você configurará o IIS nesse nó de cluster.
  5. Observe o nome do recurso de disco de cluster. Você usará isso para os arquivos de conteúdo.

No nó de cluster no qual o recurso está online, configure o servidor FTP para usar o disco compartilhado para o conteúdo do site FTP:

  1. Navegue até Ferramentas Administrativas e selecione Gerenciador de Serviços de Informações da Internet (IIS).
  2. No painel esquerdo, expanda o nó do nome do servidor.
  3. Expanda Sites, clique com o botão direito do mouse em Sites e selecione Adicionar Site FTP.
  4. Na caixa de diálogo Adicionar Site FTP, digite o nome do site. Para o diretório de conteúdo, digite o local onde os arquivos de conteúdo do site FTP estão localizados. Esse é o local do recurso de disco de cluster que você anotou na etapa 5 do procedimento anterior.
  5. Defina as configurações restantes do site FTP.
  6. Selecione Concluir.

Configurar a alta disponibilidade para seu site FTP criando um script genérico no Gerenciador de Cluster de Failover

Para a última etapa de configurar a alta disponibilidade para o site FTP, configure o recurso de script genérico que será usado para monitorar o serviço FTP:

  1. Em cada nó de cluster, copie o script no final deste artigo para Windows\System32\inetsrv\Clusftp7.vbs.
  2. Navegue até Ferramentas Administrativas e selecione Gerenciador de Cluster de Failover.
  3. Conecte-se ao cluster. Se você estiver em um dos nós do cluster, o cluster aparecerá na lista automaticamente.
  4. Faça o seguinte:
    Para Windows Server 2012, 2012 R2 e 2016, clique com o botão direito do mouse em Funções e selecione Configurar Função para criá-la.
  5. Clique em Script genérico.
  6. Selecione o arquivo de script no seguinte caminho:
    %systemroot%\System32\Inetsrv\Clusftp7.vbs
  7. Defina o nome do CAP (Ponto de Acesso do Cliente) como o nome do site FTP que os clientes usarão para se conectar ao site FTP de alta disponibilidade. Especifique os IPs estáticos a serem usados para o CAP do site FTP. Se você estiver usando o DHCP (Dynamic Host Configuration Protocol), essa opção não será exibida.
  8. Na etapa Selecionar Armazenamento , selecione o disco compartilhado do cluster no qual os arquivos de conteúdo do site FTP residem. O armazenamento não deve ser usado por nenhum outro aplicativo de alta disponibilidade no cluster. Se o compartilhamento de arquivos usado para a configuração compartilhada do IIS estiver hospedado no mesmo cluster, um recurso de disco diferente deverá ser usado aqui.
  9. Depois de confirmar as configurações, o assistente criará o grupo de clusters, os recursos de cluster e as dependências entre os recursos e, em seguida, colocará os recursos online.

Observação

Para hospedar vários sites FTP de alta disponibilidade no mesmo cluster de failover, siga as mesmas etapas mencionadas anteriormente. Você pode apontar para o mesmo arquivo de script para todos os sites FTP no cluster se não tiver personalizado o script. No entanto, se você fizer alterações específicas para os sites FTP individuais, use um arquivo de script diferente para cada site FTP e armazenamento compartilhado clusterizado diferente. Por exemplo, para %systemroot%\System32\Inetsrv, useClusftp7.vbs o primeiro site FTP,Clftp7-2.vbspara o segundo,Clftp7-3.vbspara o terceiro e assim por diante. Cada arquivo de script monitora um site FTP diferente.

Importante

O script a seguir é apenas para fins de exemplo e não tem suporte explícito da Microsoft. O uso desse script em um ambiente clusterizado FTP do IIS 8.0 é feito por sua conta e risco.


'<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