Guida al deployment di SAP MaxDB per Linux

Questa guida al deployment mostra come eseguire il deployment e connetterti a una macchina virtuale (VM) Compute Engine pronta per l'installazione di SAP MaxDB su un sistema operativo Linux.

Le istruzioni riportate in questa guida utilizzano Cloud Deployment Manager per eseguire il deployment e configurare la VM, il sistema operativo Linux e i volumi dei dischi richiesti per SAP MaxDB.

Per informazioni dettagliate sulla pianificazione del deployment, consulta la Guida alla pianificazione di SAP MaxDB.

Prerequisiti

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.

Se non hai ancora un progetto Google Cloud con la fatturazione abilitata, devi crearne uno prima di poter eseguire il deployment di una VM per l'installazione di SAP MaxDB.

Per creare un progetto:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

Configurazione dell'ambiente dei comandi gcloud

Queste istruzioni utilizzano Cloud Shell per inserire comandi gcloud che eseguono il deployment o la configurazione delle risorse Google Cloud. Puoi accedere a Cloud Shell tramite la console Google Cloud nel browser.

Cloud Shell viene eseguito su una VM di cui Google Cloud esegue il provisioning ogni volta che la avvii. La prima volta che utilizzi Cloud Shell, Google Cloud crea anche una directory $HOME permanente per te, che viene ripristinata ogni volta che apri Cloud Shell.

La VM di cui è stato eseguito il provisioning include la versione più recente di Google Cloud CLI. Pertanto, i comandi gcloud che utilizzi in Cloud Shell sono gli stessi di quelli che utilizzeresti in un'istanza dell'interfaccia alla gcloud CLI installata localmente.

Se hai installato gcloud CLI, puoi emettere i comandi gcloud utilizzati in queste istruzioni dalla tua macchina locale. Tuttavia, con unagcloud CLI installata in locale devi sempre assicurarti di utilizzare la versione più recente dellgcloud CLI.

Indipendentemente dall'utilizzo di Cloud Shell o dellgcloud CLI, puoi impostare e modificare le proprietà dell'ambiente dei comandi gcloud e salvarle come configurazione. Le configurazioni sono raccolte di coppie chiave-valore che influiscono sul comportamento dei comandi gcloud.

Alcune azioni di base che puoi eseguire con una configurazione in Cloud Shell include:

  • Inizializza una configurazione:

    gcloud init
  • Controlla le impostazioni della tua attuale configurazione gcloud:

    gcloud config list
  • Passa al progetto Google Cloud richiesto. Sostituisci PROJECT_ID con l'ID del tuo progetto Google Cloud.

    gcloud config set project PROJECT_ID
  • Imposta una regione predefinita. Sostituisci REGION con una regione Google Cloud.

    gcloud config set compute/region REGION
  • Imposta una zona predefinita. Sostituisci ZONE con una zona Google Cloud.

    gcloud config set compute/zone ZONE
  • Crea una nuova configurazione. Sostituisci NAME con il nome della configurazione.

    gcloud config configurations create NAME

Per ulteriori informazioni sull'utilizzo delle configurazioni, consulta Gestire le configurazioni gcloud CLI gcloud.

Creare una rete

Per motivi di sicurezza, crea una nuova rete. Puoi controllare chi ha accesso aggiungendo regole firewall o utilizzando un altro metodo di controllo dell'accesso.

Se il progetto ha una rete VPC predefinita, non utilizzarla. Crea invece una tua rete VPC in modo che le uniche regole firewall in vigore siano quelle che crei esplicitamente.

Durante il deployment, le istanze VM in genere richiedono l'accesso a internet per scaricare l'agente di Google Cloud per SAP. Se utilizzi una delle immagini Linux certificate da SAP disponibili su Google Cloud, l'istanza VM richiede anche l'accesso a internet per registrare la licenza e accedere ai repository del fornitore del sistema operativo. Una configurazione con un gateway NAT e con i tag di rete VM supporta questo accesso, anche se le VM di destinazione non hanno IP esterni.

Per configurare la rete:

