Översikt över molnnivåindelning

Molnnivåindelning, en valfri funktion i Azure File Sync, minskar mängden lokal lagring som krävs samtidigt som prestandan för en lokal filserver bibehålls.

När du aktiverar den här funktionen lagrar den endast filer som används ofta (frekvent) på den lokala servern. Filer som används sällan (lågfrekvent) delas upp i namnområdet (fil- och mappstruktur) och filinnehåll. Namnområdet lagras lokalt och filinnehållet lagras i en Azure filresurs i molnet.

När en användare öppnar en nivåindelad fil återkallar Azure File Sync sömlöst fildata från den Azure filresursen.

Så här fungerar molnnivåindelning

Molnnivåindelning fungerar genom övervakning av filåtkomstmönster och nivåindelningsfiler baserat på definierade principer.

Principer för molnnivåindelning

När du aktiverar molnnivåindelning finns det två principer som du kan ange för att informera Azure File Sync när du ska nivåindela lågfrekventa filer: principen volume free space och principen date.

Policyn för ledigt diskutrymme

Principen för ledigt utrymme på volymen instruerar Azure File Sync att nivåindela svala filer till molnet när en viss mängd utrymme är upptagen på din lokala disk.

Om din lokala diskkapacitet till exempel är 200 GiB och du vill att minst 40 GiB av din lokala diskkapacitet alltid ska vara kostnadsfri, anger du principen för ledigt utrymme på 20%. Ledigt volymutrymme gäller på volymnivå i stället för på nivån för enskilda kataloger eller serverslutpunkter.

Datumprincip

Med datumprincipen flyttas sällananvända filer till molnet om de inte har använts (lästs eller skrivits till) under x antal dagar. Om du till exempel märker att filer som har gått mer än 15 dagar utan åtkomst vanligtvis är arkivfiler, bör du ange datumprincipen till 15 dagar.

Fler exempel på hur policyn för datum och ledigt utrymme fungerar tillsammans finns i Choose Azure File Sync principer för molnnivåindelning.

Windows Server datadeduplicering

Från och med Windows Server 2016 stöds datadeduplicering på volymer som har molnnivåindelning aktiverat. Mer information finns i Plan för en Azure File Sync-distribution.

Värmekarta för molnnivåindelning

Azure File Sync övervakar filåtkomst (läs- och skrivåtgärder) över tid och tilldelar en värmepoäng till varje fil baserat på hur nyligen och ofta filen används. Den använder dessa poäng för att skapa en "heatmap" av ditt namnområde på varje serverslutpunkt. Den här värmekartan är en lista över alla synkroniseringsfiler på en plats med molnnivåindelning aktiverad, sorterad efter deras värmepoäng. Filer som ofta har öppnats nyligen anses vara heta, medan filer som sällan har öppnats och inte har öppnats på länge anses vara kalla.

För att fastställa den relativa positionen för en enskild fil i den värmekartan använder systemet maximalt antal tidsstämplar i följande ordning: MAX (senaste åtkomsttid, senast ändrad tid, skapandetid).

Vanligtvis spåras den senaste åtkomsttiden och är tillgänglig. Men när du skapar en ny serverslutpunkt med molnnivåindelning aktiverat har inte tillräckligt med tid gått för att observera filåtkomst. Om det inte finns någon giltig senaste åtkomsttid används den senaste ändrade tiden i stället för att utvärdera den relativa positionen i värmekartan.

Datumprincipen fungerar på samma sätt. Utan en sista åtkomsttid agerar datumprincipen på den senaste ändrade tiden. Om det inte är tillgängligt återgår det till skapandetiden för en fil. Med tiden observerar systemet fler begäranden om filåtkomst och börjar automatiskt använda den egenspårade senaste åtkomsttiden.

Anmärkning

Molnnivåindelning är inte beroende av NTFS-funktionen för spårning av senaste åtkomsttid. Den här NTFS-funktionen är inaktiverad som standard. På grund av prestandaöverväganden rekommenderar vi inte att du aktiverar den här funktionen manuellt. Molnsegmentering spårar senaste åtkomsttid separat.

Överväganden för att välja en princip för molnnivåindelning

Kalla filer som används mindre ofta passar bäst för nivåindelade filer, eftersom det krävs nedladdning från molnet för att återkalla data. Azure File Sync reserverar 10% totalt minne för att spara återkallningar till disken. Om 60% av det här reserverade minnet används sparas inte återkallningarna på disken. Om ett stort antal nivåindelade filer finns i systemet och mycket åtkomst sker kan systemet nå ett minneströskelvärde. Den här situationen kan orsaka oväntad extra utgående trafik, försämring av I/O-prestanda, att systemet blir långsamt, och att systemet hänger sig.

