AEM viene spesso utilizzato nelle distribuzioni ad alto impatto che potrebbero servire a milioni di utenti. Nella maggior parte dei casi, esistono applicazioni personalizzate che vengono distribuite sulle istanze, e che aumentano la complessità. Qualsiasi sforzo per aggiornare tale implementazione deve essere gestito in modo metodico.
Questa guida aiuta a stabilire obiettivi chiari, fasi e risultati finali durante la pianificazione dell'aggiornamento. Esso si concentra sull'esecuzione e sugli orientamenti generali del progetto. Fornisce una panoramica dei passaggi effettivi dell'aggiornamento, ma si riferisce alle risorse tecniche disponibili laddove appropriato. Esso dovrebbe essere utilizzato unitamente alle risorse tecniche disponibili di cui al documento.
Il processo di aggiornamento AEM necessita di una gestione accurata delle fasi di pianificazione, analisi ed esecuzione con i risultati finali chiave definiti per ciascuna fase.
È possibile effettuare l'aggiornamento direttamente dalle AEM versioni 6.0 e 6.4. I clienti che eseguono 5.6.x e versioni precedenti devono eseguire l'aggiornamento prima alla versione 6.0 o successiva, con la raccomandazione 6.0(SP3). Inoltre, il nuovo formato OAK Segment Tar è ora utilizzato per il Segment Node Store a partire dalla versione 6.3, e la migrazione del repository a questo nuovo formato è obbligatoria anche per le versioni 6.0, 6.1 e 6.2.
Se si sta effettuando l'aggiornamento da AEM 6.2 a 6.3, è necessario eseguire l'aggiornamento dalle versioni (6.2-SP1-CFP1 - -6.2SP1-CFP12.1) oppure a partire da 6.2SP1-CFP15. In caso contrario, se si sta effettuando l'aggiornamento da 6.2SP1-CFP13/6.2SP1CFP14 a AEM 6.3, è inoltre necessario eseguire l'aggiornamento ad almeno la versione 6.3.2.2. In caso contrario, AEM Sites avrebbe avuto esito negativo dopo l'aggiornamento.
Di seguito è riportato un elenco delle aree interessate da un tipico progetto di aggiornamento AEM:
Componente | Impatto | Descrizione |
Sistema operativo | Effetti incerti ma sottili | Al momento dell'aggiornamento AEM, potrebbe essere il momento di aggiornare anche il sistema operativo e questo potrebbe avere un impatto. |
Java Runtime | Impatto moderato | AEM 6.3 richiede JRE 1.7.x (64 bit) o versione successiva. JRE 1.8 è l'unica versione attualmente supportata da Oracle. |
Hardware | Impatto moderato | Per completare la pulizia online delle revisioni è necessario spazio libero su disco pari al 25% delle dimensioni dell'archivio e al 15% dello spazio libero dell'heap . Potrebbe essere necessario aggiornare l'hardware per garantire risorse sufficienti per l'esecuzione della pulizia delle revisioni online fino a . Inoltre, se si esegue l'aggiornamento da una versione precedente alla AEM 6, è possibile che vi siano requisiti di storage aggiuntivi. |
Repository dei contenuti (CRX o Oak) | Impatto elevato | A partire dalla versione 6.1, AEM non supporta CRX2, pertanto è necessaria una migrazione a Oak (CRX3) se si esegue l'aggiornamento da una versione precedente. AEM 6.3 ha implementato un nuovo archivio dei nodi dei segmenti che richiede anche una migrazione. Lo strumento crx2oak è utilizzato a questo scopo. |
Componenti AEM/Contenuto | Impatto moderato | /libs e /apps sono facilmente gestibili attraverso l'aggiornamento, ma /etc in genere richiede una riapplicazione manuale delle personalizzazioni. |
Servizi AEM | Basso impatto | La maggior parte AEM servizi di base sono testati per l'aggiornamento. Questa è un'area di basso impatto. |
Servizi applicazione personalizzati | Impatto basso-alto | A seconda dell'applicazione e della personalizzazione, potrebbero esserci dipendenze da JVM, versioni del sistema operativo e alcune modifiche relative all'indicizzazione , in quanto gli indici non vengono generati automaticamente in Oak. |
Contenuto applicazione personalizzato | Impatto basso-alto | I contenuti che non saranno gestiti tramite l'aggiornamento possono essere sottoposti a backup prima che l'aggiornamento abbia luogo e quindi spostati nuovamente nella directory archivio. La maggior parte dei contenuti può essere gestita tramite lo strumento di migrazione. |
È importante verificare che sia in esecuzione un sistema operativo supportato, runtime Java, versione httpd e Dispatcher. Per ulteriori informazioni, vedere la pagina AEM 6.4 Technical Requirements. L'aggiornamento di questi componenti dovrà essere incluso nel piano di progetto e dovrebbe avvenire prima dell'aggiornamento AEM.
Un sacco di lavoro si occupa di pianificazione ed esecuzione di un AEM aggiornamento. Al fine di chiarire i diversi sforzi intrapresi in questo processo, abbiamo suddiviso gli esercizi di pianificazione ed esecuzione in fasi separate. Nelle sezioni seguenti, ogni fase produce un risultato finale che viene spesso sfruttato da una fase futura del progetto.
Con qualsiasi nuova versione, potrebbero essere introdotte modifiche all’interfaccia utente e ai flussi di lavoro degli utenti. Inoltre, le nuove versioni introducono nuove funzioni che potrebbero essere utili per l'azienda per sfruttare. Consigliamo di rivedere le modifiche funzionali introdotte e di organizzare un piano per formare i vostri utenti a sfruttarle efficacemente.
Le nuove funzioni di AEM 6.4 si trovano nella sezione AEM di adobe.com. Assicuratevi di notare eventuali modifiche alle interfacce utente o alle funzionalità dei prodotti comunemente utilizzate nella vostra organizzazione. Osservando le nuove funzioni, prendete nota anche di tutte le funzioni che possono essere di valore per la vostra organizzazione. Dopo aver esaminato le modifiche apportate alla AEM 6.4, sviluppate un piano di formazione per gli autori. Ciò potrebbe comportare l'utilizzo di risorse liberamente disponibili come i video delle funzioni di helpx o la formazione formale offerta tramite Adobe Digital Learning Services.
L'implementazione di AEM da parte di ogni cliente è unica ed è stata personalizzata per soddisfare le proprie esigenze aziendali. Di conseguenza, è importante determinare tutte le personalizzazioni che sono state effettuate al sistema in modo che possano essere incluse in un piano di test. Questo piano di test alimenterà il processo di QA che eseguiamo sull'istanza aggiornata.
L'ambiente di produzione deve essere duplicato e il test deve essere eseguito dopo l'aggiornamento per essere certi che tutte le applicazioni e il codice personalizzato vengano eseguiti come desiderato. Devi ripristinare tutte le tue personalizzazioni ed eseguire test di prestazioni, carico e sicurezza. Quando organizzate il piano di test, accertatevi di coprire tutte le personalizzazioni effettuate al sistema, oltre alle interfacce utente e ai flussi di lavoro out-of-box che vengono utilizzati nelle operazioni quotidiane. Questi possono includere servizi e servlet OSGI personalizzati, integrazioni per Adobe Marketing Cloud, integrazioni con terze parti tramite connettori AEM, integrazioni di terze parti personalizzate, componenti e modelli personalizzati, sovrapposizioni di interfaccia utente personalizzate in AEM e flussi di lavoro personalizzati. Per i clienti che eseguono la migrazione da una versione precedente alla AEM 6, eventuali query personalizzate devono essere analizzate in quanto potrebbero dover essere indicizzate. Per i clienti che dispongono già di una versione AEM 6.x, queste query devono essere ancora testate per garantire che i loro indici continuino a funzionare efficacemente dopo l'aggiornamento.
Durante l'aggiornamento, è possibile che sia necessario aggiornare anche altri componenti nello stack tecnico, come il sistema operativo o JVM. Inoltre, è possibile che a causa delle modifiche nella struttura del repository sia necessario hardware aggiuntivo. In genere questo problema si verifica solo per i clienti che eseguono la migrazione da istanze precedenti alla 6.x, ma è importante tenerne conto. Infine, potrebbero essere necessarie modifiche alle procedure operative, inclusi i processi di monitoraggio, manutenzione, backup e disaster recovery.
Esaminate i requisiti tecnici per AEM 6.4 e assicuratevi che l'hardware e il software attuali siano sufficienti. Per le potenziali modifiche ai processi operativi, consulta i documenti seguenti:
Monitoraggio e manutenzione:
Tecniche consigliate per il monitoraggio delle risorse
Risorse di Monitoring Server tramite la console JMX
Backup/ripristino e disaster recovery:
Come eseguire AEM con TarMK Cold Standby
AEM 6.4 ha introdotto modifiche alla struttura del repository che aiuteranno a rendere gli aggiornamenti più semplici. Le modifiche comportano lo spostamento del contenuto dalla cartella /etc a cartelle quali /libs, /apps e /content, a seconda che Adobe o un cliente sia proprietario del contenuto, limitando così le possibilità di sovrascrivere il contenuto durante le release. La ristrutturazione del repository è stata effettuata in modo tale da non richiedere modifiche di codice al momento dell'aggiornamento 6.4, sebbene sia consigliabile rivedere i dettagli in Ristrutturazione del repository in AEM 6.4 durante la pianificazione di un aggiornamento.
A causa dell'ampia varietà di personalizzazioni che i nostri clienti applicano ai loro ambienti AEM, è importante dedicare un po' di tempo per determinare il livello generale di impegno che ci si dovrebbe aspettare nell'aggiornamento.
Per valutare la complessità dell'aggiornamento è possibile adottare due approcci: una fase preliminare può semplicemente utilizzare il nuovo Rilevatore di pattern, disponibile per l'esecuzione sulle istanze AEM 6.1, 6.2 e 6.3. Il rilevatore di pattern è il modo più semplice per valutare la complessità complessiva dell'aggiornamento da attendersi utilizzando i pattern riportati. Il rapporto del rilevatore di pattern include pattern per identificare le API non disponibili utilizzate dalla base di codice personalizzata (ciò è stato fatto utilizzando i controlli di compatibilità pre-aggiornamento in 6.3).
Dopo la valutazione iniziale, un passo successivo più completo potrebbe essere quello di eseguire un aggiornamento su un'istanza di prova ed eseguire alcune prove di fumo di base. Adobe fornisce anche alcuni . Inoltre, l'elenco di Funzioni obsolete e rimosse deve essere rivisto non solo per la versione in cui si sta effettuando l'aggiornamento, ma anche per qualsiasi versione tra le versioni di origine e di destinazione. Ad esempio, se si effettua l’aggiornamento da AEM 6.2 a 6.4, è importante rivedere le funzioni AEM 6.3 obsolete e rimosse oltre a quelle per AEM 6.4.
Il rilevamento dei pattern introdotto in 6.4 dovrebbe fornire una stima abbastanza precisa di cosa aspettarsi durante un aggiornamento per la maggior parte dei casi. Tuttavia, per le personalizzazioni e le distribuzioni più complesse in cui si verificano modifiche incompatibili, è possibile aggiornare un'istanza di sviluppo a AEM 6.4 in base alle istruzioni riportate in Esecuzione di un aggiornamento locale. Una volta completato, eseguire alcuni test di fumo ad alto livello su questo ambiente. L'obiettivo di questo esercizio non è di completare esaustivamente l'inventario dei casi di test e produrre un inventario formale dei difetti, ma di darci una stima approssimativa della quantità di lavoro che sarà richiesto per aggiornare il codice per la compatibilità 6.4. In combinazione con le Rilevamento pattern e le modifiche architettoniche determinate nella sezione precedente, è possibile fornire al team di gestione del progetto una stima approssimativa per la pianificazione dell'aggiornamento.
Sebbene Adobe abbia documentato il processo di aggiornamento di un'istanza AEM, il layout di rete, l'architettura di distribuzione e le personalizzazioni di ciascun cliente richiederanno una messa a punto e una personalizzazione di questo approccio. Per questo motivo, ti invitiamo a consultare tutta la documentazione fornita e a utilizzarla per informare un runbook specifico per il progetto che delinea le procedure di aggiornamento e ripristino specifiche che seguirai nel tuo ambiente. Se si esegue l'aggiornamento da CRX2, assicurarsi di valutare quanto tempo impiegherà la migrazione dei contenuti per passare da CRX2 a Oak. Per i grandi repository, potrebbe essere sostanziale.
Abbiamo fornito procedure di aggiornamento e ripristino in Procedura di aggiornamento, nonché istruzioni dettagliate per l'applicazione dell'aggiornamento in Esecuzione di un Aggiornamento sul posto. Queste istruzioni devono essere riviste e prese in considerazione con l'architettura del sistema, le personalizzazioni e la tolleranza di inattività per determinare le procedure di switch-over e rollback appropriate che verranno eseguite durante l'aggiornamento. Eventuali modifiche all'architettura o alle dimensioni del server devono essere incluse nella progettazione del runbook personalizzato. E' importante notare che questo dovrebbe essere trattato come un primo progetto. Quando il team completa i cicli di QA e di sviluppo e implementa l'aggiornamento nell'ambiente di pre-produzione, è probabile che sia necessaria la necessità di alcuni passaggi aggiuntivi. Idealmente, il presente documento dovrebbe contenere informazioni sufficienti affinché, se consegnato a un membro del personale operativo, possa completare l'aggiornamento completamente dalle informazioni contenute all'interno.
Possiamo utilizzare l'output degli esercizi precedenti per creare un piano di progetto che copra le tempistiche previste per i nostri sforzi di test o sviluppo, formazione e l'esecuzione effettiva dell'aggiornamento.
Un piano di progetto globale dovrebbe includere:
Completamento dei piani di sviluppo e di collaudo
Aggiornamento di ambienti di sviluppo e di controllo della qualità
Aggiornamento della base di codice personalizzata per AEM 6.4
Un ciclo di verifica e correzione della qualità
Aggiornamento dell'ambiente di gestione temporanea
Integrazione, prestazioni e test del carico
Certificazione ambientale
Vai live
Abbiamo fornito procedure per Aggiornamento del codice e delle personalizzazioni compatibili con AEM 6.4. Poiché questo processo iterativo viene eseguito, è necessario apportare modifiche al runbook in base alle esigenze. Consultare anche Compatibilità con le versioni precedenti nella AEM 6.4 per informazioni su come le personalizzazioni possono rimanere compatibili con le versioni precedenti nella maggior parte dei casi senza richiedere lo sviluppo subito dopo l'aggiornamento.
Il processo di sviluppo e test è in genere iterativo. A causa delle personalizzazioni, le modifiche apportate durante l'aggiornamento potrebbero rendere inutilizzabile un'intera sezione del prodotto. Una volta che gli sviluppatori hanno affrontato la causa principale del problema e che il team di test ha accesso per testare queste funzionalità, è possibile che vengano individuati ulteriori problemi. Poiché vengono rilevati problemi che richiedono modifiche al processo di aggiornamento, accertati di aggiungerli al runbook di aggiornamento personalizzato. Dopo diverse fasi di test e correzione, la base di codice deve essere completamente convalidata e pronta per la distribuzione nell'ambiente di gestione temporanea.
Consigliamo di eseguire un ciclo finale di test dopo che la base di codice è stata certificata dal team di controllo qualità dell'organizzazione. Questo ciclo di test comporterà la convalida del runbook in un ambiente di verifica, seguita da cicli di accettazione, prestazioni e test di protezione da parte dell'utente.
Questo passaggio è fondamentale, in quanto è l'unico momento in cui è possibile convalidare i passaggi del runbook rispetto a un ambiente di produzione. Una volta aggiornato l'ambiente, è importante concedere agli utenti finali un certo tempo di tempo per accedere e svolgere le attività che svolgono quando utilizzano il sistema nelle loro attività quotidiane. Non è raro che gli utenti utilizzino una parte del sistema che non era stata considerata in precedenza. Trovare e correggere i problemi in queste aree prima del live può aiutare a prevenire costose interruzioni di produzione. Poiché una nuova versione di AEM contiene modifiche significative alla piattaforma sottostante, è importante eseguire test di prestazioni, carico e sicurezza sul sistema come se lo stessimo avviando per la prima volta.
Una volta ricevuta la firma finale da parte di tutte le parti interessate, è il momento di eseguire le procedure del runbook che sono state definite. Abbiamo fornito i passaggi per l'aggiornamento e il ripristino in Procedura di aggiornamento e i passaggi di installazione in Esecuzione di un Aggiornamento in loco come punto di riferimento.
Nelle istruzioni per la convalida dell'ambiente sono stati forniti alcuni passaggi. Questi includono controlli di base come la scansione dei registri di aggiornamento e la verifica che tutti i bundle OSGi siano stati avviati correttamente, ma consigliamo anche la convalida con i vostri casi di test basati sui vostri processi aziendali. Consigliamo inoltre di controllare la pianificazione di AEM pulizia revisioni online e le relative routine per assicurarsi che si verifichino durante un periodo di inattività della società. Queste routine sono essenziali per le prestazioni a lungo termine della AEM.