Console

  1. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Fai clic su Crea rete VPC.
  3. Inserisci un nome per la rete.

    Il nome deve rispettare la convenzione di denominazione. Le reti VPC utilizzano la convenzione di denominazione di Compute Engine.

  4. In Modalità di creazione subnet, scegli Personalizzata.
  5. Nella sezione Nuova subnet, specifica i seguenti parametri di configurazione per una subnet:
    1. Inserisci un nome per la subnet.
    2. Per Regione, seleziona la regione Compute Engine in cui vuoi creare la sottorete.
    3. In Tipo di stack IP, seleziona IPv4 (stack singolo) e poi inserisci un intervallo di indirizzi IP nel formato CIDR, ad esempio 10.1.0.0/24.

      Si tratta dell'intervallo IPv4 principale per la subnet. Se prevedi di aggiungere più di una subnet, assegni intervalli IP CIDR non sovrapposti per ogni subnet della rete. Tieni presente che ogni subnet e i relativi intervalli IP interni sono mappati a una singola regione.

    4. Fai clic su Fine.
  6. Per aggiungere altre subnet, fai clic su Aggiungi subnet e ripeti i passaggi precedenti. Puoi aggiungere altre subnet alla rete dopo averla creata.
  7. Fai clic su Crea.

gcloud

  1. Vai a Cloud Shell.

    Vai a Cloud Shell

  2. Per creare una nuova rete in modalità di subnet personalizzate, esegui:
    gcloud compute networks create NETWORK_NAME --subnet-mode custom

    Sostituisci NETWORK_NAME con il nome della nuova rete. Il nome deve rispettare la convenzione di denominazione. Le reti VPC utilizzano la convenzione di denominazione di Compute Engine.

    Specifica --subnet-mode custom per evitare di utilizzare la modalità automatica predefinita, che crea automaticamente una subnet in ogni regione Compute Engine. Per ulteriori informazioni, consulta la sezione Modalità di creazione subnet.

  3. Crea una subnet e specifica la regione e l'intervallo IP:
    gcloud compute networks subnets create SUBNETWORK_NAME \
        --network NETWORK_NAME --region REGION --range RANGE

    Sostituisci quanto segue:

    • SUBNETWORK_NAME: il nome della nuova subnet
    • NETWORK_NAME: il nome della rete creata nel passaggio precedente
    • REGION: la regione in cui vuoi la subnet
    • RANGE: l'intervallo di indirizzi IP, specificato in formato CIDR, ad esempio 10.1.0.0/24

      Se prevedi di aggiungere più di una subnet, assegna intervalli IP CIDR non sovrapposti per ogni subnet della rete. Tieni presente che ogni subnet e i relativi intervalli IP interni sono mappati a una singola regione.

  4. Se vuoi, ripeti il passaggio precedente e aggiungi altre sottoreti.

Configurazione di un gateway NAT

Se devi creare una o più VM senza indirizzi IP pubblici, devi utilizzare la Network Address Translation (NAT) per consentire alle VM di accedere a internet. Utilizza Cloud NAT, un servizio gestito software-defined distribuito di Google Cloud che consente alle VM di inviare pacchetti in uscita a internet e di ricevere eventuali pacchetti di risposta in entrata stabiliti corrispondenti. In alternativa, puoi configurare una VM separata come gateway NAT.

Per creare un'istanza Cloud NAT per il tuo progetto, consulta Utilizzo di Cloud NAT.

Dopo aver configurato Cloud NAT per il progetto, le istanze VM possono accedere in sicurezza a internet senza un indirizzo IP pubblico.

Deployment di una VM Linux per SAP MaxDB con Deployment Manager

Le istruzioni seguenti utilizzano Deployment Manager per eseguire il deployment di un'istanza VM con Linux e tutti i dischi permanenti richiesti da SAP MaxDB.

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.