Proaktiv återkallelse

När en fil skapas eller ändras kan du proaktivt återkalla filen till servrar som du anger. Proaktiv återkallelse gör den nya eller ändrade filen lätt tillgänglig för förbrukning på varje angiven server.

Ett globalt distribuerat företag har till exempel filialkontor i USA och Indien. På morgonen i USA skapar informationsarbetare en ny mapp och filer för ett helt nytt projekt och arbetar hela dagen med det. Azure File Sync synkroniserar mappen och filerna till den Azure filresursen (molnslutpunkten), som fungerar som central hubb mellan alla registrerade servrar. Informationsarbetare i Indien kommer att fortsätta att arbeta med projektet i sin tidszon. När de anländer på morgonen måste den lokala Azure File Sync aktiverade servern i Indien ha dessa nya filer tillgängliga lokalt så att Indien-teamet effektivt kan arbeta utanför en lokal cache. Aktivering av proaktiv återkallande uppmanar servern att ladda ned filerna så snart de ändras eller skapas i Azure filresurs, i stället för att vänta tills en användare försöker öppna dem.

Om filer som återkallas till servern inte behövs lokalt kan den onödiga återkallelsen öka din utgående trafik och dina kostnader. Aktivera därför endast proaktiv återläsning när du vet att förinfyllning av en servers cache med de senaste förändringarna från molnet kommer att påverka användare eller program som använder filerna på den servern positivt.

Aktivering av proaktiv återkallelse kan också leda till ökad bandbreddsanvändning på servern och kan leda till att annat relativt nytt innehåll på den lokala servern blir aggressivt nivåindelat på grund av att antalet filer som återkallas ökar. Nivåindelning för tidigt kan i sin tur leda till fler återkallelser om filerna som nivåindelade betraktas som frekventa av servrar.

Mer information om proaktiv återkallelse finns i Deploy Azure File Sync.

Nivåindelat jämfört med lokalt cachelagrat filbeteende

Molnnivåindelning är separationen mellan namnområdet (fil- och mapphierarkin samt filegenskaper) och filinnehållet.

Nivåindelad fil

För nivåindelade filer är storleken på disken noll eftersom själva filinnehållet inte lagras lokalt. När en fil är nivåindelad ersätter Azure File Sync filsystemfilter (StorageSync.sys) filen lokalt med en pekare som kallas en referenspunkt. Referenspunkten representerar en URL till filen i Azure filresurs. En nivåindelad fil har både offline attributet och FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS attributet inställt i NTFS så att program från tredje part kan identifiera nivåindelade filer på ett säkert sätt.

En skärmbild av en fils egenskaper när den är nivåindelad – endast namnrymd.

Lokalt cachelagrad fil

För filer som lagras på en lokal filserver är storleken på disken ungefär lika med filens logiska storlek eftersom hela filen (filattribut och filinnehåll) lagras lokalt.

En skärmbild av en fils egenskaper när den inte är nivåindelad – namnområde + filinnehåll.

Det är också möjligt att en fil delvis nivåindelade eller delvis återkallas. I en delvis nivåindelad fil lagras endast en del av filen på disken. Du kanske har partiellt återkallat filer på din volym om filer läses delvis av program som stöder direktuppspelningsåtkomst till filer. Några exempel är multimediaspelare och zip-verktyg. Azure File Sync är effektiv och återkallar endast den begärda informationen från den anslutna Azure filresursen.

Anmärkning

Storleken representerar filens logiska storlek. Storleken på disken representerar den fysiska storleken på den filström som lagras på disken.

Låg diskutrymmesläge

Diskar som har serverslutpunkter kan få slut på utrymme av olika skäl, även när molnnivåindelning är aktiverat. Följande orsaker är:

  • Kopiera data manuellt till disken utanför serverns slutpunkt
  • Långsam eller fördröjd synkronisering som gör att filer inte nivåindelas
  • Överdriven återkallelse av nivåindelade filer

När diskutrymmet tar slut kanske Azure File Sync inte fungerar korrekt och kan till och med bli oanvändbara. Även om Azure File Sync inte helt kan förhindra dessa förekomster, hjälper det låga diskutrymmesläget (tillgängligt i Azure File Sync agentversioner från och med 15.1) att förhindra att en serverslutpunkt når den här situationen och hjälper servern att komma ur den snabbare.

För serverslutpunkter med molnnivåindelning aktiverat, om det lediga utrymmet på volymen sjunker under det beräknade tröskelvärdet, går volymen in i läget för lågt diskutrymme.

