Servizio di sincronizzazione Azure AD Connect: utilità di pianificazioneAzure AD Connect sync: Scheduler

Questo argomento illustra l'utilità di pianificazione predefinita nel servizio di sincronizzazione Azure AD Connect, anche dettoThis topic describes the built-in scheduler in Azure AD Connect sync (a.k.a. motore di sincronizzazione.sync engine).

Questa funzionalità è stata introdotta nella build 1.1.105.0 rilasciata nel mese di febbraio 2016.This feature was introduced with build 1.1.105.0 (released February 2016).

PanoramicaOverview

Il servizio di sincronizzazione Azure AD Connect sincronizza le modifiche rilevate nella directory locale usando un'utilità di pianificazione.Azure AD Connect sync synchronize changes occurring in your on-premises directory using a scheduler. Sono disponibili due processi dell'utilità di pianificazione, uno per la sincronizzazione delle password e uno per la sincronizzazione di oggetti/attributi e per le attività di manutenzione.There are two scheduler processes, one for password sync and another for object/attribute sync and maintenance tasks. Questo argomento illustra il secondo.This topic covers the latter.

Nelle versioni precedenti l'utilità di pianificazione per oggetti e attributi è esterna al motore di sincronizzazione.In earlier releases, the scheduler for objects and attributes was external to the sync engine. Usa l'utilità di pianificazione di Windows o un servizio di Windows separato per attivare il processo di sincronizzazione.It used Windows task scheduler or a separate Windows service to trigger the synchronization process. L'utilità di pianificazione è disponibile nelle versioni di tipo 1.1 incluse nel motore di sincronizzazione e consente una personalizzazione parziale.The scheduler is with the 1.1 releases built-in to the sync engine and do allow some customization. La nuova frequenza di sincronizzazione predefinita è pari a 30 minuti.The new default synchronization frequency is 30 minutes.

L'utilità di pianificazione è responsabile di due attività:The scheduler is responsible for two tasks:

  • Ciclo di sincronizzazione.Synchronization cycle. processo di importazione, sincronizzazione ed esportazione delle modifiche.The process to import, sync, and export changes.
  • Attività di manutenzione.Maintenance tasks. rinnovo di chiavi e certificati per la reimpostazione delle password e per il servizio Registrazione dispositivo.Renew keys and certificates for Password reset and Device Registration Service (DRS). Consente di ripulire le voci obsolete nel log operazioni.Purge old entries in the operations log.

L'utilità di pianificazione stessa è sempre in esecuzione, ma può essere configurata per eseguire solo una o nessuna di queste attività.The scheduler itself is always running, but it can be configured to only run one or none of these tasks. Ad esempio, se è necessario avere un processo di ciclo di sincronizzazione personalizzato, è possibile disabilitare questa attività nell'utilità di pianificazione, ma eseguire comunque l'attività di manutenzione.For example, if you need to have your own synchronization cycle process, you can disable this task in the scheduler but still run the maintenance task.

Configurazione dell'utilità di pianificazioneScheduler configuration

Per visualizzare le impostazioni attuali della configurazione, passare a PowerShell ed eseguire il comando Get-ADSyncScheduler.To see your current configuration settings, go to PowerShell and run Get-ADSyncScheduler. Il risultato visualizzato è simile al seguente:It shows you something like this picture:

GetSyncScheduler

