Introduzione ad Azure File Sync

Azure File Sync

Azure File Sync è un servizio cloud che consente di mantenere allineate una o più cartelle tra server diversi in posizioni diverse.

L’idea è quella di utilizzare Azure come orchestratore tra ogni endpoint con il vantaggio di mantenere le ACL. Lo si può considerare l’evoluzione del vecchio DFS? Più o meno, perché DFS è ancora vivo ed è perfetto per molti scenari ma sicuramente non è impossibile dire che è un’evoluzione, ma che lavora in modalità ibrida! Inoltre, Active Directory non è necessario e la soluzione funziona anche in workgroup (ottimo per alcuni scenari).

La forza dieto a questo progetto è la flessibilità: tutti i file sincronizzati possono essere raggiunte tramite condivisione SMB locale, tramite Work Folders ma anche tramite condivisione SMB remota. Questo è possibile grazie al fatto che i file sono esposti tramite il servizio di Azure File Share.

Azure File Sync offre le seguenti funzionalità:

  • Multi-site access – scrittura ai documenti sia su Windows Server che su Azure Files
  • Cloud tiering – mantiene localmente solo i file utilizzati di recente
  • Integrates with Azure backup – protezione nativa senza dover salvare localmente
  • Fast disaster recovery – recupero dei file attraverso il servizio snapshot

In questo articolo verranno illustrati i passaggi di base su come configurare il servizio.

Configurazione

Prima di iniziare, è bene cononscere quelli che sono i limiti della soluzione:

  • Storage Sync Services per region: 20 Storage Sync Services
  • Sync groups per Storage Sync Service: 100 sync groups
  • Registered servers per Storage Sync Service: 99 servers
  • Cloud endpoints per sync group: 1 cloud endpoint
  • Server endpoints per sync group: 50 server endpoints
  • Server endpoints per server: 30 server endpoints
  • File system objects (directories and files) per sync group: 25 million objects
  • Maximum number of file system objects (directories and files) in a directory: 5 million objects
  • Maximum object (directories and files) security descriptor size: 64 KiB
  • File size: 100 GiB           
  • Minimum file size for a file to be tiered: 64 KiB

Il primo passaggio consiste nel creare uno Storage Sync Service; ricercare Azure File Sync all’interno del Marketplace come mostrato nella figura 2.

Il wizard è molto semplice e non dovete fare altro che scegliere un nome univoco ed un resource group a cui attestare il servizio – figura 3.

Figura 3 – Nuovo Sync Service

Dopo qualche secondo, saremo pronti a creare il primo Sync Group – figura 4.

Figura 4 – Nuovo Sync Group

Una volta creato, potrete scaricare l’ultima versione dell’agent – figura 5.

Figura 5 – Download AFS Agent

I sistemi operativi supportati sono Windows Server 2012 R2, Windows Server 2016, Windows Server 2019. Niente in merito a Windows Server 2008 R2, ma se avete ancora questo tipo di piattaforma, può essere il caso di utilizzare lo Storage Migration Services, presente in Windows Server 2019, per migrare il vostro file server e successivamente portarli su Azure.

Prima di installare l’agent, ricordate di disattivare lo IE Enhanced Security Configuration for Administrators – figura 6.

Figura 6 – Disattivare IE ESC

In merito al setup non c’è molto da dire, in quanto si tratta di una semplice copia dei bit sul server di destinazione.

Concluso il setup, sarà possibile registrare il server. Importante tenere a mente questi requisiti:

  • Az or AzureRM module (version 4.3.1 or later)
  • Windows Management Framework 5.1 (Windows Server 2012 R2 only)
  • NTFS File System (ReFS is not in roadmap)

Per installare il modulo PowerShell, utilizzare il comando Install-Module AzureRM senza dimenticarsi di avviare la shell con i privilegi di amministratore. Per avere una situazione pulita, si consiglia di riavviare il server.

Durante la registrazione, selezionate la subscription Azure, il Resource Group ed il Sync Group creato in precedenza.

Azure File Sync utilizza uno Storage Account per salvare i dati sincronizzati e quindi, nel caso non lo abbiate già configurato, sarà necessario creare uno Storage Account in modalità v2 con performance standard.

Una volta pronto lo Storage Account, creare un nuovo File Share.

A questo punto abbiamo un Sync Group Service, abbiamo un server registrato, abbiamo uno Storage Account e abbiamo un File Share. È il momento di creare il primo repository del gruppo di sincronizzazione. All’interno del Sync Group Service aggiungere un Sync Group; assegnare un nome (può essere lo stesso della cartella), selezionare la sottoscrizione, l’account di archiviazione e la condivisione file.

L’ultimo passaggio è registrare un nuovo server come Endpoint. Selezionare il computer dall’elenco, aggiungere il percorso locale che si desidera sincronizzare e se si desidera utilizzare il Cloud Tiering: questa opzione è perfetta per rimuovere i vecchi file dal server locale e per risparmiare spazio su disco. La cattiva notizia è che non c’è modo di selezionare quali sono i criteri per mantenere i file.

Ora è necessario solo attendere i tempi di replica. Questo valore dipende dal numero di file, dalla dimensione di ogni file, dalla connettività Internet ma anche dalle prestazioni del server. Quindi, può essere di 15 minuti o può essere 2 giorni. In ogni caso, è possibile monitorare lo stato di salute con le informazioni sul server, il volume di file mossi ed il numero di file sincronizzati.

Dopo qualche minute, potrete verificare lo stato di replica sia localmente che all’interno del File Share in Azure.

Windows Admin Center

Azure File Sync è disponibile anche all’interno di Windows Admin Center (WAC). L’estensione permette agli amministratori di poter verificare lo stato degli endpoint, la versione dell’agent ed altre piccole informazioni. Niente di avanzato ma sicuramente in futuro il modulo sarà sviluppato per offrire maggiori dettagli.

Conclusioni

Azure File Sync è assolutamente un ottimo servizio che estende i file server locali con nuove funzionalità per la sincronizzazione dei contenuti, utilizzando il potenziale del cloud pubblico Microsoft sia in termini di scalabilità sia in termini di flessibilità. Una soluzione capace di adattarsi sia sui piccoli scenari così come per le grandi realtà.