Hyperdisk, in particolare Hyperdisk Extreme, offre prestazioni migliori per SAP HANA rispetto ai tipi di Persistent Disk basati su SSD.
Per eseguire la migrazione dei volumi del Persistent Disk utilizzati dal database SAP HANA ai volumi Hyperdisk, utilizza gli snapshot del disco di Google Cloud e l'opzione di riavvio rapido SAP HANA.
Esamina le considerazioni sulla migrazione
- Dati di migrazione: l'opzione Riavvio rapido SAP HANA viene utilizzata come istruzione ausiliaria. Riduce il tempo di riposo durante la suddivisione dei dischi eliminando la necessità di attendere il caricamento delle tabelle di database. Tuttavia, assicurati di tenere conto del tempo necessario per ricaricare i tipi di dati BLOB (Binary Large Object) e del magazzino delle righe.
Tempi di inattività: anche se il processo di migrazione richiede un tempo di inattività minimo, la durata effettiva del tempo di inattività dipende dal tempo necessario per completare le seguenti attività:
Creazione di snapshot dei dischi.
Per ridurre il tempo di riposo durante l'acquisizione delle istantanee dei dischi, puoi acquisire istantanee dei dischi prima dell'attività di migrazione pianificata e poi alcune istantanee aggiuntive più vicine all'attività, in modo da avere una differenza minore tra le istantanee.
Creazione di volumi Hyperdisk utilizzando gli snapshot dei volumi del Persistent Disk.
Ricaricare le tabelle SAP HANA nella memoria SAP HANA.
Ripristino dei dischi esistenti: in caso di problemi durante la migrazione, puoi ripristinare i dischi esistenti perché non sono interessati da questa procedura e sono disponibili finché non li elimini manualmente. Per maggiori informazioni, consulta la pagina Eseguire il fallback ai dischi esistenti.
Prima di iniziare
Prima di eseguire la migrazione dei volumi del Persistent Disk utilizzati dal database SAP HANA ai volumi Hyperdisk, assicurati che siano soddisfatte le seguenti condizioni:
- SAP HANA è in esecuzione su istanze Compute Engine certificate da SAP che supportano Hyperdisk.
- I volumi
/hana/data
e/hana/log
sono ospitati su dischi separati. - La gestione dei volumi logici Linux viene utilizzata per la persistenza dello spazio di archiviazione SAP HANA.
Sebbene sia possibile utilizzare lo spazio di archiviazione diretto, è necessario eseguire un rimappaggio esplicito del dispositivo tramite la tabella
/etc/fstab
. L'opzione di riavvio rapido SAP HANA è attivata per il sistema SAP HANA.
Per informazioni su come attivare questa funzionalità, consulta Attivare il riavvio rapido di SAP HANA.
È disponibile un backup valido del database SAP HANA. Questo backup può essere utilizzato per ripristinare il database, se necessario.
Se l'istanza Compute Engine di destinazione fa parte di un cluster ad alta disponibilità (HA), assicurati che il cluster sia in modalità di manutenzione.
Se il database SAP HANA utilizza un deployment scalabile orizzontalmente, ripeti la procedura descritta in questa guida per ogni istanza SAP HANA.
Il database SAP HANA è attivo e funzionante.
Il file system
tmpfs
è completamente caricato con i contenuti dei frammenti di datiMAIN
. Per visualizzare l'utilizzo del file system, esegui il seguente comando:df -Th
L'output è simile al seguente esempio:
# df -Th Filesystem Type Size Used Avail Use% Mounted on ... /dev/mapper/vg_hana_shared-shared xfs 1.0T 56G 968G 6% /hana/shared /dev/mapper/vg_hana_data-data xfs 14T 5.7T 8.2T 41% /hana/data /dev/mapper/vg_hana_log-log xfs 512G 7.2G 505G 2% /hana/log /dev/mapper/vg_hana_usrsap-usrsap xfs 32G 276M 32G 1% /usr/sap tmpfsDB10 tmpfs 5.7T 800G 4.9T 14% /hana/tmpfs0/DB1 tmpfsDB11 tmpfs 5.7T 796G 4.9T 14% /hana/tmpfs1/DB1 tmpfsDB12 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs2/DB1 tmpfsDB13 tmpfs 5.7T 780G 4.9T 14% /hana/tmpfs3/DB1 tmpfsDB14 tmpfs 5.7T 816G 4.9T 15% /hana/tmpfs4/DB1 tmpfsDB15 tmpfs 5.7T 780G 4.9T 14% /hana/tmpfs5/DB1 tmpfsDB16 tmpfs 5.7T 816G 4.9T 15% /hana/tmpfs6/DB1 tmpfsDB17 tmpfs 5.7T 780G 4.9T 14% /hana/tmpfs7/DB1
Esegui la migrazione dei volumi di dischi permanenti ai volumi Hyperdisk
Questa sezione descrive come eseguire la migrazione dei volumi /hana/data
e /hana/log
dai volumi di Persistent Disk ai volumi Hyperdisk.
Per illustrare la procedura di migrazione, viene utilizzata la seguente configurazione di esempio:
- Tipo di macchina:
m2-ultramem-416
(12 TB di memoria, 416 vCPU) - Sistema SAP HANA di scalabilità implementato utilizzando il documento Google Cloud
Terraform: guida al deployment di SAP HANA di scalabilità.
- SO: SLES for SAP 15 SP1
- SAP HANA: HANA 2 SPS06, patch 63
- Tipo di disco predefinito: disco permanente SSD (
pd-ssd
) - I volumi
/hana/data
e/hana/log
sono montati su dischi separati e vengono creati utilizzando LVM e XFS - L'opzione di riavvio rapido SAP HANA è attivata e nel database vengono caricati 6 TB di dati. Per informazioni su come eseguire questa operazione, consulta Abilitazione del riavvio rapido di SAP HANA.
Per eseguire la migrazione dei volumi Persistent Disk ai volumi Hyperdisk, segui questi passaggi:
Interrompi il database SAP HANA eseguendo il comando
HDB stop
:HDB stop
In alternativa, puoi eseguire il comando
sapcontrol
:sapcontrol -nr INSTANCE_NUMBER -function StopSystem HDB
Sostituisci
INSTANCE_NUMBER
con il numero di istanza per il tuo sistema SAP HANA.Per ulteriori informazioni, consulta il documento SAP Avvio e arresto dei sistemi SAP HANA.
Smonta i volumi
/hana/data
e/hana/log
dal file system:umount /hana/data umount /hana/log
Determina i nomi dei dischi che ospitano i volumi
/hana/data
e/hana/log
utilizzando uno dei seguenti metodi:Esegui il comando
ls
:ls -l /dev/disk/by-id/
L'output mostra la mappatura dei nomi dei dischi ai dispositivi, in modo simile al seguente esempio:
... lrwxrwxrwx 1 root root 9 May 18 20:14 google-hana-vm-data00001 -> ../../sdb lrwxrwxrwx 1 root root 9 May 18 20:14 google-hana-vm-log00001 -> ../../sdc ...
Esegui il comando
gcloud compute instances describe
:gcloud compute instances describe INSTANCE_NAME --zone=ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome dell'istanza di calcolo.ZONE
: la zona dell'istanza di calcolo.
L'output mostra i dettagli dell'istanza di calcolo, inclusi i dischi collegati. Ad esempio:
gcloud compute instances describe hana-vm --zone europe-west4-a ... disks: - autoDelete: false deviceName: hana-vm-shared00001 diskSizeGb: '1024' - autoDelete: false deviceName: hana-vm-usrsap00001 diskSizeGb: '32' - autoDelete: false deviceName: hana-vm-data00001 diskSizeGb: '14093' - autoDelete: false deviceName: hana-vm-log00001 diskSizeGb: '512'
Nella console Google Cloud, vai alla pagina Compute Engine Istanze VM e fai clic sul nome dell'istanza di calcolo. La sezione Archiviazione visualizza le informazioni associate al disco.
Crea snapshot dei dischi che ospitano i volumi
/hana/data
e/hana/log
:gcloud compute snapshots create DATA_DISK-snapshot \ --project=PROJECT_ID \ --source-disk-zone=SOURCE_DISK_ZONE \ --source-disk=DATA_DISK \ gcloud compute snapshots create LOG_DISK-snapshot \ --project=PROJECT_ID \ --source-disk-zone=SOURCE_DISK_ZONE \ --source-disk=LOG_DISK
Sostituisci quanto segue:
DATA_DISK
: il nome del disco che ospita il volume/hana/data
, impostato come prefisso per lo snapshot del disco di datiLOG_DISK
: il nome del disco che ospita il volume/hana/log
, impostato come prefisso per lo snapshot del disco di logPROJECT_ID
: l'ID del progetto Google Cloud in cui è dipiegato il discoSOURCE_DISK_ZONE
: la zona Compute Engine in cui è dipiegato il disco
Per saperne di più sulla creazione di snapshot, consulta Creare e gestire gli snapshot dei dischi.
Utilizzando gli snapshot dei dischi che hai creato, crea volumi Hyperdisk per i volumi
/hana/data
e/hana/log
:gcloud compute disks create DATA_DISK-hd \ --project=PROJECT_ID \ --zone=ZONE \ --type=HYPERDISK_TYPE \ --provisioned-iops=IOPS_DATA_DISK \ --source-snapshot=DATA_DISK-snapshot \ gcloud compute disks create LOG_DISK-hd \ --project=PROJECT_ID \ --zone=ZONE \ --type=HYPERDISK_TYPE \ --provisioned-iops=IOPS_LOG_DISK \ --source-snapshot=LOG_DISK-snapshot
Sostituisci quanto segue:
DATA_DISK
: il nome del volume del Persistent Disk che ospita il volume/hana/data
, impostato come prefisso al nome del volume Hyperdisk creatoLOG_DISK
: il nome del volume del Persistent Disk che ospita il volume/hana/log
, impostato come prefisso del nome del volume Hyperdisk creatoPROJECT_ID
: l'ID del progetto Google CloudHYPERDISK_TYPE
: il tipo di Hyperdisk che vuoi creare, ad esempiohyperdisk-extreme
ZONE
: la zona Compute Engine in cui devi eseguire il deployment dei volumi HyperdiskIOPS_DATA_DISK
: le IOPS che vuoi impostare per l'hyperdisk che stai creando per ospitare/hana/data
. Imposti le IOPS in base ai tuoi requisiti di prestazioni.IOPS_LOG_DISK
: le IOPS che vuoi impostare per l'hyperdisk che stai creando per ospitare/hana/log
. Imposti le IOPS in base ai tuoi requisiti di prestazioni.
Se crei volumi Hyperdisk bilanciati (
hyperdisk-balanced
), puoi anche impostarne il throughput.Per informazioni sulle dimensioni minime, sulle IOPS e sul throughput da impostare per l'utilizzo dei volumi Hyperdisk con SAP HANA, consulta la riga corrispondente al tipo di macchina Compute Engine in Dimensioni minime per i volumi Hyperdisk e Persistent Disk basati su SSD.
Per ulteriori informazioni sul ripristino di un disco da uno snapshot, consulta Ripristinare da uno snapshot.
Dall'istanza Compute Engine che ospita il database SAP HANA, scollega i volumi di Persistent Disk che ospitano i volumi
/hana/data
e/hana/log
:gcloud compute instances detach-disk INSTANCE_NAME \ --disk=DATA_DISK \ --zone=ZONE gcloud compute instances detach-disk INSTANCE_NAME \ --disk=LOG_DISK \ --zone=ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome della tua istanza Compute EngineDATA_DISK
: il nome del volume del Persistent Disk che ospita il volume/hana/data
da scollegareLOG_DISK
: il nome del volume del Persistent Disk che ospita il volume/hana/log
da scollegareZONE
: la zona Compute Engine in cui è disegnato il disco
Collega i volumi Hyperdisk che hai creato all'istanza Compute Engine che ospita il database SAP HANA:
gcloud compute instances attach-disk INSTANCE_NAME \ --disk=DATA_DISK-hd \ --zone=ZONE gcloud compute instances attach-disk INSTANCE_NAME \ --disk=LOG_DISK-hd \ --zone=ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome dell'istanza Compute EngineDATA_DISK
: il nome del volume Hyperdisk che vuoi utilizzare per ospitare il volume/hana/data
LOG_DISK
: il nome del volume Hyperdisk che vuoi utilizzare per ospitare il volume/hana/log
ZONE
: la zona Compute Engine in cui è disegnato Hyperdisk
Per montare i volumi Hyperdisk, svolgi i seguenti passaggi come
root
o come utente con accessosudo
:Rimuovi tutte le definizioni di mappatura dei dispositivi per evitare conflitti di mappatura dei dispositivi LVM:
dmsetup remove_all
Esegui la scansione di tutti i dischi per rilevare i gruppi di volumi, ricostruisci le cache e crea i volumi mancanti, inclusi i volumi LVM:
vgscan -v --mknodes
L'output è simile al seguente:
Scanning all devices to initialize lvmetad. Reading volume groups from cache. Found volume group "vg_hana_data" using metadata type lvm2 Found volume group "vg_hana_shared" using metadata type lvm2 Found volume group "vg_hana_log" using metadata type lvm2 Found volume group "vg_hana_usrsap" using metadata type lvm2
Attiva i gruppi di volumi:
vgchange -ay
L'output è simile al seguente:
1 logical volume(s) in volume group "vg_hana_data" now active 1 logical volume(s) in volume group "vg_hana_shared" now active 1 logical volume(s) in volume group "vg_hana_log" now active 1 logical volume(s) in volume group "vg_hana_usrsap" now active
Esegui la scansione dei volumi logici:
lvscan
L'output è simile al seguente:
ACTIVE '/dev/vg_hana_data/data' [13.76 TiB] inherit ACTIVE '/dev/vg_hana_shared/shared' [1024.00 GiB] inherit ACTIVE '/dev/vg_hana_log/log' [512.00 GiB] inherit ACTIVE '/dev/vg_hana_usrsap/usrsap' [32.00 GiB] inherit
Monta i dischi:
mount -av
L'output è simile al seguente:
/ : ignored /boot/efi : already mounted /hana/shared : already mounted /hana/data : already mounted /hana/log : already mounted /usr/sap : already mounted swap : ignored /hana/tmpfs0/DB1 : already mounted /hana/tmpfs1/DB1 : already mounted /hana/tmpfs2/DB1 : already mounted /hana/tmpfs3/DB1 : already mounted /hana/tmpfs4/DB1 : already mounted /hana/tmpfs5/DB1 : already mounted /hana/tmpfs6/DB1 : already mounted /hana/tmpfs7/DB1 : already mounted
Verifica i nuovi volumi:
Verifica l'utilizzo del file system:
df -Th
L'output è simile al seguente:
Filesystem Type Size Used Avail Use% Mounted on ... /dev/mapper/vg_hana_shared-shared xfs 1.0T 56G 968G 6% /hana/shared /dev/mapper/vg_hana_usrsap-usrsap xfs 32G 277M 32G 1% /usr/sap tmpfsDB10 tmpfs 5.7T 784G 4.9T 14% /hana/tmpfs0/DB1 tmpfsDB11 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs1/DB1 tmpfsDB12 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs2/DB1 tmpfsDB13 tmpfs 5.7T 782G 4.9T 14% /hana/tmpfs3/DB1 tmpfsDB14 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs4/DB1 tmpfsDB15 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs5/DB1 tmpfsDB16 tmpfs 5.7T 783G 4.9T 14% /hana/tmpfs6/DB1 tmpfsDB17 tmpfs 5.7T 782G 4.9T 14% /hana/tmpfs7/DB1 /dev/mapper/vg_hana_log-log xfs 512G 7.2G 505G 2% /hana/log /dev/mapper/vg_hana_data-data xfs 14T 5.7T 8.2T 41% /hana/data
Verifica che i dispositivi siano collegati ai nuovi volumi:
lsblk
L'output è simile al seguente:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT ... sdd 8:48 0 1T 0 disk └─vg_hana_shared-shared 254:0 0 1024G 0 lvm /hana/shared sde 8:64 0 32G 0 disk └─vg_hana_usrsap-usrsap 254:3 0 32G 0 lvm /usr/sap sdf 8:80 0 13.8T 0 disk └─vg_hana_data-data 254:1 0 13.8T 0 lvm /hana/data sdg 8:96 0 512G 0 disk └─vg_hana_log-log 254:2 0 512G 0 lvm /hana/log
Avvia il database SAP HANA utilizzando uno dei seguenti comandi:
Esegui il comando
HDB start
:HDB start
Esegui il comando
sapcontrol
:sapcontrol -nr INSTANCE_NUMBER -function StartSystem HDB
Sostituisci
INSTANCE_NUMBER
con il numero di istanza per il tuo database SAP HANA.Per saperne di più, consulta Avvio e arresto dei sistemi SAP HANA.
Ripristino dei dischi esistenti
Se la migrazione del disco non va a buon fine, puoi utilizzare i volumi di Persistent Disk esistenti perché contengono i dati esistenti prima dell'inizio della procedura di migrazione.
Per ripristinare il database SAP HANA allo stato originale, svolgi i seguenti passaggi:
- Arresta l'istanza Compute Engine che ospita il database SAP HANA.
- Scollega i volumi Hyperdisk che hai creato.
- Ricollega i volumi dei Persistent Disk esistenti all'istanza di calcolo.
- Avvia l'istanza di calcolo.