Se quando si esegue questo cmdlet viene visualizzato il messaggio Non è disponibile il comando o il cmdlet di sincronizzazione , il modulo PowerShell non viene caricato.If you see The sync command or cmdlet is not available when you run this cmdlet, then the PowerShell module is not loaded. Questo problema può verificarsi se si esegue Azure AD Connect in un controller di dominio o in un server con livelli di restrizione di PowerShell più elevati rispetto alle impostazioni predefinite.This problem could happen if you run Azure AD Connect on a domain controller or on a server with higher PowerShell restriction levels than the default settings. Se si visualizza questo errore, eseguire Import-Module ADSync per rendere disponibile il cmdlet.If you see this error, then run Import-Module ADSync to make the cmdlet available.

  • AllowedSyncCycleInterval.AllowedSyncCycleInterval. L'intervallo di tempo più breve tra i cicli di sincronizzazione consentito da Azure AD.The shortest time interval between synchronization cycles allowed by Azure AD. La sincronizzazione con una frequenza superiore a quella di questa impostazione non è supportata.You cannot synchronize more frequently than this setting and still be supported.
  • CurrentlyEffectiveSyncCycleInterval.CurrentlyEffectiveSyncCycleInterval. pianificazione attualmente applicata.The schedule currently in effect. Ha lo stesso valore di CustomizedSyncInterval (se impostato), se non ha una frequenza superiore ad AllowedSyncInterval.It has the same value as CustomizedSyncInterval (if set) if it is not more frequent than AllowedSyncInterval. Se si usa una build precedente alla 1.1.281 e si modifica il valore di CustomizedSyncCycleInterval, la modifica viene applicata dopo il ciclo di sincronizzazione successivo.If you use a build before 1.1.281 and you change CustomizedSyncCycleInterval, this change takes effect after next synchronization cycle. Con la build 1.1.281 la modifica viene applicata immediatamente.From build 1.1.281 the change takes effect immediately.
  • CustomizedSyncCycleInterval.CustomizedSyncCycleInterval. Se si vuole che l'utilità di pianificazione sia eseguita con una frequenza diversa dal valore predefinito di 30 minuti, configurare questa impostazione.If you want the scheduler to run at any other frequency than the default 30 minutes, then you configure this setting. Nell'immagine precedente l'utilità di pianificazione è stata impostata per essere eseguita ogni ora.In the picture above, the scheduler has been set to run every hour instead. Se si configura questa impostazione su un valore inferiore a quello di AllowedSyncInterval, viene usato quest'ultimo valore.If you set this setting to a value lower than AllowedSyncInterval, then the latter is used.
  • NextSyncCyclePolicyType.NextSyncCyclePolicyType. differenziale o iniziale.Either Delta or Initial. Definisce se l'esecuzione successiva deve elaborare solo le modifiche differenziali o se deve eseguire un'importazione e una sincronizzazione complete, per poter rielaborare anche eventuali regole nuove o modificate.Defines if the next run should only process delta changes, or if the next run should do a full import and sync. The latter would also reprocess any new or changed rules.
  • NextSyncCycleStartTimeInUTC.NextSyncCycleStartTimeInUTC. Ora di inizio del prossimo ciclo di sincronizzazione da parte dell'utilità di pianificazione.Next time the scheduler starts the next sync cycle.
  • PurgeRunHistoryInterval.PurgeRunHistoryInterval. tempo di conservazione dei log operazioni.The time operation logs should be kept. È possibile esaminare i log in Synchronization Service Manager.These logs can be reviewed in the synchronization service manager. Per impostazione predefinita, i log vengono conservati per 7 giorni.The default is to keep these logs for 7 days.
  • SyncCycleEnabled.SyncCycleEnabled. indica se l'utilità di pianificazione esegue i processi di importazione, sincronizzazione ed esportazione come parte del funzionamento normale.Indicates if the scheduler is running the import, sync, and export processes as part of its operation.
  • MaintenanceEnabled.MaintenanceEnabled. indica se il processo di manutenzione è abilitato.Shows if the maintenance process is enabled. Aggiorna i certificati o le chiavi e ripulisce i log operazioni.It updates the certificates/keys and purges the operations log.
  • StagingModeEnabled.StagingModeEnabled. Indica se la modalità di gestione temporanea è abilitata.Shows if staging mode is enabled. Se questa impostazione è abilitata, impedisce la riesecuzione delle esportazioni, ma esegue ugualmente l'importazione e la sincronizzazione.If this setting is enabled, then it suppresses the exports from running but still run import and synchronization.
  • SchedulerSuspended.SchedulerSuspended. Impostato da Connect durante un aggiornamento per bloccare temporaneamente l'esecuzione dell'utilità di pianificazione.Set by Connect during an upgrade to temporarily block the scheduler from running.

