Offload dei processi offloading-jobs

Introduzione introduction

L'offload distribuisce le attività di elaborazione tra le istanze di Experience Manager in una topologia. L'offload consente di utilizzare istanze di Experience Manager specifiche per l'esecuzione di tipi specifici di elaborazione. L'elaborazione specializzata consente di ottimizzare l'utilizzo delle risorse server disponibili.

L'offload si basa sul Apache Sling Discovery e Sling Job Manager. Per utilizzare l'offload, è possibile aggiungere cluster di Experienci Manager a una topologia e identificare gli argomenti dei processi elaborati dal cluster. I cluster sono composti da una o più istanze di Experience Manager, in modo che una singola istanza venga considerata un cluster.

Per informazioni sull'aggiunta di istanze a una topologia, vedere Amministrazione delle topologie.

Distribuzione dei processi job-distribution

Sling JobManager e JobConsumer consentono la creazione di processi elaborati in una topologia:

  • JobManager: servizio che crea processi per argomenti specifici.
  • JobConsumer: servizio che esegue processi di uno o più argomenti. È possibile registrare più servizi JobConsumer per lo stesso argomento.

Quando JobManager crea un processo, il framework Offload seleziona un cluster di Experienci Manager nella topologia per eseguire il processo:

  • Il cluster deve includere una o più istanze che eseguono un JobConsumer registrato per l'argomento del processo.
  • L'argomento deve essere abilitato per almeno un'istanza nel cluster.

Consulta Configurazione del consumo di argomenti per informazioni sull'ottimizzazione della distribuzione dei processi.

chlimage_1-109

Quando il framework di offload seleziona un cluster per eseguire un processo e il cluster è composto da più istanze, la Distribuzione Sling determina quale istanza nel cluster esegue il processo.

Payload processo job-payloads

Il framework Offload supporta i payload dei job che associano i job alle risorse del repository. I payload dei processi sono utili quando vengono creati processi per l'elaborazione delle risorse e il processo viene scaricato in un altro computer.

Al momento della creazione di un processo, il payload si trova solo sull’istanza che lo crea. Quando si esegue l’offload del processo, gli agenti di replica garantiscono che il payload venga creato sull’istanza che alla fine lo utilizza. Al termine dell’esecuzione del processo, la replica inversa fa sì che il payload venga copiato nuovamente nell’istanza che ha creato il processo.

Amministrazione delle topologie administering-topologies

Le topologie sono cluster di Experienci Manager liberamente accoppiati che partecipano all'offload. Un cluster è costituito da una o più istanze del server di Experience Manager (una singola istanza viene considerata un cluster).

Ogni istanza di Experience Manager esegue i seguenti servizi relativi all'offload:

  • Servizio di individuazione: invia le richieste a un connettore di topologia per la connessione alla topologia.
  • Connettore topologia: riceve le richieste di unione e accetta o rifiuta ciascuna richiesta.

Il servizio di individuazione di tutti i membri della topologia punta al connettore topologia su uno dei membri. Nelle sezioni successive, questo membro viene definito membro radice.

chlimage_1-110

Ogni cluster nella topologia contiene un'istanza riconosciuta come leader. La coordinata del cluster interagisce con la topologia per conto degli altri membri del cluster. Quando la linea guida lascia il cluster, viene automaticamente scelta una nuova linea guida per il cluster.

Visualizzazione della topologia viewing-the-topology

Utilizzare il browser Topologia per esplorare lo stato della topologia a cui appartiene l'istanza Experience Manager. Visualizzatore topologia mostra i cluster e le istanze della topologia.

Per ogni cluster viene visualizzato un elenco di membri del cluster che indica l'ordine in cui ogni membro è stato aggiunto al cluster e quale membro è il responsabile. La proprietà Current indica l'istanza che si sta amministrando.