I läget för lågt diskutrymme gör Azure File Sync-agenten två saker på olika sätt:

  • Proaktiv nivåindelning: File Sync-agenten nivåindelar filer mer proaktivt till molnet. Synkroniseringsagenten söker efter filer som ska nivåindelas varje minut i stället för den normala frekvensen för varje timme. Principnivåindelning för ledigt utrymme sker vanligtvis inte under den första uppladdningssynkroniseringen förrän den fullständiga uppladdningen är klar. Men i läget för lågt diskutrymme aktiveras nivåindelning under den första uppladdningssynkroniseringen, och filer beaktas för nivåindelning när den enskilda filen har laddats upp till Azure filresurs.

  • Non-persistent recalls: När en användare öppnar en skiktad fil sparas filer som återkallas direkt från Azure-fildelning inte permanent på disken. Återkallanden som initieras av cmdleten Invoke-StorageSyncFileRecall är ett undantag från den här regeln och sparas på disken.

När volymens lediga utrymme överskrider tröskelvärdet återgår Azure File Sync automatiskt till det normala tillståndet. Låg diskutrymmesläge gäller endast för servrar med molnnivåindelning aktiverat och respekterar alltid principen för ledigt utrymme på volymen.

Om en volym har två serverslutpunkter, en med nivåindelning aktiverad och en utan nivåindelning, gäller läget för lågt diskutrymme endast för serverslutpunkten där nivåindelning är aktiverat.

Hur beräknas tröskelvärdet för lågt diskutrymme?

Beräkna tröskelvärdet genom att ta minst följande tre tal:

  • 10% av volymstorlek i GiB
  • Policy för ledigt utrymme i volym i GiB
  • 20 GiB

Följande tabell innehåller några exempel på hur tröskelvärdet beräknas och när volymen är i låg diskutrymmesläge.

Volymstorlek 10% av volymstorlek Policy för fri utrymme för volym Tröskelvärde = Min (10% av volymstorlek, princip för ledigt utrymme för volym, 20 GiB) Nuvarande ledigt utrymme på volymen Är lågt diskutrymmesläge? Förnuft
100 GiB 10 GiB 7% (7 GiB) 7 GiB = Min (10 GiB, 7 GiB, 20 GiB) 9% (9 GiB) Nej Aktuellt tröskelvärde för ledigt volymutrymme (9 GiB) > (7 GiB)
100 GiB 10 GiB 7% (7 GiB) 7 GiB = Min (10 GiB, 7 GiB, 20 GiB) 5% (5 GiB) Ja Aktuellt tröskelvärde för ledigt volymutrymme (5 GiB) < (7 GiB)
300 GiB 30 GiB 8% (24 GiB) 20 GiB = Min (30 GiB, 24 GiB, 20 GiB) 7% (21 GiB) Nej Aktuellt tröskelvärde för ledigt volymutrymme (21 GiB) > (20 GiB)
300 GiB 30 GiB 8% (24 GiB) 20 GiB = Min (30 GiB, 24 GiB, 20 GiB) 6% (18 GiB) Ja Aktuellt tröskelvärde för ledigt volymutrymme (18 GiB) < (20 GiB)

Hur fungerar läget för lågt diskutrymme med policyn för ledigt utrymme på volymer?

Låg diskutrymmesläge respekterar alltid principen för ledigt utrymme på volymen. Tröskelberäkningen är utformad för att se till att den respekterar den volymfri utrymmesprincip som du anger.

Vad är den vanligaste orsaken till att serverslutpunkten är i låg diskläge?

Den främsta orsaken till läge för låg diskkapacitet är att kopiera eller flytta stora mängder data till disken där en serverändpunkt med nivåindelning finns.

Hur kommer jag ur läget för lågt diskutrymme?

Lågt diskläge växlar automatiskt till normalt beteende genom att inte spara återkallanden och nivåindela filer oftare, utan att kräva några åtgärder. Du kan påskynda processen manuellt genom att öka volymstorleken eller frigöra utrymme utanför serverslutpunkten.

Hur kan jag kontrollera om en server är i låg diskutrymmesläge?

  • Om en serverslutpunkt är i låg diskutrymmesläge visas den i avsnittet hälsa för molnindelning under fliken Fel + felsökning i Azure-portalen.
  • Händelse-ID 19000 loggas till telemetrihändelseloggen varje minut för varje serverslutpunkt. Använd den här händelsen för att avgöra om serverslutpunkten är i låg diskutrymmesläge (IsLowDiskMode = true). Du hittar telemetrihändelseloggen i Event Viewer under Applications and Services\Microsoft\FileSync\Agent.

Se även