Alcune di queste impostazioni possono essere modificate con Set-ADSyncScheduler.You can change some of these settings with Set-ADSyncScheduler. È possibile modificare i parametri seguenti:The following parameters can be modified:

  • CustomizedSyncCycleIntervalCustomizedSyncCycleInterval
  • NextSyncCyclePolicyTypeNextSyncCyclePolicyType
  • PurgeRunHistoryIntervalPurgeRunHistoryInterval
  • SyncCycleEnabledSyncCycleEnabled
  • MaintenanceEnabledMaintenanceEnabled

Nelle versioni precedenti di Azure AD Connect, isStagingModeEnabled era esposto in Set-ADSyncScheduler.In earlier builds of Azure AD Connect, isStagingModeEnabled was exposed in Set-ADSyncScheduler. L'impostazione di questa proprietà non è supportata.It is unsupported to set this property. La proprietà SchedulerSuspended deve essere modificata solo da Connect.The property SchedulerSuspended should only be modified by Connect. L'impostazione di questa proprietà direttamente con PowerShell non è supportata.It is unsupported to set this with PowerShell directly.

La configurazione dell'utilità di pianificazione viene archiviata in Azure AD.The scheduler configuration is stored in Azure AD. Se si ha un server di staging, qualsiasi modifica apportata nel server primario ha effetto anche nel server di staging (fatta eccezione per IsStagingModeEnabled).If you have a staging server, any change on the primary server also affects the staging server (except IsStagingModeEnabled).

CustomizedSyncCycleIntervalCustomizedSyncCycleInterval

Sintassi: Set-ADSyncScheduler -CustomizedSyncCycleInterval d.HH:mm:ssSyntax: Set-ADSyncScheduler -CustomizedSyncCycleInterval d.HH:mm:ss
d - giorni, HH - ore, mm - minuti, ss - secondid - days, HH - hours, mm - minutes, ss - seconds

Esempio: Set-ADSyncScheduler -CustomizedSyncCycleInterval 03:00:00Example: Set-ADSyncScheduler -CustomizedSyncCycleInterval 03:00:00
Modifica l'utilità di pianificazione in modo che venga eseguita ogni 3 ore.Changes the scheduler to run every 3 hours.

Esempio: Set-ADSyncScheduler -CustomizedSyncCycleInterval 1.0:0:0Example: Set-ADSyncScheduler -CustomizedSyncCycleInterval 1.0:0:0
Modifica l'utilità di pianificazione in modo che venga eseguita ogni giorno.Changes change the scheduler to run daily.

Disabilitare l'utilità di pianificazioneDisable the scheduler

Se si devono apportare modifiche alla configurazione, sarà necessario disabilitare l'utilità di pianificazione,If you need to make configuration changes, then you want to disable the scheduler. ad esempio quando si configurano i filtri o si apportano modifiche alle regole di sincronizzazione.For example, when you configure filtering or make changes to synchronization rules.

Per disabilitare l'utilità di pianificazione, eseguire Set-ADSyncScheduler -SyncCycleEnabled $false.To disable the scheduler, run Set-ADSyncScheduler -SyncCycleEnabled $false.

Disabilitare l'utilità di pianificazione

Dopo avere apportato le modifiche, ricordare di abilitare di nuovo l'utilità di pianificazione con Set-ADSyncScheduler -SyncCycleEnabled $true.When you've made your changes, do not forget to enable the scheduler again with Set-ADSyncScheduler -SyncCycleEnabled $true.

Avviare l'utilità di pianificazioneStart the scheduler

Per impostazione predefinita, l'utilità di pianificazione viene eseguita ogni 30 minuti.The scheduler is by default run every 30 minutes. In alcuni casi, è possibile che si voglia eseguire un ciclo di sincronizzazione tra i cicli pianificati o che sia necessario eseguirne un tipo diverso.In some cases, you might want to run a sync cycle in between the scheduled cycles or you need to run a different type.

Ciclo di sincronizzazione differenzialeDelta sync cycle
Un ciclo di sincronizzazione differenziale include i passaggi seguenti:A delta sync cycle includes the following steps:

  • Importazione differenziale su tutti i connettoriDelta import on all Connectors
  • Sincronizzazione differenziale su tutti i connettoriDelta sync on all Connectors
  • Esportazione su tutti i connettoriExport on all Connectors

