Modifica della crittografia del cluster - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Modifica della crittografia del cluster

Puoi modificare un cluster non crittografato per utilizzare la crittografia AWS Key Management Service (AWS KMS), utilizzando una chiave gestita o una chiave AWS gestita dal cliente. Quando modifichi il cluster per abilitare la AWS KMS crittografia, Amazon Redshift migra automaticamente i dati in un nuovo cluster crittografato. È anche possibile ripristinare un cluster non crittografato in un cluster crittografato modificando il cluster.

Durante l'operazione di migrazione, il cluster rimane disponibile in sola lettura e lo stato visualizzato sarà resizing (ridimensionamento).

Se il cluster è configurato per abilitare la copia di istantanee tra AWS regioni, è necessario disabilitarlo prima di modificare la crittografia. Per ulteriori informazioni, consultare Copia di snapshot in un'altra regione AWS e Configura una copia delle istantanee tra regioni per un cluster crittografato AWS KMS. Non puoi abilitare la crittografia con il modulo di sicurezza hardware (HSM) modificando il cluster. Devi invece creare un nuovo cluster crittografato con HSM ed eseguire la migrazione dei dati al nuovo cluster. Per ulteriori informazioni, consulta Migrazione a un cluster crittografato con HSM.

Per modificare la crittografia del database su un cluster
  1. Accedi AWS Management Console e apri la console Amazon Redshift all'indirizzo https://console.aws.amazon.com/redshiftv2/.

  2. Dal menu di navigazione, scegliere Clusters (Cluster), quindi scegliere il cluster di cui si desidera modificare la crittografia.

  3. Scegli Properties (Proprietà).

  4. Nella sezione Configurazioni di database, scegliere Modifica, quindi Modifica crittografia.

  5. Scegliere una delle opzioni di crittografia e selezionare Salva modifiche.

Per cambiare la crittografia del cluster con l'interfaccia a riga di comando

Per modificare il cluster non crittografato da utilizzare AWS KMS, modify-cluster esegui il comando CLI e –-encrypted specifica, come illustrato di seguito. Per impostazione predefinita viene utilizzata la chiave KMS predefinita. Per specificare una chiave gestita dal cliente, includi l'opzione --kms-key-id.

aws redshift modify-cluster --cluster-identifier <value> --encrypted --kms-key-id <value>

Per rimuovere la crittografia dal cluster, esegui questo comando della CLI.

aws redshift modify-cluster --cluster-identifier <value> --no-encrypted

Migrazione a un cluster crittografato con HSM

Per eseguire la migrazione di un cluster non crittografato a un cluster crittografato con un modulo di sicurezza hardware (HSM), crea un nuovo cluster crittografato e sposta i dati nel nuovo cluster. Non puoi eseguire la migrazione a un cluster crittografato con HSM modificando il cluster.

Per eseguire la migrazione da un cluster non crittografato a un cluster crittografato con HSM, devi prima scaricare i dati dal cluster di origine esistente. Ricarica quindi i dati in un nuovo cluster di destinazione con l'impostazione di crittografia scelta. Per ulteriori informazioni sull'avvio di un cluster crittografato, consultare Crittografia dei database di Amazon Redshift.

Durante il processo di migrazione, il cluster di origine è disponibile per query di sola lettura fino all'ultima fase. L'ultima fase consiste nel rinominare i cluster di destinazione e di origine, scambiando gli endpoint in modo che il traffico venga instradato al nuovo cluster di destinazione. Il cluster di destinazione non è disponibile fino al riavvio successivo alla ridenominazione. Durante il trasferimento dei dati, sospendi qualsiasi caricamento dei dati e altre operazioni di scrittura nel cluster di origine.

