Gestione dei backup

È possibile eseguire un backup manuale degli ambienti Starter attivi in qualsiasi momento utilizzando il pulsante Backup in Cloud Console o il comando magento-cloud snapshot:create.

Un backup o snapshot è un backup completo dei dati dell'ambiente che include tutti i dati persistenti dei servizi in esecuzione (database MySQL) e di tutti i file archiviati nei volumi montati (var, pub/media, app/ecc.). Lo snapshot non include codice, poiché il codice è già archiviato nell'archivio basato su Git. Impossibile scaricare una copia di uno snapshot.

La funzionalità di backup/snapshot non è applicabile not agli ambienti di staging e produzione Pro, che ricevono backup regolari a scopo di disaster recovery per impostazione predefinita. Per ulteriori informazioni, consultare Backup Pro e Disaster Recovery. A differenza dei backup live automatici negli ambienti Pro Staging e Production, i backup sono non automatici. È tua responsabilità creare manualmente un backup o impostare un processo cron per creare periodicamente un backup degli ambienti di integrazione Starter o Pro.

Creare un backup manuale

È possibile creare un backup manuale di qualsiasi ambiente Starter attivo e dell'ambiente di integrazione Pro da Cloud Console o creare un'istantanea da Cloud CLI. Devi avere un Ruolo amministratore per l'ambiente.

Per creare un backup di qualsiasi ambiente Starter utilizzandoCloud Console:

  1. Accedi a Cloud Console.

  2. Seleziona un ambiente dalla barra di navigazione del progetto. L’ambiente deve essere attivo.

  3. Nella visualizzazione Backup, fare clic su Backup. Questa opzione non è disponibile per un ambiente Pro.

    Backup {width="150"}

Per creare un backup di un ambiente di integrazione utilizzandoCloud Console:

  1. Accedi a Cloud Console.
  2. Seleziona un ambiente di integrazione/sviluppo dalla barra di navigazione del progetto. L’ambiente deve essere attivo.
  3. Selezionare l'opzione Backup nel menu in alto a destra. Questa opzione è disponibile per gli ambienti Starter e Pro.
  4. Fare clic sul pulsante Yes.

Per creare uno snapshot utilizzando magento-cloud CLI:

  1. Sulla workstation locale, passa alla directory del progetto.

  2. Estrai il ramo dell’ambiente per creare un’istantanea.

  3. Crea lo snapshot.

    code language-bash
    magento-cloud snapshot:create --live
    

    In alternativa, è possibile utilizzare il comando breve magento-cloud backup. L'opzione --live lascia l'ambiente in esecuzione per evitare tempi di inattività. Per un elenco completo delle opzioni, immettere magento-cloud snapshot:create --help.

    Risposta di esempio:

    code language-none
    Creating a snapshot of develop-branch
    Waiting for the activity ID (User created a backup of develop-branch):
    
    Creating backup of develop-branch
    Created backup my-snapshot
    [============================] 45 secs (complete)
    Activity ID succeeded
    Snapshot name: my-snapshot
    
  4. Verificare gli snapshot più recenti.

    code language-bash
    magento-cloud snapshot:list
    

    L'elenco restituisce informazioni sullo stato dello snapshot:

    code language-none
    Snapshots on the project (project-id), environment develop-branch (type: development):
    +---------------------------+----------------------+------------+
    | Created                   | Snapshot ID          | Restorable |
    +---------------------------+----------------------+------------+
    | 2023-03-08T17:07:01+00:00 | my-snapshot          | true       |
    +---------------------------+----------------------+------------+
    

Ripristinare un backup manuale

Devi avere accesso amministratore all'ambiente. Hai fino a sette giorni per ripristinare un backup manuale. Il ripristino di un backup non modifica il codice del ramo Git corrente. Il ripristino di un backup in questo modo non è applicabile agli ambienti di staging e produzione Pro; vedere Backup Pro e ripristino di emergenza.

I tempi di ripristino variano a seconda delle dimensioni del database:

  • database di grandi dimensioni (oltre 200 GB) può richiedere 5 ore
  • database di medie dimensioni (150 GB) può richiedere 2 ore e mezza
  • database di piccole dimensioni (60 GB) può richiedere 1 ora
TIP
Ripristino senza backup:
  • Per ripristinare il codice precedente o rimuovere le estensioni aggiunte in un ambiente, vedere Codice di rollback.
  • Per ripristinare un ambiente instabile che non dispone di un backup di not, vedere Ripristinare un ambiente.

Per ripristinare un backup utilizzandoCloud Console:

  1. Accedi a Cloud Console.

  2. Seleziona un ambiente dalla barra di navigazione del progetto.

  3. Nella visualizzazione Backup, scegliere un backup dall'elenco Archiviato. La funzionalità di backup non è applicabile agli ambienti Pro.

  4. Nel menu

    Altro {width="32"}

    (Altro), fare clic su Ripristina.

  5. Rivedere le informazioni di ripristino dal backup e fare clic su Sì, ripristino.

Per ripristinare uno snapshot utilizzando Cloud CLI:

  1. Sulla workstation locale, passa alla directory del progetto.

  2. Consulta il ramo dell’ambiente da ripristinare.

  3. Elenca tutte le istantanee disponibili.

    code language-bash
    magento-cloud snapshot:list
    

    L'elenco restituisce informazioni sugli snapshot disponibili:

    code language-none
    Snapshots on the project (project-id), environment develop-branch (type: development):
    +---------------------------+----------------------+------------+
    | Created                   | Snapshot ID          | Restorable |
    +---------------------------+----------------------+------------+
    | 2023-03-08T17:07:01+00:00 | my-snapshot          | true       |
    +---------------------------+----------------------+------------+
    
  4. Ripristinare una copia istantanea utilizzando l'ID della copia istantanea dall'elenco.

    code language-bash
    magento-cloud snapshot:restore <snapshot-id>
    

Ripristino di un'istantanea di disaster recovery

Per ripristinare lo snapshot del ripristino di emergenza negli ambienti di staging e produzione Pro, Importare l'immagine del database direttamente dal server.

Codice di rollback

I backup e gli snapshot non includono not una copia del codice. Il codice è già archiviato nell’archivio basato su Git, pertanto puoi utilizzare i comandi basati su Git per eseguire il rollback (o il ripristino) del codice. Utilizzare ad esempio git log --oneline per scorrere i commit precedenti, quindi utilizzare git revert per ripristinare il codice da un commit specifico.

Inoltre, puoi scegliere di archiviare il codice in un ramo inattivo. Utilizza i comandi Git per creare un ramo anziché i comandi magento-cloud. Per informazioni sui comandi Git, vedere l'argomento CLI di Cloud.

recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26