Potrebbe essere presente una modifica urgente da sincronizzare immediatamente e potrebbe essere quindi necessario eseguire manualmente un ciclo.It could be that you have an urgent change that must be synchronized immediately, which is why you need to manually run a cycle. Se occorre eseguire manualmente un ciclo, in PowerShell eseguire il comando Start-ADSyncSyncCycle -PolicyType Delta.If you need to manually run a cycle, then from PowerShell run Start-ADSyncSyncCycle -PolicyType Delta.

Ciclo di sincronizzazione completoFull sync cycle
Se è stata apportata una delle modifiche seguenti alla configurazione, è necessario eseguire un ciclo di sincronizzazione completo, anche dettoIf you have made one of the following configuration changes, you need to run a full sync cycle (a.k.a. Iniziale:Initial):

  • Aggiunta di altri oggetti o attributi da importare da una directory di origineAdded more objects or attributes to be imported from a source directory
  • Modifiche alle regole di sincronizzazioneMade changes to the Synchronization rules
  • Modifica dei filtri in modo che venga incluso un numero diverso di oggettiChanged filtering so a different number of objects should be included

Se è stata apportata una di queste modifiche, è necessario eseguire un ciclo di sincronizzazione completa, in modo che il motore di sincronizzazione possa riconsolidare gli spazi connettore.If you have made one of these changes, then you need to run a full sync cycle so the sync engine has the opportunity to reconsolidate the connector spaces. Un ciclo di sincronizzazione completa include i passaggi seguenti:A full sync cycle includes the following steps:

  • Importazione completa su tutti i connettoriFull Import on all Connectors
  • Sincronizzazione completa su tutti i connettoriFull Sync on all Connectors
  • Esportazione su tutti i connettoriExport on all Connectors

Per avviare un ciclo di sincronizzazione completa, eseguire Start-ADSyncSyncCycle -PolicyType Initial a un prompt di PowerShell.To initiate a full sync cycle, run Start-ADSyncSyncCycle -PolicyType Initial from a PowerShell prompt. Questo comando avvia un ciclo di sincronizzazione completo.This command starts a full sync cycle.

Arrestare l'utilità di pianificazioneStop the scheduler

Se l'utilità di pianificazione sta eseguendo un ciclo di sincronizzazione, potrebbe essere necessario interromperlo.If the scheduler is currently running a synchronization cycle, you might need to stop it. Ad esempio, se si avvia l'installazione guidata e viene visualizzato questo errore:For example if you start the installation wizard and you get this error:

SyncCycleRunningError

Quando un ciclo di sincronizzazione è in esecuzione, non è possibile modificare la configurazione.When a sync cycle is running, you cannot make configuration changes. Si può attendere il completamento del processo da parte dell'utilità di pianificazione oppure è possibile interromperlo, per potere apportare immediatamente le modifiche.You could wait until the scheduler has finished the process, but you can also stop it so you can make your changes immediately. L'arresto del ciclo corrente non è dannoso e le modifiche in sospeso vengono elaborate all'esecuzione successiva.Stopping the current cycle is not harmful and pending changes are processed with next run.

  1. Richiedere prima di tutto all'utilità di pianificazione di interrompere il ciclo corrente con il cmdlet Stop-ADSyncSyncCycledi PowerShell.Start by telling the scheduler to stop its current cycle with the PowerShell cmdlet Stop-ADSyncSyncCycle.
  2. Se si usa una build precedente alla 1.1.281, l'arresto dell'utilità di pianificazione non comporta l'interruzione dell'attività corrente del connettore attuale.If you use a build before 1.1.281, then stopping the scheduler does not stop the current Connector from its current task. Per imporre l'arresto del connettore, eseguire queste azioni: StopAConnectorTo force the Connector to stop, take the following actions: StopAConnector
    • Avviare Synchronization Service (Servizio di sincronizzazione) dal menu Start.Start Synchronization Service from the start menu. Passare a Connettori, evidenziare il connettore con stato In esecuzione e selezionare Arresta fra le azioni.Go to Connectors, highlight the Connector with the state Running, and select Stop from the Actions.

L'utilità di pianificazione è ancora attiva e viene riavviata alla successiva opportunità.The scheduler is still active and starts again on next opportunity.

Utilità di pianificazione personalizzataCustom scheduler

