Migrar do Linux para uma implantação de nuvem híbrida usando a Sincronização de Arquivos do Azure
Este artigo sobre migração é um dos vários que envolvem as palavras-chave NFS e Sincronização de Arquivos do Azure. Verifique se este artigo se aplica ao seu cenário:
- Fonte de dados: NAS (Armazenamento Conectado à Rede)
- Rota de migração: servidor Linux com SAMBA ⇒ Windows Server 2012 R2 ou posterior ⇒ sincronização com os compartilhamentos de arquivo do Azure
- Cache de arquivos locais: sim, o objetivo final é a implantação da Sincronização de Arquivos do Azure.
Se seu cenário for diferente, analise a tabela de guias de migração.
A Sincronização de Arquivos do Azure funciona em instâncias do Windows Server com DAS (Armazenamento com Conexão Direta). Ele não é compatível com sincronização de e para clientes Linux, ou com compartilhamento de protocolo SMB (Server Message Block) remoto ou compartilhamentos de NFS (Sistema de Arquivos de Rede).
Como resultado, para transformar os serviços de arquivo em uma implantação híbrida, é necessário fazer a migração para o Windows Server. Este artigo orienta o planejamento e a execução dessa migração.
Aplica-se a
Tipo de compartilhamento de arquivos | SMB | NFS |
---|---|---|
Compartilhamentos de arquivos padrão (GPv2), LRS/ZRS | ||
Compartilhamentos de arquivos padrão (GPv2), GRS/GZRS | ||
Compartilhamento de arquivos premium (FileStorage), LRS/ZRS |
Metas de migração
O objetivo é mover os compartilhamentos do servidor Samba do Linux para uma instância do Windows Server. Em seguida, utilizar a Sincronização de Arquivos do Azure para a implantação em nuvem híbrida. Essa migração precisa ser feita de forma a garantir a integridade dos dados de produção e a disponibilidade durante a migração. O segundo requer um mínimo de tempo de inatividade, para que ele possa se ajustar ou ter uma janela um pouco maior do que a da manutenção regular.
Visão geral da migração
Conforme mencionado no artigo Visão geral da Migração do Arquivos do Azure, é importante usar as ferramenta de cópia e a abordagem corretas. O servidor Samba do Linux está expondo compartilhamentos SMB diretamente em sua rede local. O Robocopy, configurado no Windows Server, é a melhor maneira de mover seus arquivos nesse cenário de migração.
Se não estiver executando o Samba no servidor Linux e, mas quer migrar pastas para uma implantação híbrida no Windows Server, você pode usar as ferramentas de cópia do Linux em vez do Robocopy. Esteja atento aos recursos de fidelidade da ferramenta de cópia. Analise a seção de noções básicas da migração do artigo Visão geral da migração para saber o que procurar em uma ferramenta de cópia.
Fase 1: identificar quantos compartilhamentos de arquivos do Azure você precisa
Nesta etapa, você determinará quantos compartilhamentos de arquivo do Azure são necessários. Uma única instância do Windows Server (ou cluster) pode sincronizar até 30 compartilhamentos de arquivos do Azure.
Você pode ter mais pastas em seus volumes que você compartilha localmente no momento como compartilhamentos SMB para seus usuários e aplicativos. A maneira mais fácil de descrever esse cenário é prever um compartilhamento local que mapeia 1:1 para um compartilhamento de arquivos do Azure. Se você tem um número pequeno suficiente de compartilhamentos, ou seja, menos de 30 para uma só instância do Windows Server, é recomendado um mapeamento de 1:1.
Se você tem mais de 30 compartilhamentos, geralmente não é necessário fazer o mapeamento de 1:1 de um compartilhamento local para um compartilhamento de arquivo do Azure. Considere as opções a seguir.
Agrupamento de compartilhamentos
Por exemplo, se o departamento de RH (Recursos Humanos) tiver 15 compartilhamentos, considere o armazenamento de todos os dados de RH em um só compartilhamento de arquivo do Azure. O armazenamento de vários compartilhamentos locais em um compartilhamento de arquivos do Azure não impede que você crie os 15 compartilhamentos SMB usuais em sua instância local do Windows Server. Isso significa apenas que você organiza as pastas raiz desses 15 compartilhamentos como subpastas em uma pasta comum. Em seguida, sincronize essa pasta comum com um compartilhamento de arquivos do Azure. Dessa forma, apenas um único compartilhamento de arquivos do Azure na nuvem é necessário para esse grupo de compartilhamentos locais.
Sincronização de volume
A Sincronização de Arquivos do Azure dá suporte à sincronização da raiz de um volume para um compartilhamento de arquivos do Azure. Se você sincronizar a raiz do volume, todas as subpastas e arquivos vão para o mesmo compartilhamento de arquivos do Azure.
A sincronização da raiz do volume nem sempre é a melhor opção. Há benefícios em sincronizar várias localizações. Por exemplo, isso ajuda a manter um menor número de itens por escopo de sincronização. Testamos os compartilhamentos de arquivo do Azure e a Sincronização de Arquivos do Azure com 100 milhões de itens (arquivos e pastas) por compartilhamento. Mas a prática recomendada é tentar manter o número abaixo de 20 ou 30 milhões em um só compartilhamento. A configuração da Sincronização de Arquivos do Azure com um número menor de itens traz benefícios não só para a sincronização de arquivos, mas também para cenários como estes:
- O exame inicial do conteúdo da nuvem pode ser concluído com mais rapidez, o que diminui a espera para que o namespace apareça em um servidor habilitado para a Sincronização de Arquivos do Azure.
- A restauração do lado da nuvem de um instantâneo de compartilhamento de arquivos do Azure será mais rápida.
- A recuperação de desastres de um servidor local pode acelerar significativamente.
- As alterações feitas diretamente em um compartilhamento de arquivo do Azure (fora da sincronização) podem ser detectadas e sincronizadas com mais rapidez.
Dica
Se você não sabe quantos arquivos e pastas tem, confira a ferramenta TreeSize da JAM Software GmbH.
Uma abordagem estruturada para um mapa de implantação
Antes de implantar o armazenamento em nuvem em uma etapa posterior, é importante criar um mapa entre pastas locais e compartilhamentos de arquivos do Azure. Esse mapeamento informará quantos e quais recursos do grupo de sincronização da Sincronização de Arquivos do Azure você provisionará. Um grupo de sincronização vincula o compartilhamento de arquivos do Azure e a pasta em seu servidor em conjunto e estabelece uma conexão de sincronização.
Para decidir de quantos compartilhamentos de arquivo do Azure você precisa, examine os limites e as práticas recomendadas a seguir. Isso ajudará você a otimizar seu mapa.
Um servidor no qual o agente da Sincronização de Arquivos do Azure está instalado pode ser sincronizado com até 30 compartilhamentos de arquivo do Azure.
Um compartilhamento de arquivo do Azure é implantado em uma conta de armazenamento. Essa organização faz com que a conta de armazenamento seja uma meta de escala para números de desempenho, como IOPS e taxa de transferência.
Preste atenção às limitações de IOPS de uma conta de armazenamento ao implantar compartilhamentos de arquivo do Azure. O ideal seria mapear os compartilhamentos de arquivo um a um com as contas de armazenamento. No entanto, isso nem sempre é possível devido a vários limites e restrições, tanto da organização quanto do Azure. Quando não for possível ter apenas um compartilhamento de arquivo implantado em uma conta de armazenamento, considere quais compartilhamentos serão altamente ativos e quais serão menos ativos para garantir que os compartilhamentos de arquivos mais frequentes não sejam colocados na mesma conta de armazenamento.
Se você planeja transferir para o Azure um aplicativo que usará o compartilhamento de arquivo do Azure de modo nativo, talvez seja necessário mais desempenho no compartilhamento de arquivo do Azure. Se esse tipo de uso for uma possibilidade, mesmo que futura, é melhor criar um só compartilhamento de arquivo Standard do Azure na respectiva conta de armazenamento.
Há um limite de 250 contas de armazenamento por assinatura por região do Azure.
Dica
Considerando essas informações, geralmente é necessário agrupar várias pastas de nível superior dos volumes em um novo diretório raiz comum. Em seguida, você sincroniza esse novo diretório raiz e todas as pastas que você agrupou para ele para um único compartilhamento de arquivos do Azure. Essa técnica permite que você permaneça dentro do limite de 30 sincronizações de compartilhamento de arquivos do Azure por servidor.
Esse agrupamento em uma raiz comum não afeta o acesso aos dados. As ACLs continuam como estão. Você só precisa ajustar os caminhos dos compartilhamentos (como compartilhamentos SMB ou NFS) que estão nas pastas do servidor local que foram alteradas para uma raiz comum. Nada mais muda.
Importante
O vetor de escala mais importante da Sincronização de Arquivos do Azure é o número de itens (arquivos e pastas) que precisam ser sincronizados. Examine os destinos de escala de sincronização de arquivos do Azure para obter mais detalhes.
É uma prática recomendada manter o número de itens por escopo de sincronização baixo. Esse é um fator importante a ser considerado no mapeamento de pastas para compartilhamentos de arquivos do Azure. Sincronização de Arquivos do Azure é testado com 100 milhões itens (arquivos e pastas) por compartilhamento. Mas geralmente é melhor manter o número de itens abaixo de 20 ou 30 milhões em um só compartilhamento. Divida o namespace em vários compartilhamentos se você começar a exceder esses números. Você pode continuar a agrupar vários compartilhamentos locais no mesmo compartilhamento de arquivos do Azure se ficar mais abaixo desses números. Essa prática fornecerá espaço para crescer.
Na sua situação, é possível que um conjunto de pastas seja sincronizado logicamente com o mesmo compartilhamento de arquivo do Azure (usando a nova abordagem de pasta raiz comum já mencionada). Mas talvez ainda seja melhor reagrupar as pastas para que elas sejam sincronizadas com dois compartilhamentos de arquivo do Azure em vez de um. Você pode usar essa abordagem para manter o número de arquivos e pastas por compartilhamento de arquivos balanceados pelo servidor. Você também pode dividir os compartilhamentos locais e sincronizá-los entre mais servidores locais adicionando a capacidade de sincronização com mais 30 compartilhamentos de arquivo do Azure por servidor extra.
Cenários e considerações comuns de sincronização de arquivos
# | Cenário de sincronização | Com suporte | Considerações (ou limitações) | Solução (ou solução alternativa) |
---|---|---|---|---|
1 | Servidor de arquivos com vários discos/volumes e vários compartilhamentos para o mesmo compartilhamento de arquivos do Azure de destino (consolidação) | No | Um compartilhamento de arquivos do Azure de destino (ponto de extremidade de nuvem) dá suporte apenas à sincronização com um grupo de sincronização. Um grupo de sincronização dá suporte apenas a um ponto de extremidade de servidor por servidor registrado. |
1) Comece sincronizando um disco (seu volume raiz) para direcionar o compartilhamento de arquivos do Azure. Começar com o maior disco/volume ajudará com os requisitos de armazenamento local. Configure a camada de nuvem para colocar todos os dados em camadas na nuvem, liberando assim espaço no disco do servidor de arquivos. Mova dados de outros volumes/compartilhamentos para o volume atual que está sendo sincronizado. Continue as etapas uma a uma até que todos os dados estejam em camadas para nuvem/migrados. 2) Direcione um volume raiz (disco) por vez. Use a camada de nuvem para colocar todos os dados em camadas para direcionar o compartilhamento de arquivos do Azure. Remova o ponto de extremidade do servidor do grupo de sincronização, recrie o ponto de extremidade com o próximo volume/disco raiz, sincronize e repita o processo. Observação: a reinstalação do agente pode ser necessária. 3) Recomendar o uso de vários compartilhamentos de arquivos do Azure de destino (conta de armazenamento igual ou diferente com base nos requisitos de desempenho) |
2 | Servidor de arquivos com volume único e vários compartilhamentos para o mesmo compartilhamento de arquivos do Azure de destino (consolidação) | Yes | Não é possível ter vários pontos de extremidade de servidor por servidor registrado sincronizando com o mesmo compartilhamento de arquivos do Azure de destino (o mesmo que acima) | Raiz de sincronização do volume que contém vários compartilhamentos ou pastas de nível superior. Consulte Conceito de agrupamento de compartilhamento e Sincronização de volume para obter mais informações. |
3 | Servidor de arquivos com vários compartilhamentos e/ou volumes para vários compartilhamentos de arquivos do Azure em uma única conta de armazenamento (mapeamento de compartilhamento 1:1) | Sim | Uma única instância do Windows Server (ou cluster) pode sincronizar até 30 compartilhamentos de arquivos do Azure. Uma conta de armazenamento é um destino de escala para desempenho. IOPS e taxa de transferência são compartilhados entre compartilhamentos de arquivos. Mantenha o número de itens por grupo de sincronização em 100 milhões de itens (arquivos e pastas) por compartilhamento. O ideal é ficar abaixo de 20 ou 30 milhões por ação. |
1) Use vários grupos de sincronização (número de grupos de sincronização = número de compartilhamentos de arquivos do Azure com os quais sincronizar). 2) Somente 30 compartilhamentos podem ser sincronizados neste cenário por vez. Se você tiver mais de 30 compartilhamentos nesse servidor de arquivos, use Conceito de agrupamento de compartilhamento e Sincronização de volume para reduzir o número de pastas raiz ou de nível superior na origem. 3) Use servidores adicionais de Sincronização de Arquivos no local e divida/mova dados para esses servidores para contornar as limitações no servidor Windows de origem. |
4 | Servidor de arquivos com vários compartilhamentos e/ou volumes para vários compartilhamentos de arquivos do Azure em diferentes contas de armazenamento (mapeamento de compartilhamento 1:1) | Sim | Uma única instância do Windows Server (ou cluster) pode sincronizar até 30 compartilhamentos de arquivos do Azure. Mantenha o número de itens por grupo de sincronização em 100 milhões de itens (arquivos e pastas) por compartilhamento. O ideal é ficar abaixo de 20 ou 30 milhões por ação. |
Mesma abordagem que a mencionada acima |
5 | Vários servidores de arquivos com um único (volume raiz ou compartilhamento) para o mesmo compartilhamento de arquivos do Azure de destino (consolidação) | Não | Um grupo de sincronização não pode usar o ponto de extremidade de nuvem (compartilhamento de arquivos do Azure) já configurado em outro grupo de sincronização. Embora um grupo de sincronização possa ter pontos de extremidade de servidor em servidores de arquivos diferentes, os arquivos não podem ser distintos. |
Siga as diretrizes no Cenário nº 1 acima com consideração adicional sobre como direcionar um servidor de arquivos por vez. |
Criar uma tabela de mapeamento
Use as informações anteriores para determinar quantos compartilhamentos de arquivo do Azure são necessários e quais dos dados existentes serão enviados para qual compartilhamento de arquivo do Azure.
Crie uma tabela para registrar suas conclusões que possa ser consultada sempre que necessário. Manter-se organizado é importante porque pode ser fácil perder detalhes do seu plano de mapeamento quando você estiver provisionando muitos recursos do Azure de uma vez. Baixe o arquivo do Excel a seguir para usá-lo como um modelo na criação do mapeamento.
Baixe um modelo de mapeamento de namespace. |
Fase 2: provisionar uma instância adequada do Windows Server local
Crie uma instância do Windows Server 2022 como uma máquina virtual ou um servidor físico. O Windows Server 2012 R2 é o requisito mínimo. O cluster de failover do Windows Server também é compatível.
Provisione ou adicione o DAS (armazenamento com conexão direta). Não há suporte para NAS (armazenamento anexado à rede).
A quantidade de armazenamento provisionado pode ser menor do que o que está em uso no servidor Samba do Linux, se for usado o recurso camadas de nuvem da Sincronização de Arquivos do Azure.
A quantidade de armazenamento que você provisiona pode ser menor do que a que está usando atualmente no seu servidor Samba do Linux. Esta configuração requer que se use também o recurso camada de nuvem da Sincronização de Arquivos do Azure. No entanto, ao copiar os arquivos dos espaços do servidor Samba do Linux, que é maior, para o volume menor do Windows Server em uma fase posterior, você precisará trabalhar em lotes:
- Mova um conjunto de arquivos que caibam no disco.
- Permita a participação da Sincronização de Arquivos do Azure e da camada de nuvem.
- Quando for criado mais espaço livre no volume, prossiga com o próximo lote de arquivos. Como alternativa, analise o comando RoboCopy na próxima seção RoboCopy para usar a nova
/LFSM
opção. O uso do/LFSM
pode simplificar muito os trabalhos do Robocopy, mas não é compatível com algumas outras opções do Robocopy das quais você pode depender.
Para evitar essa abordagem de envio em lote, provisione na instância do Windows Server, o espaço equivalente que os arquivos ocupam no servidor Samba do Linux. Considere habilitar a eliminação de duplicação no Windows. Se não quiser permanecer para sempre com essa grande quantidade de armazenamento na instância do Windows Server, você pode reduzir o tamanho do volume após a migração e antes de ajustar as políticas de camadas de nuvem. Isso cria um cache local menor de seus compartilhamentos de arquivos do Azure.
A configuração do recurso (computação e RAM) da instância do Windows Server que será implantada depende principalmente do número de itens (arquivos e pastas) que serão sincronizados. Se estiver em dúvida, recomenda-se uma configuração de alto desempenho.
Observação
O artigo vinculado anteriormente apresenta uma tabela com uma escala para a memória do servidor (RAM). Você pode escolher uma quantidade menor para o servidor, mas assim a sincronização inicial pode levar muito mais tempo.
Fase 3: implantar o recurso em nuvem da Sincronização de Arquivos do Azure
Para concluir esta etapa, você precisa das credenciais da sua assinatura do Azure.
O recurso principal a ser Sincronização de Arquivos do Azure é chamado de Serviço de Sincronização de Armazenamento. Recomendamos que você implante apenas um para todos os servidores que estão sincronizando o mesmo conjunto de arquivos agora ou no futuro. Crie vários Serviços de Sincronização de Armazenamento somente se você tiver conjuntos distintos de servidores que nunca devem trocar dados. Por exemplo, você pode ter servidores que nunca devem sincronizar o mesmo compartilhamento de arquivos do Azure. Caso contrário, a prática recomendada é usar somente um Serviço de Sincronização de Armazenamento.
Escolha uma região do Azure para seu Serviço de Sincronização de Armazenamento próximo à sua localização. Todos os outros recursos de nuvem precisam ser implantados no mesma região. Para simplificar o gerenciamento, crie um novo grupo de recursos em sua assinatura que armazene recursos de sincronização e armazenamento.
Para obter mais informações, confira a seção sobre como implantar o Serviço de Sincronização de Armazenamento no artigo sobre como implantar a Sincronização de Arquivos do Azure. Siga somente essa seção do artigo. Haverá links para outras seções do artigo em etapas posteriores.
Fase 4: implantar recursos de armazenamento do Azure
Nesta fase, consulte a tabela de mapeamento da Fase 1 para registrar o provisionamento do número correto de contas de armazenamento do Azure e seus respectivos compartilhamentos de arquivos.
Um compartilhamento de arquivos do Azure é armazenado na nuvem em uma conta de armazenamento do Azure. Outro nível de considerações de desempenho se aplica aqui.
Se você tem compartilhamentos altamente ativos (compartilhamentos usados por muitos usuários e/ou aplicativos), dois compartilhamentos de arquivo do Azure podem atingir o limite de desempenho de uma conta de armazenamento.
Uma prática recomendada é implantar contas de armazenamento com um compartilhamento de arquivos cada. Você pode agrupar vários compartilhamentos de arquivo do Azure na mesma conta de armazenamento em caso de compartilhamentos de arquivamento ou de pouca atividade nos compartilhamentos.
Essas considerações se aplicam mais ao acesso direto à nuvem (por meio de uma VM do Azure) do que à Sincronização de Arquivos do Azure. Se você planeja usar apenas a Sincronização de Arquivos do Azure nesses compartilhamentos, basta agrupar vários deles em uma só conta de armazenamento do Azure.
Se você já fez uma lista dos seus compartilhamentos, mapeie cada um deles para a conta de armazenamento na qual residirá.
Na fase anterior, você determinou o número apropriado de compartilhamentos. Nesta etapa, você tem um mapeamento de contas de armazenamento para compartilhamentos de arquivo. Agora, implante o número apropriado de contas de armazenamento do Azure com o número apropriado de compartilhamentos de arquivos do Azure.
Certifique-se de que a região de cada uma de suas contas de armazenamento seja a mesma e corresponda à região do recurso de serviço de sincronização de armazenamento que você já implantou.
Cuidado
Se você criar um compartilhamento de arquivo do Azure com um limite de 100 TiB, esse compartilhamento poderá usar apenas as opções de armazenamento com redundância local ou com redundância de zona. Considere suas necessidades de redundância de armazenamento antes de usar compartilhamentos de arquivos de 100 TiB.
Os compartilhamentos de arquivos do Azure ainda são criados com um limite de 5 TiB por padrão. Siga as etapas em Criar um compartilhamento de arquivo do Azure para criar um compartilhamento de arquivo grande.
Outra consideração ao implantar uma conta de armazenamento é a redundância do Armazenamento do Azure. Consulte Opções de redundância de armazenamento do Azure.
Os nomes de seus recursos também são importantes. Por exemplo, se você agrupar vários compartilhamentos para o departamento de RH em uma conta de armazenamento do Azure, deverá nomear a conta de armazenamento adequadamente. Da mesma forma, ao nomear os compartilhamentos de arquivo do Azure, use nomes semelhantes aos usados para as contrapartes locais.
Fase 5: implantar o agente da Sincronização de Arquivos do Azure
Nesta seção, você instalará o agente de Sincronização de Arquivos do Azure em sua instância do Windows Server.
O Guia de Implantação explica que você precisa desativar a Configuração de segurança reforçada do Internet Explorer. Essa medida de segurança não é aplicável com a Sincronização de Arquivos do Azure. Essa desativação permite que você se autentique no Azure sem nenhum problema.
Abra o PowerShell. Instale os módulos do PowerShell necessários usando os comandos a seguir. Instale o módulo completo e o provedor do NuGet quando isso for solicitado.
Install-Module -Name Az -AllowClobber
Install-Module -Name Az.StorageSync
Se houver algum problema para acessar a Internet por meio do servidor, este é o momento de solucioná-lo. Sincronização de Arquivos do Azure usa qualquer conexão de rede disponível com a Internet. Também há suporte para exigir um servidor proxy para acessar a Internet. Você pode configurar um proxy para o computador todo agora ou, durante a instalação do agente, especificar um proxy que só a Sincronização de Arquivos do Azure usará.
Se a configuração de um proxy significa que você precisa abrir os firewalls para o servidor, essa abordagem pode ser aceitável para você. No final da instalação do servidor, depois de concluir o registro do servidor, um relatório de conectividade de rede mostrará as URLs exatas do ponto de extremidade no Azure que Sincronização de Arquivos do Azure precisa se comunicar com a região que você selecionou. O relatório também informa por que a comunicação é necessária. Você pode usar o relatório para bloquear os firewalls relacionados ao servidor para URLs específicas.
Você também pode usar uma abordagem mais conservadora na qual os firewalls não são abertos amplamente. Nesse caso, você pode limitar o servidor para se comunicar com namespaces de DNS de nível superior. Para obter mais informações, consulte Configurações de firewall e proxy da Sincronização de Arquivos do Azure . Siga suas próprias práticas recomendadas de rede.
No final do assistente de instalação do servidor, um assistente de registro do servidor será aberto. Registre o servidor no recurso do Azure do serviço de sincronização de armazenamento anteriormente.
Essas etapas são descritas mais detalhadamente no guia de implantação, que inclui os módulos do PowerShell que você deve instalar primeiro: Instalação do agente da Sincronização de Arquivos do Azure.
Use o agente mais recente. É possível baixá-lo do Centro de Download da Microsoft: Agente de Sincronização de Arquivos do Azure.
Após o sucesso da instalação e do registro do servidor, você pode confirmar que concluiu esta etapa com êxito. Vá até o recurso do Serviço de Sincronização de Armazenamento no portal do Azure. No menu à esquerda, acesse Servidores registrados. Você verá o servidor listado lá.
Fase 6: configurar a Sincronização de Arquivos na implantação do Azure no Windows Server
Para esse processo, a instância local do Windows Server registrado deve estar pronta e conectada à internet.
Esta etapa reúne todos os recursos e as pastas que você definiu na instância do Windows Server durante as etapas anteriores.
- Entre no portal do Azure.
- Localize o recurso do serviço de sincronização de armazenamento.
- Crie um novo grupo de sincronização dentro do recurso do serviço de sincronização de armazenamento para cada compartilhamento de arquivo do Azure. Na terminologia da Sincronização de Arquivos do Azure, o compartilhamento de arquivo do Azure se tornará um ponto de extremidade de nuvem na topologia de sincronização que você está descrevendo com a criação de um grupo de sincronização. Ao criar o grupo de sincronização, dê a ele um nome familiar para que você reconheça qual conjunto de arquivos é sincronizado lá. Certifique-se de fazer referência ao compartilhamento de arquivos do Azure com um nome correspondente.
- Depois que você criar o grupo de sincronização, uma linha para ele será exibida na lista de grupos de sincronização. Selecione o nome (um link) para exibir o conteúdo do grupo de sincronização. Você verá o compartilhamento de arquivos do Azure em Pontos de extremidade de nuvem.
- Localize o botão Adicionar Ponto de Extremidade do Servidor. A pasta no servidor local que você provisionar se tornará o caminho para esse ponto de extremidade do servidor.
Importante
A camada de nuvem é o recurso AFS (Sincronização de Arquivos do Azure) que permite que o servidor local tenha menos capacidade de armazenamento do que o armazenado na nuvem, mas que tenha o namespace completo disponível. Dados importantes do local também são armazenados em cache localmente para desempenho rápido nos acessos. A camada de nuvem é um recurso opcional para cada ponto de extremidade do servidor da Sincronização de Arquivos do Azure.
Aviso
Se você provisionou menos armazenamento em volumes do Windows Server do que os dados usados no servidor Samba do Linux, a camada de nuvem é obrigatória. Se você não ativar a camadas de nuvem, o servidor não liberará espaço para armazenar todos os arquivos. Defina a política de camadas, temporariamente para a migração, para 99% de espaço livre para um volume. Não esqueça de retornar as configurações de camadas de nuvem após a conclusão da migração e defina a política para longo prazo usando um nível mais útil de liberação de espaço.
Repita as etapas da criação do grupo de sincronização e da adição da pasta de servidor correspondente como ponto de extremidade do servidor, para todos os compartilhamentos de arquivos e locais de servidor que precisam ser configurados para sincronização.
Depois de criar todos os pontos de extremidade do servidor, a sincronização está funcionando. Você pode criar um arquivo de teste e ver a sincronização entre o local do servidor com o compartilhamento de arquivos do Azure conectado (conforme descrito pelo ponto de extremidade de nuvem no grupo de sincronização).
Os dois locais (as pastas do servidor e os compartilhamentos de arquivos do Azure) ficam vazios, aguardando dados. A próxima etapa incia a cópia dos arquivos para a instância do Windows Server para que a Sincronização de Arquivos do Azure possa movê-los para a nuvem. Se você habilitou a camada de nuvem, o servidor começará a transmitir os arquivos se ficar sem capacidade nos volumes locais.
Fase 7: Robocopy
A abordagem básica da migração é usar o Robocopy para copiar arquivos e usar a Sincronização de Arquivos do Azure para fazer a sincronização.
Execute a primeira cópia local para a pasta de destino do Windows Server:
- Identifique o primeiro local em seu servidor Samba do Linux.
- Identifique a pasta correspondente na instância do Windows Server que já tem a Sincronização de Arquivos do Azure configurada nela.
- Inicie a cópia usando o RoboCopy.
O comando Robocopy a seguir copia arquivos do armazenamento do servidor Samba do Linux para a pasta de destino do Windows Server. O Windows Server sincroniza com os compartilhamentos de arquivos do Azure.
Se você provisionou menos armazenamento na instância do Windows Server do que os arquivos ocupam no servidor Samba do Linux, então você configurou a camada de nuvem. Conforme o volume do Windows Server local fica cheio, são iniciados a camada de nuvem e os arquivos da camada que já foram sincronizados com êxito. A camada de nuvem gera espaço suficiente para continuar a cópia do servidor Samba do Linux. A camada de nuvem faz verificações uma vez por hora para verificar o que foi sincronizado e liberar espaço em disco para atingir os 99% de espaço livre do volume.
É possível que o Robocopy mova arquivos mais rápido do que a sincronização com a nuvem e a camada local, fazendo com que o disco local fique sem espaço. Nesse momento ocorrerá uma falha no Robocopy. Recomenda-se que você trabalhe nos compartilhamentos em uma sequência de etapas que impeça a falha. Por exemplo, não inicie trabalhos de Robocopy para todos os compartilhamentos ao mesmo tempo. Ou mova compartilhamentos que caibam no espaço livre na instância do Windows Server. Se o trabalho do Robocopy falhar, você pode executar novamente o comando, desde que use a seguinte opção de espelhamento/limpeza:
robocopy <SourcePath> <Dest.Path> /MT:20 /R:2 /W:1 /B /MIR /IT /COPY:DATSO /DCOPY:DAT /NP /NFL /NDL /XD "System Volume Information" /UNILOG:<FilePathAndName>
Comutador | Significado |
---|---|
/MT:n |
Permite que o Robocopy execute multithreading. O padrão de n é 8. O máximo é 128 threads. Embora uma alta contagem de threads ajude a saturar a largura de banda disponível, isso não significa que a migração sempre será mais rápida com mais threads. Testes com Arquivos do Azure indicam que entre 8 e 20 mostra um desempenho equilibrado para uma execução de cópia inicial. Execuções /MIR subsequentes são afetadas progressivamente pela computação disponível vs. largura de banda de rede disponível. Para as execuções subsequentes, relacione de forma mais aproximada o valor de contagem de threads com a contagem de núcleos do processador e a contagem de threads por núcleo. Considere se os núcleos precisam ser reservados para outras tarefas que um servidor de produção possa ter. Testes com o serviço Arquivos do Azure mostraram que até 64 threads produzem um bom desempenho, mas somente se os processadores puderem mantê-los ativos ao mesmo tempo. |
/R:n |
Contagem máxima de novas tentativas de um arquivo cuja primeira tentativa de cópia falha. O Robocopy tentará n vezes antes que o arquivo falhe permanentemente ao copiar na execução. É possível otimizar o desempenho de sua execução: escolha um valor de dois ou três se você acreditar que os problemas de tempo limite causaram falhas no passado. Isso pode ser mais comum em links de WAN. Escolha não tentar novamente ou um valor de um se você acreditar que o arquivo falhou ao copiar porque estava ativamente em uso. Tentar novamente alguns segundos depois poderá não ser tempo suficiente para que o estado em uso do arquivo seja alterado. Os usuários ou os aplicativos que mantêm o arquivo aberto podem precisar de horas a mais. Nesse caso, aceitar que o arquivo não foi copiado e capturá-lo em uma de suas execuções de Robocopy subsequentes planejadas, pode conseguir eventualmente copiar o arquivo com êxito. Isso ajuda a execução atual a concluir mais rapidamente sem ser prolongada pelo excesso de tentativas que, basicamente, resulta na maioria das falhas de cópia devido a arquivos ainda abertos após o tempo limite de repetição. |
/W:n |
Especifica o tempo que o Robocopy espera para tentar copiar um arquivo que não foi copiado com êxito em uma tentativa anterior. n é o número de segundos de espera entre as novas tentativas. /W:n geralmente é usado junto com /R:n . |
/B |
Executa o Robocopy do mesmo modo que um aplicativo de backup faria. Essa opção permite que o Robocopy mova arquivos para os quais o usuário atual não tem permissões. A opção de backup depende da execução do comando do Robocopy em um console elevado de administrador ou janela do PowerShell. Se você usar o Robocopy para Arquivos do Azure, monte o compartilhamento de Arquivos do Azure usando a chave de acesso da conta de armazenamento vs. uma identidade de domínio. Caso contrário, as mensagens de erro podem não levar intuitivamente a uma resolução do problema. |
/MIR |
(Espelhar a origem para o destino.) Permite que o Robocopy copie apenas os deltas entre a origem e o destino. Subdiretórios vazios serão copiados. Itens (arquivos ou pastas) que foram alterados ou que não existem no destino serão copiados. Os itens que existem no destino, mas não na origem, serão eliminados (excluídos) do destino. Ao usar essa opção, faça a correspondência exata das estruturas de pasta de origem e de destino. Fazer a correspondência significa copiar do nível correto de pasta da origem para o nível de pasta correspondente no destino. Somente dessa maneira uma cópia "atualizada" pode ser bem-sucedida. Quando a origem e o destino não corresponderem, o uso de /MIR causará exclusões e novas cópias em grande escala. |
/IT |
Garante que a fidelidade seja preservada em determinados cenários de espelhamento. Por exemplo, se um arquivo apresentar uma alteração de ACL e uma atualização de atributo entre duas execuções do Robocopy, ele será marcado como oculto. Sem /IT , a alteração de ACL pode não ser percebida pelo Robocopy e não ser transferida para o local de destino. |
/COPY:[copyflags] |
A fidelidade da cópia do arquivo. Padrão: /COPY:DAT . Sinalizadores de cópia: D = Dados, A = Atributos, T = Carimbos de data/hora, S = Segurança = NTFS ACLs, O = Informações do proprietário, U = InforD ções de auditoria. As informações de auditoria não podem ser armazenadas em um compartilhamento de arquivo do Azure. |
/DCOPY:[copyflags] |
Fidelidade da cópia de diretórios. Padrão: /DCOPY:DA . Sinalizadores de cópia: D = Dados, A = Atributos, = T Carimbos de data/hora. |
/NP |
Especifica que não será exibido o progresso da cópia de cada arquivo e pasta. A exibição do progresso reduz significativamente o desempenho da cópia. |
/NFL |
Especifica que os nomes de arquivo não são registrados. Melhora o desempenho da cópia. |
/NDL |
Especifica que os nomes de diretório não são registrados. Melhora o desempenho da cópia. |
/XD |
Especifica os diretórios a serem excluídos. Ao executar o Robocopy na raiz de um volume, considere excluir a pasta System Volume Information oculta. Se usado conforme projetado, todas as informações serão específicas para o volume exato desse sistema exato e poderão ser reconstruídas sob demanda. Copiar essas informações não será útil na nuvem ou quando os dados forem copiados de volta para outro volume do Windows. Deixar esse conteúdo para trás não deverá ser considerado perda de dados. |
/UNILOG:<file name> |
Grava o status no arquivo de log como Unicode. (Substitui o log existente.) |
/L |
Somente para uma execução de teste Os arquivos somente devem ser listados. Eles não serão copiados, não excluídos e não terão carimbo de data/hora. Usado com frequência com /TEE para saída do console. Os sinalizadores do script de exemplo, como /NP , /NFL e /NDL , talvez precisem ser removidos para que você possa obter os resultados de teste documentados corretamente. |
/LFSM |
Somente para destinos com armazenamento em camadas. Não há suporte quando o destino é um compartilhamento remoto de protocolo SMB. Especifica que o Robocopy opera no "modo de pouco espaço livre". Essa opção é útil somente para destinos com armazenamento em camadas que podem ficar sem capacidade local antes da conclusão do Robocopy. Ela foi adicionada especificamente para ser usada com um destino habilitado para a camada de nuvem da Sincronização de Arquivos do Azure. Ela pode ser usada independentemente da Sincronização de Arquivos do Azure. Nesse modo, o Robocopy fará uma pausa sempre que uma cópia de arquivo puder fazer com que o espaço livre do volume de destino fique abaixo de um valor base. Esse valor pode ser especificado pela forma /LFSM:n do sinalizador. O parâmetro n é especificado na base 2: nKB , nMB ou nGB . Se /LFSM for especificado sem nenhum valor de piso explícito, o piso será definido como dez por cento do tamanho do volume de destino. O modo de pouco espaço livre não é compatível com /MT , /EFSRAW ou /ZB . O suporte a /B foi adicionado ao Windows Server 2022. Confira a seção Windows Server 2022 e RoboCopy LFSM abaixo para obter mais informações, incluindo detalhes sobre um bug relacionado e uma solução alternativa. |
/Z |
Usar com cautela Copia os arquivos no modo de reinicialização. Essa opção é recomendada somente em um ambiente de rede instável. Ela reduz significativamente o desempenho da cópia devido ao registro em log extra. |
/ZB |
Usar com cautela Usa o modo de reinicialização. Se o acesso for negado, esta opção usa o modo backup. Essa opção reduz significativamente o desempenho da cópia devido ao ponto de verificação. |
Importante
É recomendável usar um Windows Server 2022. Ao usar um Windows Server 2019, verifique se o nível de patch mais recente, ou pelo menos a atualização KB5005103 do SO, está instalado. Ele contém correções importantes para determinados cenários de Robocopy.
Fase 8: migrar o usuário
Quando você executa o comando do RoboCopy pela primeira vez, os usuários e aplicativos ainda estão acessando os arquivos do servidor Samba do Linux, e possivelmente os alteram. É possível que o RoboCopy tenha processado um diretório, passe para o próximo e, em seguida, um usuário no local de origem (Linux) adicione, altere ou exclua um arquivo que agora não será processado nesta execução do RoboCopy. O comportamento é esperado.
A primeira execução faz a movimentação em massa dos dados atualizados para a instância do Windows Server e para a nuvem, usando a Sincronização de Arquivos do Azure. Essa primeira cópia pode demorar, dependendo de:
- Largura de banda de download.
- Largura de banda de upload.
- A velocidade da rede local e a otimização corresponde ao número de threads do RoboCopy.
- O número de itens (arquivos e pastas) que precisam ser processados pelo RoboCopy e pela Sincronização de Arquivos do Azure.
Depois que a execução inicial for concluída, execute o comando novamente.
Ele termina mais rápido na segunda vez porque precisa transportar apenas as alterações que ocorreram desde a última execução. Durante essa segunda execução, novas alterações ainda podem estar se acumulando.
Repita esse processo até concluir a operação do Robcopy para um local específico, atentando para não exceder o tempo aceitável da janela de indisponibilidade.
Se o tempo de indisponibilidade é aceitável e o Linux local está pronto para ser colocado em offline, altere as ACLs na raiz do compartilhamento de modo que os usuários não possam mais acessar o local. Ou você pode executar qualquer outra etapa que impeça o conteúdo de ser alterado nessa pasta no servidor Linux.
Execute uma última rodada do RoboCopy. Ele seleciona todas as alterações que possam ter sido perdidas. A duração desta etapa final depende da velocidade da verificação do RoboCopy. Você pode estimar o tempo (que é igual ao seu tempo de inatividade) medindo quanto tempo a execução anterior levou.
Crie um compartilhamento na pasta do Windows Server e ajuste sua implantação do DFS-N para apontar para ele. Não se esqueça de definir as mesmas permissões de nível de compartilhamento, iguais as que estão nos compartilhamentos SMB do servidor Samba do Linux. Se você usou usuários locais no servidor Samba do Linux, precisará recriar esses usuários como usuários locais do Windows Server. Você também precisa mapear os SIDs existentes, que o Robocopy moveu para a instância do Windows Server, para os SIDs de seus novos usuários locais do Windows Server. Se você usou contas do Active Directory e ACLs, o Robocopy as moverá como está, e nenhuma ação adicional é necessária.
Você concluiu a migração de um compartilhamento ou de um grupo de compartilhamentos para um volume ou raiz comum (dependendo do mapeamento da Fase 1).
Tente executar algumas dessas cópias em paralelo. Recomenda-se processar o escopo de um compartilhamento de arquivos do Azure por vez.
Aviso
Depois de mover todos os dados do servidor Samba do Linux para a instância do Windows Server e a migração estiver concluída, retorne a todos os grupos de sincronização no portal do Azure. Ajuste a porcentagem de espaço livre do volume da camada de nuvem para uma taxa de utilização de cache mais adequada, como 20%.
A política de espaço livre no volume de camadas de nuvem atua sobre um nível de volume com vários pontos de extremidade de servidor sincronizando a partir dele. Se você esquecer de ajustar o espaço livre em um único ponto de extremidade do servidor, a sincronização continuará a aplicar a regra mais restritiva e tentará manter o espaço livre em disco em 99%. O cache local pode não ser executado conforme o esperado. O desempenho pode ser aceitável se o objetivo for ter o namespace para um volume que contenha apenas dados de arquivamento acessados raramente, e estiver reservando o restante do espaço de armazenamento para outro cenário.
Solucionar problemas
O problema mais comum é o comando Robocopy falhar com Volume cheio no lado do Windows Server. A camada de nuvem atua uma vez a cada hora para liberar o conteúdo do disco local do Windows Server que foi sincronizado. Seu objetivo é atingir o espaço livre de 99% no volume.
Deixe que a sincronização avance e a camada de nuvem libere espaço em disco. Você pode observar isso no Explorador de Arquivos do Windows Server.
Quando a instância do Windows Server tiver capacidade disponível suficiente, reexecute o comando para resolver o problema. Nada é interrompido quando esse problema ocorre, e se pode avançar sem receio. A inconveniência de executar o comando novamente é a única consequência.
Verifique o link na seção a seguir para solucionar problemas de Sincronização de Arquivos do Azure.
Próximas etapas
Os artigos a seguir contêm opções avançadas, melhores práticas e ajuda para solução de problemas para a Sincronização de Arquivos do Azure.