Per ogni istanza del cluster, è possibile visualizzare diverse proprietà relative alla topologia:

  • Elenco consentiti di argomenti per l’utente del processo dell’istanza.
  • Endpoint esposti per la connessione alla topologia.
  • Argomenti del processo per i quali l'istanza è registrata per l'offload.
  • Gli argomenti del processo elaborati dall’istanza.
  1. Utilizzando l’interfaccia utente touch, fai clic sulla scheda Strumenti. (http://localhost:4502/tools.html)

  2. Nell'area Operazioni Granite fare clic su Offload browser.

  3. Nel pannello di navigazione, fate clic su Browser topologia.

    Vengono visualizzati i cluster che partecipano alla topologia.

    chlimage_1-111

  4. Fare clic su un cluster per visualizzare un elenco delle istanze nel cluster e il relativo ID, stato corrente e stato guida.

  5. Fai clic su un ID istanza per visualizzare proprietà più dettagliate.

È inoltre possibile utilizzare la console Web per visualizzare informazioni sulla topologia. La console fornisce ulteriori informazioni sui cluster di topologia:

  • Quale istanza è l’istanza locale.
  • I servizi Connettore topologia utilizzati da questa istanza per connettersi alla topologia (in uscita) e i servizi che si connettono a questa istanza (in ingresso).
  • Cronologia delle modifiche per la topologia e le proprietà dell'istanza.

Per aprire la pagina Gestione topologia della console Web, attenersi alla procedura descritta di seguito.

  1. Apri la console Web nel browser. (http://localhost:4502/system/console)

  2. Fai clic su Principale > Gestione topologia.

    chlimage_1-112

Configurazione dell'appartenenza alla topologia configuring-topology-membership

Apache Sling Resource-Based Discovery Service viene eseguito su ogni istanza per controllare il modo in cui le istanze Experience Manager interagiscono con una topologia.

Il servizio Discovery invia richieste POST periodiche (heartbeat) ai servizi del connettore topologia per stabilire e mantenere connessioni con la topologia. Il servizio Connettore topologia gestisce un elenco consentiti di indirizzi IP o nomi host che possono essere aggiunti alla topologia:

  • Per unire un'istanza a una topologia, specificare l'URL del servizio Connettore topologia del membro radice.
  • Per consentire a un'istanza di unirsi a una topologia, aggiungere l'istanza all'elenco consentiti del servizio Connettore topologia del membro radice.

Utilizza la console web o un nodo sling:OsgiConfig per configurare le seguenti proprietà del servizio org.apache.sling.discovery.impt.Config:

Nome proprietà
Nome OSGi
Descrizione
Valore predefinito
Timeout heartbeat (secondi)
heartbeatTimeout
Il tempo di attesa in secondi di una risposta heartbeat prima che l’istanza di destinazione sia considerata non disponibile.
20
Intervallo heartbeat (secondi)
heartbeatInterval
La quantità di tempo in secondi tra gli heartbeat.
15
Ritardo evento minimo (secondi)
minEventDelay

Quando si verifica una modifica alla topologia, il tempo necessario per ritardare la modifica dello stato da TOPOLOGY_CHANGING a TOPOLOGY_CHANGED. Ogni modifica che si verifica quando lo stato è TOPOLOGY_CHANGING aumenta il ritardo di questo periodo di tempo.

Questo ritardo impedisce agli ascoltatori di essere inondati da eventi.

Per non utilizzare alcun ritardo, specificare 0 o un numero negativo.

3
URL del connettore topologia
topologyConnectorUrls
Gli URL dei servizi Connettore topologia per l’invio di messaggi heartbeat.
http://localhost:4502/libs/sling/topology/connector
Elenco consentiti connettore topologia
topologyConnectorWhitelist
Elenco di indirizzi IP o nomi host consentiti dal servizio Connettore topologia locale nella topologia.

localhost

127.0.0.1

Nome descrittore archivio
leaderElectionRepositoryDescriptor
<no value>

Per connettere un'istanza CQ al membro radice di una topologia, attenersi alla procedura descritta di seguito. La procedura punta l'istanza all'URL del connettore topologia del membro della topologia radice. Eseguire questa procedura su tutti i membri della topologia.

  1. Apri la console Web nel browser. (http://localhost:4502/system/console)
  2. Fai clic su Principale > Gestione topologia.
  3. Fare clic su Configura servizio di individuazione.
  4. Aggiungere un elemento alla proprietà URL del connettore topologia e specificare l'URL del servizio Connettore topologia del membro radice. L’URL è nel formato https://rootservername:4502/libs/sling/topology/connector.

Eseguire la procedura seguente sul membro radice della topologia. La procedura aggiunge i nomi degli altri membri della topologia al relativo elenco consentiti del servizio di individuazione.

  1. Apri la console Web nel browser. (http://localhost:4502/system/console)
  2. Fai clic su Principale > Gestione topologia.
  3. Fare clic su Configura servizio di individuazione.
  4. Per ogni membro della topologia, aggiungere un elemento alla proprietà di elenco consentiti Connettore topologia e specificare il nome host o l'indirizzo IP del membro della topologia.

Configurazione del consumo di argomenti configuring-topic-consumption

Utilizzare il browser Offload per configurare l'utilizzo degli argomenti per le istanze di Experience Manager nella topologia. Per ogni istanza, puoi specificare gli argomenti utilizzati. Ad esempio, per configurare la topologia in modo che una sola istanza utilizzi argomenti di un tipo specifico, disattivare l'argomento su tutte le istanze tranne una.

I job vengono distribuiti tra le istanze che hanno l'argomento associato abilitato utilizzando la logica round robin.

  1. Utilizzando l’interfaccia utente touch, fai clic sulla scheda Strumenti. (http://localhost:4502/tools.html)

  2. Nell'area Operazioni Granite fare clic su Offload browser.

  3. Nel pannello di navigazione, fate clic su Offload browser (Offload Browser).

    Vengono visualizzati gli argomenti di scaricamento e le istanze del server che possono utilizzarli.

    chlimage_1-113

  4. Per disattivare l'utilizzo di un argomento per un'istanza, sotto il nome dell'argomento fare clic su Disattiva accanto all'istanza.

  5. Per configurare l’utilizzo di tutti gli argomenti per un’istanza, fai clic sull’identificatore dell’istanza sotto qualsiasi argomento.

    chlimage_1-114

  6. Fare clic su uno dei seguenti pulsanti accanto a un argomento per configurare il comportamento di consumo per l'istanza, quindi fare clic su Salva:

    • Abilitata: questa istanza utilizza i processi di questo argomento.
    • Disabilitata: questa istanza non utilizza processi di questo argomento.
    • Esclusivo: questa istanza utilizza solo processi di questo argomento.

    Nota: Quando si seleziona Esclusivo per un argomento, tutti gli altri argomenti vengono automaticamente impostati su Disabilitato.

Consumatori processi installati installed-job-consumers

Con Experience Manager vengono installate diverse implementazioni di JobConsumer. Gli argomenti per i quali sono registrati questi JobConsumers vengono visualizzati nel browser Offload. Ulteriori argomenti visualizzati sono quelli registrati da JobConsumers personalizzati. Nella tabella seguente vengono descritti i valori predefiniti di JobConsumers.

Argomento lavoro
Servizio PID
Descrizione
/
org.apache.sling.event.impl.jobs.deprecated.EventAdminBridge
Installato con Apache Sling. Elabora i processi generati dall’amministratore degli eventi OSGi per garantire la compatibilità con le versioni precedenti.
com/day/cq/replication/job/*
com.day.cq.replication.impl.AgentManagerImpl
Agente di replica che replica i payload dei processi.

Disabilitazione e abilitazione di argomenti per un’istanza disabling-and-enabling-topics-for-an-instance

Il servizio Apache Sling Job Consumer Manager fornisce proprietà di elenco consentiti e elenco Bloccati per argomenti. Configura queste proprietà per abilitare o disabilitare l'elaborazione di argomenti specifici in un'istanza di Experience Manager.

Nota: Se l'istanza appartiene a una topologia, è inoltre possibile utilizzare Offload Browser in qualsiasi computer della topologia per attivare o disattivare gli argomenti.

La logica che crea l'elenco degli argomenti abilitati consente innanzitutto tutti gli argomenti presenti nell'elenco consentiti e quindi rimuove gli argomenti presenti nell'elenco Bloccati. Per impostazione predefinita, tutti gli argomenti sono abilitati (il valore di elenco consentiti è *) e nessun argomento è disabilitato (l'elenco Bloccati non ha valore).

Utilizza la console web o un sling:OsgiConfig per configurare le seguenti proprietà. Per sling:OsgiConfig PID del servizio Job Consumer Manager: org.apache.sling.event.impl.jobs.JobConsumerManager.

Nome proprietà nella console web
ID OSGi
Descrizione
Elenco consentiti argomento
job.consumermanager.whitelist
Elenco di argomenti elaborati dal servizio JobManager locale. Con il valore predefinito * tutti gli argomenti vengono inviati al servizio TopicConsumer registrato.
Elenco Bloccati argomento
job.consumermanager.blacklist
Elenco di argomenti non elaborati dal servizio JobManager locale.

Creazione Di Agenti Di Replica Per L'Offload creating-replication-agents-for-offloading

Il framework di offload utilizza la replica per trasportare le risorse tra l'istanza di authoring e quella di lavoro. Il framework di offload crea automaticamente agenti di replica quando le istanze si uniscono alla topologia. Gli agenti vengono creati con valori predefiniti. Modificare manualmente la password utilizzata dagli agenti per l'autenticazione.

CAUTION
Un problema noto con gli agenti di replica generati automaticamente richiede la creazione manuale di nuovi agenti di replica.

Creare gli agenti di replica che trasportano i payload dei processi tra le istanze per l'offload. La figura seguente mostra gli agenti necessari per eseguire l'offload dall'istanza di authoring a un'istanza di lavoro. L’autore ha un ID Sling pari a 1 e l’istanza di lavoro ha un ID Sling pari a 2:

chlimage_1-115

Questa configurazione richiede i tre agenti seguenti:

  1. Agente in uscita sull'istanza di authoring che esegue la replica nell'istanza di lavoro.
  2. Agente inverso sull’istanza di authoring che richiama dalla casella in uscita sull’istanza di lavoro.
  3. Un agente di posta in uscita sull’istanza di lavoro.

Questo schema di replica è simile a quello utilizzato tra le istanze di authoring e di pubblicazione. Tuttavia, per la situazione di scaricamento, tutte le istanze coinvolte sono istanze di authoring.

NOTE
Il framework di offload utilizza la topologia per ottenere gli indirizzi IP delle istanze di offload. Il framework crea quindi automaticamente gli agenti di replica in base a questi indirizzi IP. Se gli indirizzi IP delle istanze di offload cambiano successivamente, la modifica viene propagata automaticamente sulla topologia dopo il riavvio dell'istanza. Tuttavia, il framework di offload non aggiorna automaticamente gli agenti di replica in modo che riflettano i nuovi indirizzi IP. Per evitare questa situazione, utilizzare indirizzi IP fissi per tutte le istanze nella topologia.

Denominazione degli agenti di replica per l'offload naming-the-replication-agents-for-offloading

Utilizza un formato specifico per Nome degli agenti di replica in modo che il framework di offload utilizzi automaticamente l'agente corretto per istanze di lavoro specifiche.

Denominazione dell’agente in uscita nell’istanza di authoring:

offloading_<slingid>, dove <slingid> è l’ID Sling dell’istanza di lavoro.

Esempio: offloading_f5c8494a-4220-49b8-b079-360a72f71559

Denominazione dell’agente inverso nell’istanza di authoring:

offloading_reverse_<slingid>, dove <slingid> è l’ID Sling dell’istanza di lavoro.

Esempio: offloading_reverse_f5c8494a-4220-49b8-b079-360a72f71559

Denominazione della casella in uscita nell’istanza di lavoro:

offloading_outbox

Creazione dell'agente in uscita creating-the-outgoing-agent

  1. Creare un Agente di replica sull'autore. (consultare la documentazione per gli agenti di replica). Specifica qualsiasi Titolo. Il Nome deve seguire la convenzione di denominazione.

  2. Crea l’agente utilizzando le seguenti proprietà:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
    Proprietà Valore
    Impostazioni > Tipo di serializzazione Predefiniti
    Trasporto >URI trasporto https://<ip of target instance>:<port>/bin/receive?sling:authRequestLogin=1
    Trasporto >Utente trasporto Utente di replica sull’istanza di destinazione
    Trasporto >Password trasporto Password utente di replica nell’istanza di destinazione
    Esteso > Metodo HTTP POST
    Triggers > Ignora predefinito True

Creazione dell’agente inverso creating-the-reverse-agent

  1. Creare un Agente replica inversa sull'autore. (consultare la documentazione per gli agenti di replica.) Specifica qualsiasi Titolo. Il Nome deve seguire la convenzione di denominazione.

  2. Crea l’agente utilizzando le seguenti proprietà:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
    Proprietà Valore
    Impostazioni > Tipo di serializzazione Predefiniti
    Trasporto >URI trasporto https://<ip of target instance>:<port>/bin/receive?sling:authRequestLogin=1
    Trasporto >Utente trasporto Utente di replica sull’istanza di destinazione
    Trasporto >Password trasporto Password utente di replica nell’istanza di destinazione
    Esteso > Metodo HTTP GET

Creazione dell’agente di posta in uscita creating-the-outbox-agent

  1. Creare un Agente di replica sull'istanza del lavoratore. (consultare la documentazione per gli agenti di replica.) Specifica qualsiasi Titolo. Il Nome deve essere offloading_outbox.

  2. Crea l’agente utilizzando le seguenti proprietà.

    table 0-row-2 1-row-2 2-row-2 3-row-2
    Proprietà Valore
    Impostazioni > Tipo di serializzazione Predefiniti
    Trasporto >URI trasporto repo://var/replication/outbox
    Trigger > Ignora predefinito True

Ricerca dell’ID Sling finding-the-sling-id

Ottieni l’ID Sling di un’istanza Experience Manager utilizzando uno dei seguenti metodi:

  • Apri la console web e, nelle Impostazioni Sling, individua il valore della proprietà Sling ID (http://localhost:4502/system/console/status-slingsettings). Questo metodo è utile se l'istanza non fa ancora parte della topologia.
  • Utilizzare il browser Topologia se l'istanza fa già parte della topologia.

Ulteriori informazioni further-reading

Oltre ai dettagli presentati in questa pagina, puoi leggere quanto segue:

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2