I cmdlet illustrati in questa sezione sono disponibili solo nella build 1.1.130.0 e successive.The cmdlets documented in this section are only available in build 1.1.130.0 and later.

Se l'utilità di pianificazione predefinita non soddisfa i requisiti, è possibile pianificare i connettori con PowerShell.If the built-in scheduler does not satisfy your requirements, then you can schedule the Connectors using PowerShell.

Invoke-ADSyncRunProfileInvoke-ADSyncRunProfile

È possibile avviare un profilo per un connettore in questo modo:You can start a profile for a Connector in this way:

Invoke-ADSyncRunProfile -ConnectorName "name of connector" -RunProfileName "name of profile"

I nomi da usare come nomi di connettore e nomi di profilo di esecuzione sono indicati nell'interfaccia utente di Synchronization Service Manager.The names to use for Connector names and Run Profile Names can be found in the Synchronization Service Manager UI.

Richiamare il profilo di esecuzione

Il cmdlet Invoke-ADSyncRunProfile è sincrono, ovvero non restituisce il controllo fino a quando il connettore non ha completato l'operazione correttamente o con un errore.The Invoke-ADSyncRunProfile cmdlet is synchronous, that is, it does not return control until the Connector has completed the operation, either successfully or with an error.

Quando si pianificano i connettori, è consigliabile pianificarli nell'ordine seguente:When you schedule your Connectors, the recommendation is to schedule them in the following order:

  1. (Completa/differenziale) Importazione da directory locali, ad esempio Active Directory(Full/Delta) Import from on-premises directories, such as Active Directory
  2. (Completa/differenziale) Importazione da Azure AD(Full/Delta) Import from Azure AD
  3. (Completa/differenziale) Sincronizzazione da directory locali, ad esempio Active Directory(Full/Delta) Synchronization from on-premises directories, such as Active Directory
  4. (Completa/differenziale) Sincronizzazione da Azure AD(Full/Delta) Synchronization from Azure AD
  5. Esportazione in Azure ADExport to Azure AD
  6. Esportazione in directory locali, ad esempio Active DirectoryExport to on-premises directories, such as Active Directory

Questo è l'ordine in cui l'utilità di pianificazione predefinita esegue i connettori.This order is how the built-in scheduler runs the Connectors.

Get-ADSyncConnectorRunStatusGet-ADSyncConnectorRunStatus

È anche possibile monitorare il motore di sincronizzazione per verificare se è occupato o inattivo.You can also monitor the sync engine to see if it is busy or idle. Il cmdlet restituisce un risultato vuoto se il motore di sincronizzazione è inattivo e non è in esecuzione un connettore.This cmdlet returns an empty result if the sync engine is idle and is not running a Connector. Se un connettore è in esecuzione, restituisce il nome del connettore.If a Connector is running, it returns the name of the Connector.

Get-ADSyncConnectorRunStatus

Stato di esecuzione del connettore
Nella figura precedente, la prima riga proviene da uno stato in cui il motore di sincronizzazione è inattivo.In the picture above, the first line is from a state where the sync engine is idle. La seconda riga proviene da uno stato in cui Azure AD Connector è in esecuzione.The second line from when the Azure AD Connector is running.

Utilità di pianificazione e installazione guidataScheduler and installation wizard

Se si avvia l'installazione guidata, l'utilità di pianificazione viene sospesa temporaneamente.If you start the installation wizard, then the scheduler is temporarily suspended. Si presuppone infatti che vengano apportate modifiche alla configurazione e queste impostazioni non possono essere applicate se il motore di sincronizzazione è attivamente in esecuzione.This behavior is because it is assumed you make configuration changes and these settings cannot be applied if the sync engine is actively running. Non lasciare quindi aperta l'installazione guidata, perché impedisce al motore di sincronizzazione di eseguire azioni di sincronizzazione.For this reason, do not leave the installation wizard open since it stops the sync engine from performing any synchronization actions.

Passaggi successiviNext steps

Ulteriori informazioni sulla configurazione della sincronizzazione di Azure AD Connect.Learn more about the Azure AD Connect sync configuration.

Ulteriori informazioni su Integrazione delle identità locali con Azure Active Directory.Learn more about Integrating your on-premises identities with Azure Active Directory.