Da quando ho provato i plugin AI (e poi li ho rimossi di nuovo), la mia macchina si blocca completamente durante /admin/upgrade.
Non sempre, ma circa l’80% delle volte.
Di solito la mia intera istanza EC2 si blocca e devo eseguire un riavvio forzato tramite l’interfaccia web EC2 di AWS.
Oggi si blocca di nuovo. Con mia sorpresa, non si blocca completamente. Aprendo l’URL principale ora mostra:
Oops
Il software che alimenta questo forum di discussione ha riscontrato un problema imprevisto. Ci scusiamo per l’inconveniente.
Informazioni dettagliate sull’errore sono state registrate e generata una notifica automatica. Ci daremo un’occhiata.
Non è necessaria alcuna ulteriore azione. Tuttavia, se la condizione di errore persiste, è possibile fornire ulteriori dettagli, inclusi i passaggi per riprodurre l’errore, pubblicando un argomento di discussione nella categoria di feedback del sito.
Ora proverò a riavviarlo di nuovo e a fare la solita procedura sudo ./launcher rebuild app che finora lo ha risolto. Incrociamo le dita che lo faccia anche oggi.
La mia domanda
Qualcuno può darmi qualche suggerimento su dove potrei controllare i file di log o cose simili per ottenere almeno un messaggio di errore sul perché si verificano i blocchi?
Sto utilizzando un’istanza AWS EC2 “t2.medium” con 2 vCPU e 4 GiB di RAM.
L’HDD è di 100 GiB con 60 GiB di spazio libero.
Se può essere d’aiuto, posso aggiornare “t2.medium” a un tipo di istanza più grande.
Sono solo confuso dal fatto che questa configurazione ha funzionato in modo impeccabile (per anni) prima del mio test del plugin AI ufficiale e solo da allora, dopo averlo rimosso, si verificano questi blocchi durante l’aggiornamento.
È cambiata un’altra cosa: la versione del software a cui stai aggiornando. Ultimamente ha iniziato a richiedere più memoria. Quindi penso che potrebbe essere una delle due cose.
Un aggiornamento temporaneo e reversibile a un’istanza con più RAM è probabilmente il modo più semplice per testare se la carenza di memoria è il problema, anche se comporta un paio di riavvii. L’altro modo è aggiungere lo swap, che è anch’esso reversibile.
Questo è un po’ fuori tema, ma vorrei davvero capire. Perché lo swap, che ha usato 200 MB, ha aiutato quando c’erano 2 GB di RAM liberi?
(Capisco che nel mondo degli pollici il sistema SI possa essere confusionario perché usa una scala di 10, ma perché diavolo Mi? Posso in qualche modo capire Gi se è abbreviato da giga, ma mega dovrebbe allora essere Me?)
Penso che il problema originale fosse probabilmente un processo che veniva terminato perché la macchina era a corto di memoria (attenzione all’OOM killer). L’aggiunta dello swap ha fatto sì che la memoria non si esaurisse. Quei due output di free potrebbero non raccontare tutta la storia, a meno che non siano stati presi con molta attenzione nel momento di maggiore stress della macchina. Penso che sia l’utilizzo massimo dello swap ad essere interessante.
Ma c’è anche la questione del parametro del kernel come menzionato in MKJ’s Opinionated Discourse Deployment Configuration
che ho impostato correttamente, ma che forse molte persone non hanno impostato correttamente.
Vale la pena notare che il memory overcommit non ha molto a che fare con Redis. È solo che Redis è abbastanza gentile da suggerire che dovrebbe essere impostato correttamente.
Quindi 4 GB sono al limite al momento della compilazione, se supponiamo che l’ultimo screenshot mostri il momento più stressante.
E questa è un’altra cosa che non riesco a capire: perché altri hanno poca memoria e io, che uso molti plugin e componenti, non ho avuto problemi cosa fa la differenza?
E ho usato ho avuto perché ormai ho 8 GB grazie all’IA (e per me la differenza di prezzo non era così importante, ma questa è un’altra storia).
Questo thread dovrebbe spostarsi altrove o stiamo vedendo questo come una spiegazione del perché l’uso dello swap ha aiutato?
Comunque. Per altri principianti, questo è un esempio in cui si parla un po’ di poca memoria e delle ragioni per questo:
Questa è una domanda fortemente FAQ quando l’aggiornamento fallisce. Ma la ragione per questo è raramente spiegata.
Grazie @uwe_keim - Supporrò che quelle configurazioni del kernel siano il motivo per cui hai dovuto aggiungere lo swap, anche se non sembrava essere utilizzato. (Lo stesso varrebbe se avessi dovuto aggiungere molta RAM, perché la memoria totale disponibile è RAM+swap.)