Preparativi per la migrazione
  1. Identificare tutti i sistemi dipendenti che interagiscono con Amazon Redshift, ad esempio gli strumenti di business intelligence (BI) e i sistemi di estrazione, trasformazione e caricamento (ETL).

  2. Identificare le query di convalida per testare la migrazione.

    Ad esempio, è possibile usare la query seguente per trovare il numero di tabelle definite dall'utente.

    select count(*) from pg_table_def where schemaname != 'pg_catalog';

    La query seguente restituisce un elenco di tutte le tabelle definite dall'utente e il numero di righe in ogni tabella.

    select "table", tbl_rows from svv_table_info;
  3. Scegliere un buon momento per la migrazione. Per trovare un momento in cui l'utilizzo del cluster è minimo, monitorare i parametri del cluster, come utilizzo della CPU e numero di connessioni al database. Per ulteriori informazioni, consultare Visualizzazione di dati di prestazioni dei cluster.

  4. Rimuovere le tabelle inutilizzate.

    Per creare un elenco di tabelle che indichi anche il numero di volte in cui sono state eseguite query su ogni tabella, eseguire la query seguente.

    select database, schema, table_id, "table", round(size::float/(1024*1024)::float,2) as size, sortkey1, nvl(s.num_qs,0) num_qs from svv_table_info t left join (select tbl, perm_table_name, count(distinct query) num_qs from stl_scan s where s.userid > 1 and s.perm_table_name not in ('Internal worktable','S3') group by tbl, perm_table_name) s on s.tbl = t.table_id where t."schema" not in ('pg_internal');
  5. Avviare un nuovo cluster crittografato.

    Usare lo stesso numero di porta del cluster di destinazione come cluster di origine. Per ulteriori informazioni sull'avvio di un cluster crittografato, consultare Crittografia dei database di Amazon Redshift.

  6. Configurare il processo di scaricamento e caricamento.

    Puoi utilizzare l'utilità di scaricamento/copia di Amazon Redshift per semplificare la migrazione di dati tra cluster. L'utilità esporta dati dal cluster di origine a una posizione in Amazon S3. I dati vengono crittografati con. AWS KMS L'utilità importa quindi automaticamente i dati nella destinazione. Facoltativamente, è possibile usare l'utilità per eseguire la pulizia di Amazon S3 al termine della migrazione.

  7. Eseguire un test per verificare il processo e determinare il periodo di tempo per cui sospendere le operazioni di scrittura.

    Durante le operazioni di scaricamento e caricamento dei dati, mantenere la coerenza dei dati sospendendo il caricamento dei dati e altre operazioni di scrittura. Usando una delle tabelle di dimensioni maggiori, eseguire il processo di scaricamento e caricamento per stimare i tempi.

  8. Creare oggetti di database, come schemi, viste e tabelle. Per aiutarti a generare le istruzioni DDL (Data Definition Language) necessarie, puoi utilizzare gli script presenti AdminViewsnel AWS GitHub repository.

Per eseguire la migrazione del cluster
  1. Arrestare tutti i processi ETL nel cluster di origine.

    Per verificare che non vi siano operazioni di scrittura in corso, usare la Console di gestione di Amazon Redshift per monitorare gli IOPS di scrittura. Per ulteriori informazioni, consultare Visualizzazione di dati di prestazioni dei cluster.

  2. Eseguire le query di convalida identificate in precedenza per raccogliere informazioni sul cluster di origine non crittografato prima della migrazione.

  3. Facoltativo: creare una coda di gestione dei carichi di lavoro per usare il numero massimo di risorse disponibili sia nel cluster di origine sia nel cluster di destinazione. Ad esempio, creare una coda denominata data_migrate e configurarla con memoria al 95% e simultaneità 4. Per ulteriori informazioni, consultare Routing di query su code basate su gruppi di utenti e gruppi di query nella Guida per gli sviluppatori di database di Amazon Redshift.

  4. Utilizzando la data_migrate coda, esegui il. UnloadCopyUtility

    Monitorare i processi UNLOAD e COPY tramite la console Amazon Redshift.

  5. Eseguire di nuovo le query di convalida e verificare che i risultati corrispondano a quelli del cluster di origine.

  6. Rinominare i cluster di origine e di destinazione per scambiare gli endpoint. Per evitare interruzioni, eseguire questa operazione al di fuori dell'orario di ufficio.

  7. Verificare di potersi connettere al cluster di destinazione usando tutti i client SQL, tra cui gli strumenti ETL e di creazione di report.

  8. Arrestare il cluster di origine non crittografato.