Questa guida mostra come configurare le risorse Google Cloud per un cluster ad alta disponibilità (HA) IBM Db2 (IBM Db2) per SAP sul sistema operativo Linux.
Queste istruzioni sono complementari a quelle fornite da SAP e IBM nella soluzione IBM Db2 ad alta disponibilità: IBM Tivoli System Automation for Multiplatforms. Fai sempre riferimento alla documentazione più recente fornita da SAP e IBM quando installi e configuri un cluster IBM Db2 ad alta disponibilità su Google Cloud.
Queste istruzioni sono per un cluster IBM Db2 HA che utilizza IBM Tivoli System Automation for Multiplatforms (TSAMP) per monitorare il sistema e avviare l'azione appropriata se il sistema non risponde. Il cluster utilizza la funzione di ripristino di emergenza ad alta disponibilità (HADR) di IBM Db2 per replicare le modifiche dei dati registrati nel database di standby.
Il cluster utilizza un indirizzo IP dinamico implementato da Google Cloud con un route statico di Google Cloud o un indirizzo IP alias. In questo contesto, il termine "indirizzo IP dinamico" è sinonimo del termine "indirizzo IP virtuale", utilizzato nella documentazione SAP.
Queste istruzioni mostrano come configurare un cluster IBM Db2 HA costituito da un server IBM Db2 principale e da un server IBM Db2 secondario o di riserva, ciascuno di cui viene eseguito il deployment su una macchina virtuale (VM) Compute Engine separata.
Questa guida è rivolta a utenti SAP e IBM Db2 esperti che hanno familiarità con i cluster ad alta disponibilità.
Per ulteriori informazioni sulla pianificazione di un cluster Db2 ad alta disponibilità, consulta Cluster IBM Db2 ad alta disponibilità nella Guida alla pianificazione di IBM Db2 per SAP.
Documentazione SAP obbligatoria
Le istruzioni per installare e configurare i componenti SAP e IBM sono fornite da SAP nella soluzione IBM Db2 ad alta disponibilità: IBM Tivoli System Automation for Multiplatforms.
Leggi la documentazione di SAP e Google Cloud prima di iniziare le procedure descritte in queste istruzioni. Nelle varie fasi di implementazione, potresti dover fare riferimento sia alla documentazione di SAP sia a quella di Google Cloud.
Prerequisiti
Prima di creare il cluster IBM Db2 ad alta disponibilità, assicurati che siano soddisfatti i seguenti prerequisiti:
- Tu o la tua organizzazione avete un account Google Cloud e avete creato un progetto per il deployment del cluster IBM Db2 HA. Per informazioni sulla creazione di progetti Google Cloud, consulta Prerequisiti nella guida al deployment di IBM Db2 per SAP.
- Se vuoi che il tuo carico di lavoro SAP venga eseguito in conformità con la residenza dei dati, controllo dell'accesso, il personale di assistenza o i requisiti normativi, devi creare la cartella Assured Workloads richiesta. Per ulteriori informazioni, consulta Controlli di conformità e sovranità per SAP su Google Cloud.
Devi disporre di una rete Virtual Private Cloud su Google Cloud. Per istruzioni sulla configurazione di una rete VPC e delle regole firewall, nonché per la configurazione di un gateway NAT o di bastion host per IBM Db2 per SAP, consulta la guida al deployment di IBM Db2 per SAP.
Se OS Login è abilitato nei metadati del progetto, devi disattivarlo temporaneamente fino al completamento del deployment. Ai fini del deployment, questa procedura configura le chiavi SSH nei metadati dell'istanza. Quando l'accesso al sistema operativo è abilitato, le configurazioni delle chiavi SSH basate su metadati vengono disabilitate. Al termine del deployment, puoi riattivare l'accesso al sistema operativo.
Per ulteriori informazioni, vedi:
Deployment di un cluster IBM Db2 ad alta disponibilità su Google Cloud
Queste istruzioni mostrano come eseguire il deployment di due VM, definire un indirizzo IP dinamico e configurare l'indirizzo IP alias o le route di Google Cloud che supportano l'indirizzo IP dinamico. Quando devi installare i componenti IBM, consulta la documentazione SAP.
I principali servizi Google Cloud che devi configurare per un cluster ad alta disponibilità IBM Db2 sono:
- Una rete e una subnet VPC
- Regole firewall (se non utilizzi un'altra forma di controllo dell'accesso alla rete)
- VM Compute Engine e archiviazione su disco permanente
Inoltre, scarichi e utilizzi uno script di assistenza Google Cloud quando definisci la risorsa personalizzata utilizzata da TSAMP per gestire il passaggio dell'indirizzo IP dinamico tra gli host. Lo script consente a TSAMP di interagire con le API Google Cloud.
Informazioni su Deployment Manager
In queste istruzioni, definisci le opzioni di risorse per l'installazione in un modello di file di configurazione di Deployment Manager.
Deployment Manager tratta tutte le risorse create per il sistema SAP come un'unica entità chiamata deployment. Puoi visualizzare e lavorare con tutti i deployment del tuo progetto nella pagina Deployment della console Google Cloud.
Tieni presente i seguenti comportamenti quando utilizzi Deployment Manager:
- L'eliminazione di un deployment comporta l'eliminazione di tutte le risorse associate al deployment, tra cui le VM, i dischi permanenti e tutti i sistemi SAP installati sulla VM.
Per impostazione predefinita, Deployment Manager utilizza il criterio di creazione della risorsa
ACQUIRE
. Se specifichi un nome VM già in uso da un'altra VM nel tuo progetto, Deployment Manager non crea una nuova VM, ma aggiunge la VM esistente al nuovo deployment. Se la VM originale è stata creata da un'esecuzione precedente di Deployment Manager, è associata a due implementazioni.Se poi elimini il nuovo deployment, la VM acquisita viene eliminata dal deployment che l'ha creata in origine. Per evitare questo scenario, imposta il criterio della risorsa Deployment Manager su
CREATE
o assicurati di utilizzare nomi di risorse univoci nel nuovo deployment.Per informazioni sui criteri che puoi utilizzare durante la creazione delle risorse con Deployment Manager e su come specificarli, consulta la documentazione di Deployment Manager.
Eseguire il deployment delle VM per un cluster IBM Db2 ad alta disponibilità con Deployment Manager
In Cloud Shell, scarica il modello di file di configurazione
template_ha.yaml
nella tua directory di lavoro:wget https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_db2/template_ha.yaml
Per aprire l'editor di codice di Cloud Shell, fai clic sull'icona a forma di matita (edit) nell'angolo in alto a destra della finestra del terminale di Cloud Shell.
Se vuoi, rinomina il file
template_ha.yaml
per identificare la configurazione che definisce. Ad esempio,db2_ha_s123_dh1.yaml
.Per aprire
template_ha.yaml
nell'editor di codice, fai doppio clic.Definisci le VM e i dischi permanenti nel file
template_ha.yaml
. Il filetemplate_ha.yaml
contiene due sezioni:sap_db2_primary
esap_db2_secondary
. Ogni sezione contiene un insieme di coppie proprietà-valore seguito da commenti che includono proprietà utilizzate meno di frequente.Quando compili ogni sezione, ad eccezione delle proprietà
instanceName
,zone
eotherHost
, le definizioni per ogni VM devono essere identiche.La tabella seguente descrive le proprietà incluse in ogni sezione. Per utilizzare una proprietà, sostituisci il testo del segnaposto e le parentesi con i valori per la tua installazione.
Proprietà Tipo di dati Descrizione tipo Stringa Specifica la posizione, il tipo e la versione del modello Deployment Manager da utilizzare durante il deployment.
Il file YAML include due specifiche
type
, una delle quali è commentata. La specificatype
attiva per impostazione predefinita specifica la versione del modello comelatest
. La specificatype
commentata specifica una versione del modello specifica con un timestamp.Se vuoi che tutti i tuoi implementazioni utilizzino la stessa versione del modello, utilizza la specifica
type
che include il timestamp.instanceName
Stringa Il nome dell'istanza VM su cui installi IBM Db2. Il nome deve contenere al massimo 13 caratteri e deve essere specificato con lettere minuscole, numeri o trattini. instanceType
Stringa Il tipo di macchina virtuale Compute Engine su cui installi IBM Db2. Specifica un tipo di macchina con almeno due vCPU. Ad esempio, n1-standard-4
.zone
Stringa La zona in cui esegui il deployment dell'istanza IBM Db2. Deve trovarsi nella stessa regione selezionata per la sottorete. subnetwork
Stringa Il nome della sottorete creata in un passaggio precedente. Se esegui il deployment in un VPC condiviso, specifica questo valore come shared-vpc-project/SUBNETWORK
. Ad esempio,myproject/network1
.linuxImage
Stringa Il nome dell'immagine o della famiglia di immagini del sistema operativo Linux in uso con IBM Db2. Per specificare una famiglia di immagini, aggiungi il prefisso family/
al nome della famiglia. Ad esempio,family/rhel-7-sap-apps
ofamily/sles-12-sp3-sap
. Per specificare un'immagine, inserisci solo il nome dell'immagine. Per l'elenco delle famiglie di immagini disponibili, consulta la pagina Immagini nella console Google Cloud.linuxImageProject
Stringa Il progetto Google Cloud che contiene l'immagine che intendi utilizzare. Questo progetto potrebbe essere il tuo progetto o un progetto di immagini Google Cloud, ad esempio rhel-sap-cloud
osuse-sap-cloud
. Per un elenco dei progetti di immagini Google Cloud, consulta la pagina Immagini nella documentazione di Compute Engine.db2SID
Stringa L'ID istanza database. db2sidSize
Numero intero Le dimensioni in GB di /db2/DBSID, che è la directory principale dell'istanza del database. I valori minimo e predefinito per db2sidSize
sono entrambi 8 GB.db2homeSize
Numero intero Le dimensioni in GB di /db2/db2db2sid, ovvero la home directory dell'istanza del database. I valori minimo e predefinito per db2homeSize
sono entrambi 8 GB.db2dumpSize
Numero intero Le dimensioni in GB di /db2/DBSID/db2dump, che contiene i file dump di DB2 utilizzati per diagnosticare i problemi. I valori minimo e predefinito per db2dumpSize
sono entrambi 8 GB.db2saptmpSize
Numero intero Le dimensioni in GB di /db2/DBSID/saptmp, che contiene lo spazio tabella temporaneo del database. I valori minimo e predefinito per db2saptmpSize
sono entrambi 8 GB.db2sapdataSize
Numero intero La dimensione di /sapdb/DBSID/sapdata, che contiene i file di dati del database. I valori minimo e predefinito per db2sapdataSize
sono entrambi 30 GB.db2logSize
Numero intero La dimensione di /db2/DBSID/logdir, che contiene i log delle transazioni del database. I valori minimo e predefinito per db2logSize
sono entrambi 8 GB.db2backupSize
Numero intero La dimensione del volume /db2backup. Questa proprietà è facoltativa. Se lo imposti su 0
o lo ometti, non viene creato alcun disco.db2sapdataSSD
boolean Specifica se la unità di dati utilizza un disco permanente SSD ( Yes
) o un disco permanente HDD (No
).Yes
è il valore predefinito.db2logSSD
boolean Specifica se l'unità di log utilizza un disco permanente SSD ( Yes
) o un disco permanente HDD (No
).Yes
è il valore predefinito. Per l'unità disco dei log è consigliata una SSD.usrsapSize
Numero intero Obbligatorio solo se stai installando IBM Db2 per l'esecuzione con SAP NetWeaver nella stessa istanza VM. sapmntSize
Numero intero Obbligatorio solo se stai installando IBM Db2 per l'esecuzione con SAP NetWeaver nella stessa istanza VM. swapSize
Numero intero Obbligatorio solo se stai installando IBM Db2 per l'esecuzione con SAP NetWeaver nella stessa istanza VM. otherHost
Stringa Il nome dell'altra istanza VM nel cluster IBM Db2 HA. L'istanza VM deve essere definita nell'altro insieme di proprietà nello stesso file template_ha.yaml
.networkTag
Stringa Facoltativo. Un tag di rete che rappresenta l'istanza VM per scopi di firewall o routing. Se specifichi publicIP: No
e non utilizzi un tag di rete, assicurati di fornire un altro mezzo di accesso a internet.publicIP
boolean Facoltativo. Determina se viene aggiunto un indirizzo IP pubblico alla tua istanza VM. Il valore predefinito è Yes
.serviceAccount
Stringa Facoltativo. Se crei il tuo account di servizio con autorizzazioni bloccate, inserisci qui il nome dell'account. Per impostazione predefinita, le VM vengono dipiattate utilizzando l'account di servizio del progetto predefinito. Tieni presente che un account di servizio definito in modo errato impedisce un deployment riuscito. Di seguito è riportato un esempio di account di servizio personalizzato: myserviceuser@myproject.iam.gserviceaccount.com
sap_deployment_debug
boolean Facoltativo. Se questo valore è impostato su Yes
, il deployment genera log dettagliati. Non attivare questa impostazione a meno che un tecnico dell'Assistenza Google non ti chieda di attivare il debug.post_deployment_script
Stringa Facoltativo. Specifica la posizione di uno script da eseguire al termine del deployment. Lo script deve essere ospitato su un server web o in un bucket Cloud Storage. L'URL deve iniziare con http://
,https://
ogs://
. Tieni presente che questo script viene eseguito su tutte le VM create dal modello. Per eseguirlo solo sull'istanza principale, aggiungi un controllo nella parte superiore dello script.Le seguenti definizioni di VM di esempio da un file di configurazione
template_ha.yaml
creano due VM per un cluster IBM Db2 HA. Per ogni VM, il file di configurazione indica a Deployment Manager di eseguire il deployment di una VMn1-standard-4
che esegue un sistema operativo della famiglia di immagini SLES 12 SP3. La VM include tutte le directory necessarie per eseguire un cluster IBM Db2 HA. Deployment Manager non crea le directory SAP NetWeaver perché le dimensioni delle directory sono impostate su0
.resources: - name: sap_db2_primary type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_db2/sap_db2.py # # By default, this configuration file uses the latest release of the deployment # scripts for SAP on Google Cloud. To fix your deployments to a specific release # of the scripts, comment out the type property above and uncomment the type property below. # # type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/202103310846/dm-templates/sap_db2/sap_db2.py # properties: instanceName: db2-ha-s1 instanceType: n1-standard-4 zone: us-central1-c subnetwork: example-sap-subnetwork linuxImage: family/sles-12-sp3-sap linuxImageProject: suse-sap-cloud db2SID: DH1 db2sidSize: 16 db2dumpSize: 16 db2saptmpSize: 16 db2sapdataSize: 50 db2logSize: 16 db2backupSize: 50 db2sapdataSSD: Yes db2logSSD: Yes usrsapSize: 0 sapmntSize: 0 swapSize: 0 otherHost: db2-ha-s2 # # (Comment section omitted from example) # - name: sap_db2_secondary type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_db2/sap_db2.py # # By default, this configuration file uses the latest release of the deployment # scripts for SAP on Google Cloud. To fix your deployments to a specific release # of the scripts, comment out the type property above and uncomment the type property below. # # type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/202103310846/dm-templates/sap_db2/sap_db2.py # properties: instanceName: db2-ha-s2 instanceType: n1-standard-4 zone: us-central1-f subnetwork: example-sap-subnetwork linuxImage: family/sles-12-sp3-sap linuxImageProject: suse-sap-cloud db2SID: DH1 db2sidSize: 16 db2dumpSize: 16 db2saptmpSize: 16 db2sapdataSize: 50 db2logSize: 16 db2backupSize: 50 db2sapdataSSD: Yes db2logSSD: Yes usrsapSize: 0 sapmntSize: 0 swapSize: 0 otherHost: db2-ha-s1
Esegui il deployment dell'istanza VM con Deployment Manager.
gcloud deployment-manager deployments create DEPLOYMENT-NAME --config TEMPLATE-NAME.yaml
Dove:
DEPLOYMENT-NAME
rappresenta un nome scelto da te per il deployment corrente. Questo nome viene utilizzato per identificare questo deployment nella pagina Deployment della console Google Cloud.TEMPLATE-NAME
rappresenta il nome assegnato al file di configurazione o, se non hai modificato il nome del file predefinito,template_ha.yaml
.
Deployment Manager legge le specifiche nel
template_ha.yaml
file e configura la VM e i dischi permanenti di conseguenza. L'operazione potrebbe richiedere alcuni minuti. Per verificare l'avanzamento del deployment, segui i passaggi nella sezione successiva.
Verifica del deployment
Per verificare il deployment, controlla i log di deployment in Cloud Logging e la configurazione della VM.
Controlla i log
Nella console Google Cloud, apri Cloud Logging per monitorare l'avanzamento dell'installazione e verificare la presenza di errori.
Filtra i log:
Esplora log
Nella pagina Esplora log, vai al riquadro Query.
Dal menu a discesa Risorsa, seleziona Globale e poi fai clic su Aggiungi.
Se non vedi l'opzione Globale, nell'editor di query inserisci la seguente query:
resource.type="global" "Deployment"
Fai clic su Esegui query.
Visualizzatore log legacy
- Nella pagina Visualizzatore log legacy, seleziona Globale come risorsa di logging nel menu del selettore di base.
Analizza i log filtrati:
- Se viene visualizzato
"--- Finished"
, significa che l'elaborazione del deployment è completata e puoi procedere al passaggio successivo. Se viene visualizzato un errore relativo alla quota:
Nella pagina Quote di IAM e amministrazione, aumenta le quote che non soddisfano i requisiti di IBM DB2 elencati nella guida alla pianificazione di IBM DB2 per SAP.
Nella pagina Deployment di Deployment Manager, elimina il deployment per ripulire le VM e i dischi permanenti dall'installazione non riuscita.
Esegui di nuovo il deployment.
- Se viene visualizzato
Controlla la configurazione della VM
Al termine del deployment delle VM, connettiti a ogni VM utilizzando
ssh
. Nella pagina Istanze VM di Compute Engine, puoi fare clic sul pulsante SSH per ogni istanza VM oppure utilizzare il metodo SSH che preferisci.Passa all'utente root.
sudo su -
Al prompt dei comandi, inserisci
df -h
. Assicurati di visualizzare un output simile al seguente:db2-ha-s1:~ # df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 7.4G 0 7.4G 0% /dev tmpfs 12G 0 12G 0% /dev/shm tmpfs 7.4G 18M 7.4G 1% /run tmpfs 7.4G 0 7.4G 0% /sys/fs/cgroup /dev/sda1 30G 2.2G 26G 8% / /dev/mapper/vg_db2sid-vol 16G 33M 16G 1% /db2/DH1 /dev/mapper/vg_db2dump-vol 16G 33M 16G 1% /db2/DH1/db2dump /dev/mapper/vg_db2sapdata-vol 50G 33M 50G 1% /db2/DH1/sapdata /dev/mapper/vg_db2saptmp-vol 16G 33M 16G 1% /db2/DH1/saptmp /dev/mapper/vg_db2log-vol 16G 33M 16G 1% /db2/DH1/log_dir /dev/mapper/vg_db2home-vol 16G 33M 16G 1% /db2/db2dh1 /dev/mapper/vg_db2backup-vol 50G 33M 50G 1% /db2backup tmpfs 1.5G 0 1.5G 0% /run/user/1001
Se uno dei passaggi di convalida indica che l'installazione non è riuscita:
- Correggi l'errore.
- Nella pagina Deployment, elimina il deployment per ripulire le VM e i dischi permanenti dall'installazione non riuscita.
- Esegui di nuovo il deployment.
Prenotazione di un indirizzo IP mobile
Devi selezionare un indirizzo IP da utilizzare come indirizzo IP dinamico. Ti servirà questo indirizzo IP in un secondo momento quando imposterai i metadati dell'istanza VM host e quando installerai e configurerai IBM DB2 e il cluster HA.
A seconda che tu scelga un tipo di implementazione IP di route o alias per l'indirizzo IP dinamico, i requisiti per l'indirizzo IP dinamico sono diversi.
Se utilizzi l'implementazione della route statica per l'indirizzo IP dinamico, l'indirizzo IP deve essere al di fuori dell'intervallo di indirizzi IP della sottorete e non può essere utilizzato da altri elementi nelle reti estese della tua organizzazione. Rivolgiti all'amministratore della rete per determinare un indirizzo IP appropriato da utilizzare.
Se utilizzi l'implementazione dell'indirizzo IP alias per il tuo indirizzo IP dinamico, devi prenotare un indirizzo IP dall'intervallo di indirizzi IP della sottorete utilizzata dagli host.
Solo per le implementazioni di indirizzi IP alias,prenota un indirizzo IP alias:
Apri un terminale su una VM host o Cloud Shell.
Prenota un indirizzo IP.
gcloud compute addresses create vip-name --region region --subnet subnet-name \ --addresses ip-addr-optional
La specifica della proprietà addresses è facoltativa. Se non inserisci un indirizzo IP, Compute Engine ne seleziona uno per te dalla tua sottorete.
Visualizza e prendi nota dell'indirizzo IP riservato da utilizzare per installare il server di database e configurare il cluster HA.
gcloud compute addresses describe vip-name --region=region
Ad esempio:
db2-ha-s1:~ # gcloud compute addresses describe db2-ha-vip-dh1 --region=us-central1 address: 10.1.0.30 addressType: INTERNAL creationTimestamp: '2018-11-28T11:34:14.478-08:00' description: '' id: '6558342813288977241' kind: compute#address name: db2-ha-vip-dh1 region: https://www.googleapis.com/compute/v1/projects/solutions-writers/regions/us-central1 selfLink: https://www.googleapis.com/compute/v1/projects/solutions-writers/regions/us-central1/addresses/db2-ha-vip-dh1 status: RESERVED subnetwork: https://www.googleapis.com/compute/v1/projects/solutions-writers/regions/us-central1/subnetworks/example-sap- subnetwork
Aggiunta dell'indirizzo IP flottante ai metadati di ogni istanza VM host
Specifica le informazioni sull'indirizzo IP dinamico, incluso il tipo di implementazione dell'IP scelto per l'alias o la route, come metadati personalizzati per ogni istanza VM del cluster. Per ulteriori informazioni sulla scelta di un tipo di implementazione per l'indirizzo IP mobile, consulta Indirizzi IP mobili per i cluster IBM Db2 HA su Google Cloud.
A seconda del tipo di implementazione, i parametri dei metadati impostati sono diversi. Nelle due sezioni seguenti, segui le istruzioni riportate nella sezione che si applica all'implementazione dell'indirizzo IP dinamico.
Impostazione dei metadati per un'implementazione della route dell'indirizzo IP mobile
Se utilizzi un'implementazione di route per l'indirizzo IP dinamico, utilizza i parametri indicati nella tabella seguente e la procedura che segue la tabella per impostare i metadati dell'istanza.
Parametro | Valore | Finalità |
---|---|---|
sap_ibm_vip_solution |
route |
Indica che si tratta di un deployment multizona che utilizza una route statica di Google Cloud per supportare il passaggio dell'indirizzo IP dinamico tra gli host. |
sap_ibm_db2_vip |
ip-address | Specifica l'indirizzo IP dinamico che hai prenotato nel passaggio precedente. |
sap_ibm_db2_routename |
route-name | Specifica un nome arbitrario per la route statica. Ad
esempio, puoi utilizzare db2-dh1-vip-route |
sap_ibm_db2_routenet |
vpc-network-name | Specifica la rete VPC che contiene il cluster IBM Db2 HA. |
Per impostare i metadati dell'istanza per un'implementazione della route statica del tuo indirizzo IP dinamico:
Apri un terminale su una VM host o Cloud Shell.
Per ogni istanza VM host del cluster, specifica gli stessi metadati per l'implementazione della route dell'indirizzo IP dinamico.
gcloud compute instances add-metadata instance-name \ --metadata sap_ibm_vip_solution=route,sap_ibm_db2_vip=ip-address,\ sap_ibm_db2_routename=route-name,sap_ibm_db2_routenet=vpc-network-name \ --zone instance-zone
Impostazione dei metadati per un'implementazione dell'indirizzo IP mobile di un indirizzo IP alias
Se utilizzi un'implementazione dell'indirizzo IP alias per l'indirizzo IP dinamico, utilizza i parametri nella tabella seguente e la procedura che segue la tabella per impostare i metadati dell'istanza.
Parametro | Valore | Finalità |
---|---|---|
sap_ibm_vip_solution |
alias |
Indica che si tratta di un deployment a zona singola che utilizza un indirizzo IP alias di Google Cloud per supportare il passaggio dell'indirizzo IP dinamico tra gli host. |
sap_ibm_db2_vip |
ip-address | Specifica l'indirizzo IP dinamico che hai prenotato nel passaggio precedente. |
sap_ibm_db2_vip_range |
alias-ip-range-name | Facoltativamente, specifica un nome arbitrario per l'intervallo IP dell'alias. Ad esempio, puoi utilizzare db2-dh1-vip-alias
Il valore predefinito è il nome della sottorete. |
Per impostare i metadati dell'istanza per un'implementazione dell'indirizzo IP alias del tuo indirizzo IP dinamico:
Apri un terminale su una VM host o Cloud Shell.
Per ogni istanza VM host del cluster, specifica gli stessi metadati per l'implementazione dell'indirizzo IP dell'alias dell'indirizzo IP dinamico.
gcloud compute instances add-metadata instance-name \ --metadata sap_ibm_vip_solution=alias,sap_ibm_db2_vip=ip-address,\ sap_ibm_db2_vip_range=alias-ip-range-name --zone instance-zone
Rivedere o modificare i metadati dell'istanza
Per esaminare i metadati dell'istanza impostati.
gcloud compute instances describe instance-name --zone instance-zone
Se devi modificare i metadati personalizzati.
gcloud compute instances add-metadata instance-name --metadata parm-name=parm-value
Aggiunta di nomi host e indirizzi IP a /etc/hosts
Durante la configurazione del cluster, lo strumento di configurazione del cluster SAP convalida i nomi host e gli indirizzi IP interni di ogni VM host e dell'indirizzo IP flottante. Per assicurarti che la convalida venga eseguita correttamente, aggiungi
l'indirizzo IP, il nome host e il nome DNS interno della VPC
per ogni VM host e l'indirizzo IP flottante al file /etc/hosts
su
ogni VM host utilizzando il tuo editor preferito.
Ad esempio, come utente root, il seguente esempio aggiorna /etc/hosts
:
echo "#Db2 HA floating IP additions" >> /etc/hosts echo 10.2.0.24 db2-ha-vip-dh1 db2-ha-vip-dh1.c.solutions-writers.internal >> /etc/hosts echo 10.1.0.3 db2-ha-s1 db2-ha-s1.us-central1-c.c.db2-ha-project.internal >> /etc/hosts echo 10.1.0.2 db2-ha-s2 db2-ha-s2.us-central1-f.c.db2-ha-project.internal >> /etc/hosts
Nell'esempio precedente, la stringa tra il nome host e >>
su ogni riga è un nome DNS interno della VPC, utilizzato dal servizio DNS interno della VPC.
Le VM host utilizzano un nome DNS interno di zona, che include un campo per la zona. L'indirizzo IP dinamico utilizza un nome DNS interno globale, che non include un campo di zona.
Per un host VM, puoi recuperare il nome DNS interno inserendo il seguente comando da un terminale sulla VM host:
curl "http://metadata.google.internal/computeMetadata/v1/instance/hostname" \ -H "Metadata-Flavor: Google"
Per un indirizzo IP dinamico, puoi inserirlo autonomamente utilizzando il seguente formato.
vip-host-name.c.project-name.internal
Dopo aver aggiornato il file /etc/hosts
, le informazioni pertinenti nel
/etc/hosts
dovrebbero essere simili all'esempio seguente:
#Db2 HA floating IP additions 10.2.0.24 db2-ha-vip-dh1 db2-ha-vip-dh1.c.solutions-writers.internal 10.1.0.3 db2-ha-s1 db2-ha-s1.us-central1-c.c.db2-ha-project.internal 10.1.0.2 db2-ha-s2 db2-ha-s2.us-central1-f.c.db2-ha-project.internal
Preparazione del sistema operativo
Dopo aver creato la VM, prepara il sistema operativo per il cluster IBM Db2 HA.
I requisiti sono definiti da SAP e IBM. La documentazione SAP richiede l'installazione di software, come Perl e Korn Shell, che potrebbe non essere preinstallato sulle VM host Compute Engine.
Per conoscere i requisiti più recenti, consulta i seguenti documenti:
Soluzione di disponibilità elevata per IBM Db2: IBM Tivoli System Automation for Multiplatforms
1984787 - SUSE LINUX Enterprise Server 12: note di installazione
2002167 - Red Hat Enterprise Linux 7.x: installazione e upgrade
Installazione del server database e creazione del cluster IBM Db2 HA
Prima di iniziare a seguire le istruzioni riportate in IBM Db2 Soluzione ad alta disponibilità: IBM Tivoli System Automation for Multiplatforms per installare e configurare IBM Db2 e il cluster HA, esamina la panoramica della procedura che segue, prestando particolare attenzione alle note.
Per installare SAP NetWeaver e il server di applicazioni principale, consulta la documentazione di SAP NetWeaver di Google Cloud e le guide all'installazione di SAP applicabili disponibili nel portale di assistenza SAP.
I passaggi riportati di seguito sono una panoramica della procedura di installazione. Per informazioni dettagliate, consulta la documentazione SAP.
Stabilisci la connettività SSH basata su chiavi tra le istanze principali e secondarie e tra ogni istanza e se stessa come descritto nella documentazione SAP. SSH viene utilizzato dallo strumento di configurazione del cluster SAP. Testa tutte le connessioni su ogni host. Ad esempio, su
db2-ha-s1
testa entrambe le seguenti condizioni.ssh db2-ha-s1
ssh db2-ha-s2
Scarica o copia il set di media SAP completo per Db2 nella VM dal portale di assistenza SAP.
Nella VM host principale, utilizza SAP Software Provisioning Manager (SWPM) per installare il server database IBM Db2.
Nella VM host secondaria, configura il database di standby utilizzando un metodo come la copia di sistema omogeneo SAP.
Su entrambe le VM host, installa i file di licenza per IBM Db2 e IBM TSAMP. Per ulteriori informazioni sull'installazione delle licenze IBM ottenute da SAP, consulta la nota SAP 816773 - DB6: Installazione di una licenza OEM SAP.
Su entrambe le VM host, installa la versione più recente di TSAMP, supportata dalla versione del database e del sistema operativo.
Nella VM host principale, utilizza la versione più recente dello strumento di configurazione del cluster SAP
sapdb2cluster.sh
per configurare e creare il cluster IBM Db2 HA.Dopo aver creato il cluster, sull'host principale, utilizza l'utilità di configurazione delle istanze ad alta disponibilità di DB2 (db2haicu) per verificare che il cluster possa eseguire il failover.
Esci dallo strumento di configurazione del cluster SAP e dalla shell Korn.
Nell'istanza principale, verifica che il server del database principale sia online.
lssam
Nel seguente esempio di estratto dell'output
lssam
, l'istanza del database principale è online:Online IBM.ResourceGroup:db2_db2dh1_db2dh1_DH1-rg Nominal=Online '- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs |- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s1 '- Offline IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s2
Passa all'utente dell'istanza del database.
sudo su - db2sid
Avvia l'utilità db2haicu.
db2haicusid
Nell'interfaccia db2haicu, seleziona l'opzione 5 e segui le istruzioni.
Esci dall'utilità db2haicu.
Nell'host principale, verifica che l'host secondario sia ora online.
lssam
Nel seguente esempio di estratto dell'output di lssam, l'istanza del database secondario è online:
Online IBM.ResourceGroup:db2_db2dh1_db2dh1_DH1-rg Nominal=Online '- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs |- Offline IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s1 '- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s2
Per completare la configurazione del cluster, segui le istruzioni nella sezione successiva per creare una risorsa TSAMP personalizzata per l'indirizzo IP dinamico e associarla in TSAMP alla risorsa istanza IBM Db2.
Creazione di una risorsa personalizzata TSAMP per l'indirizzo IP dinamico
Per consentire a TSAMP di gestire l'indirizzo IP dinamico, devi creare una risorsa personalizzata TSAMP. Per consentire a TSAMP di interagire con Google Cloud durante la gestione della risorsa indirizzo IP flottante, devi scaricare e configurare uno script di assistenza da Google Cloud.
Scarica lo script di assistenza Google Cloud
Su ogni host del cluster, scarica lo script di assistenza Google Cloud e imposta le relative autorizzazioni.
Scarica lo script sia sull'host principale che su quello di riserva come utente root dalla directory
/root
sulla VM principale.Per le istanze che non utilizzano una configurazione VPC condivisa:
Per le istanze che utilizzano una configurazione VPC condivisa:wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_db2/utility/gcp_floating_ip.sh -O gcp_floating_ip.sh
wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_db2/utility/gcp_floating_ip_svpc.sh -O gcp_floating_ip.sh
Su entrambi gli host, imposta le autorizzazioni per lo script.
chmod 744 gcp_floating_ip.sh
Crea e configura una risorsa personalizzata TSAMP per il tuo indirizzo IP dinamico
Su un host qualsiasi del cluster, crea e configura una risorsa personalizzata TSAMP per l'indirizzo IP dinamico.
Su un host qualsiasi, utilizza il metodo che preferisci per creare un file di configurazione denominato
cluster_res.conf
e incolla il seguente testo dopo aver aggiornato il parametro NodeNameList con i nomi host.PersistentResourceAttributes:: Name="gcp_floating_ip-rs" ResourceType=1 StartCommand="/root/gcp_floating_ip.sh start" StopCommand="/root/gcp_floating_ip.sh stop" MonitorCommand="/root/gcp_floating_ip.sh status" MonitorCommandPeriod=30 MonitorCommandTimeout=30 StartCommandTimeout=600 StopCommandTimeout=600 UserName="root" RunCommandsSync=1 ProtectionMode=0 NodeNameList={"host-1","host-2"}
Nell'host principale, come utente root, crea la risorsa personalizzata TSAMP con i seguenti comandi.
export CT_MANAGEMENT_SCOPE=2 mkrsrc -f cluster_res.conf IBM.Application mkrg -l None gcp_floating_ip-rg chrg -o Online gcp_floating_ip-rg addrgmbr -g gcp_floating_ip-rg -m F IBM.Application:gcp_floating_ip-rs rgreq -o start gcp_floating_ip-rg
Nell'host principale, come utente root, verifica che la risorsa dell'istanza Db2 online si trovi sullo stesso host della risorsa IP flottante online.
lssam
Nell'output, le risorse online dovrebbero trovarsi tutte sulle stesse VM host:
Online IBM.ResourceGroup:db2_db2dh1_db2dh1_DH1-rg Nominal=Online '- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs |- Online IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s1 '- Offline IBM.Application:db2_db2dh1_db2dh1_DH1-rs:db2-ha-s2 Online IBM.ResourceGroup:gcp_floating_ip.sh_rg Nominal=Online '- Online IBM.Application:gcp_floating_ip.sh_rs |- Online IBM.Application:gcp_floating_ip.sh_rs:db2-ha-s1 '- Offline IBM.Application:gcp_floating_ip.sh_rs:db2-ha-s2
Se la risorsa indirizzo IP dinamico non è online sullo stesso host dell'istanza del database, spostala.
rgreq -o move -n host-to-move-from gcp_floating_ip-rg
Come utente root sull'host principale, stabilisci una relazione in TSAMP tra la risorsa istanza del database e la risorsa indirizzo IP dinamico.
rgreq -o lock gcp_floating_ip-rg rgreq -o lock db2_db2sid_db2sid_SID-rg mkrel -o NoCondition -p Collocated \ -S IBM.Application:gcp_floating_ip-rs -G IBM.Application:db2_db2sid_db2sid_SID-rs \ db2hadr_colo_gcp_floating_ip rgreq -o unlock db2_db2sid_db2sid_SID-rg rgreq -o unlock gcp_floating_ip-rg
Dopo aver stabilito una relazione tra la risorsa istanza del database e la risorsa indirizzo IP dinamico, puoi testare di nuovo il failover, come descritto nella sezione successiva.
Verifica del deployment del cluster Db2 HA per SAP su Google Cloud
Per verificare che il cluster IBM Db2 HA sia configurato correttamente, attiva un failover e controlla che tutte le risorse online passino da una VM host all'altra.
Per eseguire un test di failover.
Nell'host principale, come utente root, prendi nota della VM host su cui sono attualmente presenti le risorse online.
lssam
Nell'host principale, passa all'utente dell'istanza DB2.
sudo su - db2sid
Avvia l'utilità db2haicu.
db2haicu
Nell'interfaccia dell'utilità db2haicu, attiva un failover selezionando l'opzione 5 e seguendo le istruzioni.
Al termine dell'elaborazione dell'utilità db2haicu, esci dall'utilità.
Passa all'utente root.
sudo su -
Verifica che le risorse online siano state spostate nell'altra VM host.
Convalida l'installazione dell'agente di Google Cloud per SAP
Dopo aver eseguito il deployment di una VM e installato il sistema SAP, verifica che l'agente di Google Cloud per SAP funzioni correttamente.
Verificare che l'agente di Google Cloud per SAP sia in esecuzione
Per verificare che l'agente sia in esecuzione:
Stabilisci una connessione SSH con la tua istanza Compute Engine.
Esegui questo comando:
systemctl status google-cloud-sap-agent
Se l'agente funziona correttamente, l'output contiene
active (running)
. Ad esempio:google-cloud-sap-agent.service - Google Cloud Agent for SAP Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2022-12-02 07:21:42 UTC; 4 days ago Main PID: 1337673 (google-cloud-sa) Tasks: 9 (limit: 100427) Memory: 22.4 M (max: 1.0G limit: 1.0G) CGroup: /system.slice/google-cloud-sap-agent.service └─1337673 /usr/bin/google-cloud-sap-agent
Se l'agente non è in esecuzione, riavvialo.
Verificare che l'agente host SAP riceva le metriche
Per verificare che le metriche dell'infrastruttura vengano raccolte dall'agente di Google Cloud per SAP e inviate correttamente all'agente host SAP, segui questi passaggi:
- Nel sistema SAP, inserisci la transazione
ST06
. Nel riquadro di panoramica, controlla la disponibilità e i contenuti dei seguenti campi per la configurazione end-to-end corretta dell'infrastruttura di monitoraggio di SAP e Google:
- Fornitore di servizi cloud:
Google Cloud Platform
- Accesso al monitoraggio avanzato:
TRUE
- Dettagli sul monitoraggio migliorato:
ACTIVE
- Fornitore di servizi cloud:
Eseguire le attività di post-deployment
Prima di utilizzare il sistema IBM Db2 ad alta disponibilità su Google Cloud, ti consigliamo di completare tutte le attività di post-installazione descritte nella soluzione IBM Db2 ad alta disponibilità: IBM Tivoli System Automation for Multiplatforms, tra cui:
Convalida del cluster di database.
Esegui il backup del criterio principale TSAMP.
Aggiornamento dei pacchetti di correzione del database.
Aggiornamento delle connessioni client Db2 per utilizzare il nome host e l'indirizzo IP dell'indirizzo IP dinamico. Ad esempio, aggiorna il file
db2cli.ini
sui server di applicazioni SAP ABAP.
Se utilizzi un gateway NAT con il cluster DB2 ad alta disponibilità, completa la configurazione del gateway NAT come descritto in Completare l'installazione del gateway NAT nella guida al deployment di IBM Db2 per SAP.