Procedura di deployment

  1. Apri Cloud Shell.

    Vai a Cloud Shell

  2. Scarica il modello di file di configurazione template.yaml nella directory di lavoro inserendo il seguente comando in Cloud Shell:

    wget https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_maxdb/template.yaml
  3. Se vuoi, rinomina il file template.yaml per identificare la configurazione che definisce.

  4. Apri il file template.yaml nell'editor di codice di Cloud Shell.

    Per aprire l'editor di codice di Cloud Shell, fai clic sull'icona a forma di matita nell'angolo in alto a destra della finestra del terminale di Cloud Shell.

  5. Nel file template.yaml, aggiorna i seguenti valori delle proprietà sostituendo le parentesi e i relativi contenuti 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 specifica type attiva per impostazione predefinita specifica la versione del modello come latest. La specifica type 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 verrà installato SAP MaxDB. Il nome deve contenere al massimo 13 caratteri ed essere specificato con lettere minuscole, numeri o trattini.
    instanceType Stringa Il tipo di macchina virtuale Compute Engine su cui verrà installato SAP MaxDB. Specifica un tipo di macchina con almeno due vCPU. Ad esempio, "n1-standard-4". Se stai utilizzando SAP MaxDB con SAP NetWeaver sulla stessa VM, seleziona un tipo di macchina che includa CPU e memoria sufficienti per supportare entrambi i sistemi. Consulta la Guida alla pianificazione di SAP NetWeaver.
    zona Stringa La zona in cui esegui il deployment di SAP MaxDB. Deve essere nella stessa regione selezionata per la sottorete.
    sottorete Stringa Il nome della sottorete creata in un passaggio precedente. Se esegui il deployment in un VPC condiviso, specifica questo valore come [SHAREDVPC_PROJECT]/[SUBNETWORK]. Ad esempio, myproject/network1.
    linuxImage Stringa Il nome dell'immagine o della famiglia di immagini del sistema operativo Linux che utilizzi con SAP MaxDB. Per specificare una famiglia di immagini, aggiungi il prefisso family/ al nome della famiglia. Ad esempio, family/rhel-7 o family/sles-12-sp3-sap. Per specificare un'immagine specifica, specifica solo il nome dell'immagine. Per l'elenco delle famiglie di immagini disponibili, consulta la pagina Immagini nella console 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 o suse-sap-cloud. Per un elenco dei progetti di immagini Google Cloud, consulta la pagina Immagini nella documentazione di Compute Engine.
    maxdbSID Stringa L'ID istanza database.
    maxdbRootSize Numero intero Le dimensioni in GB di /sapdb, che è la directory principale dell'istanza del database. I valori minimo e predefinito per maxdbRootSize sono entrambi 8 GB.
    maxdbDataSize Numero intero La dimensione di /sapdb/[DBSID]/sapdata, che contiene i file di dati del database. I valori minimo e predefinito per maxdbDataSize sono entrambi 30 GB.
    maxdbLogSize Numero intero La dimensione di /sapdb/[DBSID]saplog, che contiene i log delle transazioni del database. I valori minimo e predefinito per maxdbLogSize sono entrambi 8 GB.
    maxdbBackupSize Numero intero La dimensione del volume /maxdbbackup. Questa proprietà è facoltativa. Se impostato su 0 o omesso, non viene creato alcun disco.
    maxdbDataSSD boolean Specifica se l'unità dati utilizza un disco permanente SSD (`Yes`) o un disco permanente HDD (`No`). Il valore predefinito è "Yes".
    maxdbLogSSD boolean Specifica se l'unità di log utilizza un disco permanente SSD (`Yes`) o un disco permanente HDD (`No`). Il valore predefinito è "Yes". Per l'unità disco dei log è consigliata una SSD.
    usrsapSize Numero intero Obbligatorio solo se stai installando SAP MaxDB per l'esecuzione con SAP NetWeaver sulla stessa istanza VM.
    sapmntSize Numero intero Obbligatorio solo se stai installando SAP MaxDB per l'esecuzione con SAP NetWeaver sulla stessa istanza VM.
    swapSize Numero intero Obbligatorio solo se stai installando SAP MaxDB per l'esecuzione con SAP NetWeaver sulla stessa istanza VM.

    Il seguente file di configurazione crea una VM configurata per eseguire sia il server database SAP MaxDB sia SAP NetWeaver. Il file di configurazione indica a Deployment Manager di eseguire il deployment di una VM n1-standard-16 su cui è in esecuzione un sistema operativo SLES 12 SP3. La VM include tutte le directory necessarie per eseguire SAP MaxDB con NetWeaver.

    resources:
    - name: sap_maxdb
      type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_maxdb/sap_maxdb.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_maxdb/sap_maxdb.py
      #
      properties:
        instanceName: xmp-maxdb-lin
        instanceType: n1-standard-16
        zone: us-central1-f
        subnetwork: example-sub-network
        linuxImage: family/sles-12-sp3-sap
        linuxImageProject: suse-sap-cloud
        maxdbSID: MD1
        maxdbRootSize: 10
        maxdbDataSize: 50
        maxdbLogSize: 30
        maxdbBackupSize: 100
        maxdbDataSSD: Yes
        maxdbLogSSD: Yes
        usrsapSize: 15
        sapmntSize: 15
        swapSize: 24
  6. Crea l'istanza VM:

    gcloud deployment-manager deployments create [DEPLOYMENT-NAME] --config [TEMPLATE-NAME].yaml
    

    Il comando riportato sopra richiama Deployment Manager, che esegue il deployment della VM in base alle specifiche nel file template.yaml. 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

  1. Nella console Google Cloud, apri Cloud Logging per monitorare l'avanzamento dell'installazione e verificare la presenza di errori.

    Vai a Cloud Logging

  2. Filtra i log:

    Esplora log

    1. Nella pagina Esplora log, vai al riquadro Query.

    2. 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"
      
    3. 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.
  3. 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:

      1. Nella pagina IAM e amministrazione Quote, aumenta le quote che non soddisfano i requisiti di SAP MaxDB elencati nella guida alla pianificazione di SAP MaxDB.

      2. Nella pagina Deployment di Deployment Manager, elimina il deployment per ripulire le VM e i dischi permanenti dall'installazione non riuscita.

      3. Esegui di nuovo il deployment.

