La 2.4.0 è annunciata e la general availability è attesa per la fine di questo mese. Ho passato le ultime settimane a leggere le note di rilascio e a provare le beta su ambienti di staging, e la mia conclusione è netta: questa non è la solita minor release che si applica in un pomeriggio. È un aggiornamento che tocca l’infrastruttura, e chi lo tratta come una patch qualsiasi rischia di trovarsi con l’admin bloccato o la ricerca a catalogo che non funziona più.
Provo a mettere in fila le tre novità che, secondo me, cambiano davvero le carte in tavola per chi deve pianificare l’upgrade e, soprattutto, per chi deve decidere dove far girare il negozio.
Elasticsearch diventa un requisito obbligatorio
È il punto che pesa di più. Fino a oggi, su Magento Open Source, potevi mandare avanti la ricerca a catalogo con il motore MySQL: non brillante, ma funzionava, e non richiedeva nulla in più sul server. Con la 2.4.0 questa strada si chiude. Il motore di ricerca MySQL viene rimosso ed Elasticsearch diventa un requisito obbligatorio, anche per chi usa la versione Open Source.
Nel concreto significa che senza un’istanza Elasticsearch attiva e correttamente configurata l’installazione non parte. Non è un’opzione da attivare a piacere: è un componente di sistema, esattamente come lo sono PHP e MySQL. La versione richiesta è la 7.x, quindi anche chi aveva già Elasticsearch su rami più vecchi dovrà mettere mano alla configurazione.
Io questa scelta la trovo giusta sul piano tecnico. La ricerca a catalogo su MySQL, su un merchant con qualche decina di migliaia di SKU e attributi filtrabili, era un collo di bottiglia che ho visto degenerare più volte. In un caso, un merchant fashion con un catalogo ampio e molte varianti di taglia e colore, le query di layered navigation mettevano in ginocchio il database nei picchi promozionali. Con Elasticsearch quel problema semplicemente non si pone allo stesso modo. Quindi ben venga l’obbligo, dal punto di vista delle performance.
Il problema è un altro, ed è di natura infrastrutturale: Elasticsearch è un servizio a sé, gira sulla JVM, vuole la sua RAM dedicata e va monitorato. Molti hosting condivisi economici, su cui ancora oggi girano parecchi Magento Open Source, non lo offrono affatto.
La 2FA nell’admin non si può più disabilitare
La seconda novità riguarda la sicurezza. Con la 2.4.0 l’autenticazione a due fattori (2FA) diventa obbligatoria per l’accesso al pannello di amministrazione e non può essere disattivata. Il modulo esiste già come estensione ufficiale da un paio d’anni, ma finora era opzionale. Ora entra di default e resta acceso.
Sul merito non ho dubbi: l’admin di Magento è da sempre uno dei bersagli preferiti per attacchi di brute force e credential stuffing, e proteggerlo con un secondo fattore è il minimo sindacale nel 2020. Chi ha gestito un incidente di sicurezza su un e-commerce sa quanto costa, e non parlo solo di soldi.
Detto questo, c’è un aspetto operativo che va gestito prima dell’upgrade, non dopo. La 2FA cambia il modo in cui i team accedono al backend, e va spiegata a chi ci lavora ogni giorno. Ho visto situazioni in cui, dopo un aggiornamento fatto di fretta, l’unico account con accesso si è ritrovato fuori perché nessuno aveva configurato l’app di autenticazione o salvato i codici di recupero. Bisogna anche assicurarsi che il server possa gestire correttamente l’orario di sistema, perché i codici temporanei dipendono dalla sincronizzazione dell’ora. Sono dettagli banali, finché non ti bloccano.
Cosa cambia per l’hosting
Qui arrivo al punto che mi interessa di più, perché è quello che vedo sottovalutato. La rimozione della ricerca MySQL e l’obbligo di Elasticsearch spostano l’asticella dei requisiti minimi verso l’alto. Con la 2.4.0 un hosting adeguato deve prevedere Elasticsearch 7.x come servizio dedicato, con RAM sufficiente per la JVM oltre a quella già richiesta da PHP e MySQL.
Chi è su un ambiente serio, con stack gestito o cloud dedicato, probabilmente ha già Elasticsearch a disposizione e per lui l’impatto è contenuto. Il vero nodo è per chi sta su hosting condivisi o su VPS tirati al risparmio, dimensionati anni fa sui requisiti della 2.2 o 2.3. Su quelle macchine aggiungere un’istanza Elasticsearch vuol dire spesso saturare la RAM disponibile, e il risultato è un negozio più lento invece che più veloce.
La domanda pratica da porsi non è “come aggiorno il codice”, ma “il mio server regge questa release?”. Sono due progetti diversi. L’upgrade applicativo lo pianifichi con il team di sviluppo; la revisione dell’hosting va fatta prima, e a volte porta a cambiare fornitore.
La mia raccomandazione pratica
Il consiglio che sto dando in queste settimane è di trattare il passaggio alla 2.4.0 come un progetto infrastrutturale a sé, con questa sequenza:
- Verificate l’hosting prima del codice. Controllate se il vostro ambiente offre Elasticsearch 7.x e se ha RAM sufficiente per farlo girare accanto a tutto il resto. Se la risposta è no, questo è il momento di ragionare su un upgrade dell’infrastruttura o su un cambio di fornitore.
- Provate su staging, non in produzione. La 2.4.0 è imminente ma non la applicherei a occhi chiusi su un negozio live il giorno della GA. Preparate un ambiente di staging identico alla produzione, con Elasticsearch configurato, e testate lì reindicizzazione e ricerca a catalogo.
- Configurate la 2FA prima di chiudere l’upgrade. Assicuratevi che almeno due amministratori abbiano l’app di autenticazione impostata e i codici di recupero salvati. Fatelo prima di andare in produzione, non mentre l’admin è già bloccato.
- Non abbiate fretta. La 2.4.0 introduce cambiamenti strutturali. Va bene pianificarne l’adozione, ma la mia opinione è che valga la pena lasciare passare le prime settimane dalla GA e affrontare l’upgrade con calma, su un ambiente che avete già validato.
In sintesi: la direzione di Adobe qui mi convince. Elasticsearch obbligatorio e 2FA di default sono scelte che rendono la piattaforma più solida e più sicura, e vanno nella direzione giusta. Ma sono anche scelte che alzano l’asticella dei requisiti, e chi non aggiorna il modo in cui pensa all’hosting rischia di scoprirlo nel momento sbagliato. La 2.4.0 non è un aggiornamento da fare di corsa: è un’occasione per rimettere mano all’infrastruttura con la testa giusta.
Domande frequenti
Elasticsearch è obbligatorio anche su Magento Open Source con la 2.4.0?
Sì. Con la 2.4.0 il motore di ricerca MySQL viene rimosso ed Elasticsearch 7.x diventa un requisito obbligatorio anche per la versione Open Source. Senza un’istanza Elasticsearch attiva l’installazione non funziona.
La 2FA nell’admin si può disabilitare?
No. Con la 2.4.0 l’autenticazione a due fattori per il pannello di amministrazione è attiva di default e non può essere disattivata. Va configurata per ogni amministratore prima di completare l’upgrade.
Il mio hosting attuale è adeguato per la 2.4.0?
Dipende dalla disponibilità di Elasticsearch 7.x come servizio dedicato e dalla RAM disponibile per la JVM oltre a quella richiesta da PHP e MySQL. Gli hosting condivisi economici e le VPS dimensionate su versioni precedenti spesso non lo sono: vanno verificati prima di pianificare l’upgrade.
Fabio Canovi è esperto di Magento e Adobe Commerce, tra i primi in Italia a ottenere la certificazione Adobe Commerce. Progetta e gestisce piattaforme e-commerce enterprise e segue da vicino l’evoluzione della piattaforma dai tempi di Magento 1.