Controlla la configurazione della VM

  1. Dopo il deployment del sistema SAP MaxDB, connettiti alla VM tramite SSH. Nella pagina Istanze VM di Compute Engine, puoi fare clic sul pulsante SSH per l'istanza VM o utilizzare il metodo SSH che preferisci.

    Pulsante SSH nella pagina delle istanze VM di Compute Engine.

  2. Passa all'utente root.

    sudo su -
  3. Al prompt dei comandi, inserisci df -h. Assicurati di visualizzare un output simile al seguente, ad esempio la directory //sapdb/[DBSID]/sapdata.

    Volumi di dati creati dallo script.

  4. Se stai installando SAP MaxDB nella stessa VM di SAP NetWeaver, verifica che la directory di scambio sia stata creata inserendo il seguente comando:

    cat /proc/meminfo | grep Swap

    Dovresti vedere risultati simili al seguente esempio:

    Esempio di output del terminale quando la directory di scambio esce.

Se uno dei passaggi di convalida indica che l'installazione non è riuscita:

  1. Correggi l'errore.
  2. Nella pagina Deployment, elimina il deployment per ripulire le VM e i dischi permanenti dall'installazione non riuscita.
  3. Esegui di nuovo il deployment.

Installazione del database

Ora che il sistema operativo è configurato, puoi installare il database SAP MaxDB. In genere, MaxDB viene installato con il prodotto SAP con cui è integrato.

Per installare SAP MaxDB sulla VM:

  1. Stabilisci una connessione SSH alla VM basata su Linux.
  2. Scarica SAP Software Provisioning Manager (SWPM), i file multimediali per l'installazione del prodotto SAP e i file multimediali per l'installazione di MaxDB in base alle guide di installazione SAP.
  3. Installa il prodotto SAP e il database SAP MaxDB in base alle guide di installazione SAP per il tuo prodotto SAP. Per ulteriori indicazioni, consulta la documentazione di SAP MaxDB.

SAP fornisce ulteriori informazioni sull'installazione nella nota SAP 1020175 - Domande frequenti: installazione, upgrade o applicazione di una patch di SAP MaxDB.

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:

  1. Stabilisci una connessione SSH con la tua  istanza Compute Engine.

  2. 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:

  1. Nel sistema SAP, inserisci la transazione ST06.
  2. 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

Eseguire le attività di post-deployment

Prima di utilizzare l'istanza SAP MaxDB, ti consigliamo di eseguire i seguenti passaggi post-deployment:

  1. Aggiorna il software SAP MaxDB con le patch più recenti, se disponibili.
  2. Installa eventuali componenti aggiuntivi.
  3. Configura e esegui il backup del nuovo database SAP MaxDB.

Per ulteriori informazioni, consulta Amministrazione del database SAP MaxDB.

Risoluzione dei problemi

Questa sezione contiene informazioni su come correggere i problemi più comuni.

Risoluzione dei problemi di connessione alla VM

Se hai problemi a connetterti alla VM tramite SSH, assicurati di aver creato una regola firewall per aprire la porta 22 sulla rete Google Cloud che stai utilizzando.

Per altri possibili problemi, consulta la sezione Problemi noti relativi all'accesso SSH dal browser.