Guida al deployment di SAP MaxDB per Linux

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

Le istruzioni di questa guida utilizzano Cloud Deployment Manager per eseguire il deployment e configurare la VM, il sistema operativo Linux e i volumi del disco richiesti per SAP MaxDB.

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

Prerequisiti

Se richiedi che il tuo carico di lavoro SAP venga eseguito in conformità con i requisiti di residenza dei dati, controllo dell'accesso, personale di assistenza o normativi, devi creare la cartella Assured Workloads richiesta. Per ulteriori informazioni, vedi Conformità e controlli sovrani per SAP su Google Cloud.

Se non hai già 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.

  6. Configurazione dell'ambiente di comando gcloud

    Queste istruzioni utilizzano Cloud Shell per inserire i comandi gcloud che distribuiscono o configurano le tue risorse Google Cloud . A Cloud Shell si accede tramite la consoleGoogle Cloud nel browser.

    Cloud Shell viene eseguito su una VM di cui viene eseguito il provisioning ogni volta che avvii Cloud Shell. Google Cloud La prima volta che utilizzi Cloud Shell, viene creata anche una directory $HOME permanenteGoogle Cloud , che viene ripristinata ogni volta che apri Cloud Shell.

    La VM di cui è stato eseguito il provisioning include l'ultima versione di Google Cloud CLI. Pertanto, i comandi gcloud che utilizzi in Cloud Shell sono gli stessi che utilizzeresti in un'istanza installata localmente di gcloud CLI.

    Se hai installato gcloud CLI, puoi eseguire i comandi gcloud utilizzati in queste istruzioni dalla tua macchina locale. Tuttavia, con gcloud CLI installata localmente devi sempre assicurarti di utilizzare l'ultima versione di gcloud CLI.

    Indipendentemente dal fatto che utilizzi Cloud Shell o gcloud CLI, puoi impostare e modificare le proprietà dell'ambiente di comando gcloud e salvarle come configurazione. Le configurazioni sono raccolte di coppie chiave-valore che influenzano il comportamento dei comandi gcloud.

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

    • 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 regioneGoogle Cloud .

      gcloud config set compute/region REGION
    • Imposta una zona predefinita. Sostituisci ZONE con una zonaGoogle 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, vedi Gestione della 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 metodocontrollo dell'accessoo.

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

    Durante il deployment, le istanze Compute Engine in genere richiedono l'accesso a internet per scaricare l'agente per SAP di Google Cloud. Se utilizzi una delle immagini Linux certificate da SAP disponibili da Google Cloud, l'istanza di calcolo 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 tag di rete VM supporta questo accesso, anche se le istanze di computing 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 subnet.
      3. Per 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.

        Questo è l'intervallo IPv4 principale per la subnet. Se prevedi di aggiungere più di una subnet, assegna intervalli IP CIDR non sovrapposti per ogni subnet nella 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à 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, vedi 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 che hai creato 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 nella rete. Tieni presente che ogni subnet e i relativi intervalli IP interni sono mappati a una singola regione.

    4. (Facoltativo) Ripeti il passaggio precedente e aggiungi altre subnet.

    Configurazione di un gateway NAT

    Se devi creare una o più VM senza indirizzi IP pubblici, devi utilizzare la conversione degli indirizzi di rete (NAT) per consentire alle VM di accedere a internet. Utilizza Cloud NAT, un servizio gestito Google Cloud distribuito e software-defined che consente alle VM di inviare pacchetti in uscita a internet e ricevere i pacchetti di risposta in entrata 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 tuo progetto, le tue istanze VM possono accedere in modo sicuro a internet senza un indirizzo IP pubblico.

    Deployment di una VM Linux per SAP MaxDB con Deployment Manager

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

    Informazioni su Deployment Manager

    In queste istruzioni, definisci le opzioni delle risorse per l'installazione in un modello di file di configurazione di Deployment Manager.

    Deployment Manager considera tutte le risorse create per il tuo sistema SAP come una singola entità chiamata deployment. Puoi visualizzare e utilizzare 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, incluse le VM, i dischi permanenti e tutti i sistemi SAP installati sulla VM.
    • Per impostazione predefinita, Deployment Manager utilizza il criterio di creazione delle risorse 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, la VM è associata a due deployment.

      Se poi elimini il nuovo deployment, la VM acquisita viene eliminata dal deployment che l'ha creata originariamente. Per evitare questo scenario, imposta il criterio delle risorse di Deployment Manager su CREATE oppure assicurati di utilizzare nomi di risorse univoci nel nuovo deployment.

      Per informazioni sui criteri che puoi utilizzare durante la creazione di 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 comando seguente 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 Cloud Shell.

    5. Nel file template.yaml, aggiorna i seguenti valori delle proprietà sostituendo le parentesi e i relativi contenuti con i valori della 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 deployment 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 in 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 due o più vCPU. Ad esempio, `n1-standard-4`. Se esegui 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 trovarsi nella stessa regione che hai selezionato per la subnet.
      sottorete Stringa Il nome della subnet 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, indica solo il nome dell'immagine. Per l'elenco delle famiglie di immagini disponibili, consulta la pagina Immagini nella console Cloud.
      linuxImageProject Stringa Il Google Cloud progetto che contiene l'immagine che utilizzerai. Questo progetto potrebbe essere un 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, consulta la pagina Immagini nella documentazione di Compute Engine. Google Cloud
      maxdbSID Stringa L'ID istanza database.
      maxdbRootSize Numero intero Le dimensioni in GB di /sapdb, ovvero la directory principale dell'istanza del database. I valori minimo e predefinito per maxdbRootSize sono entrambi 8 GB.
      maxdbDataSize Numero intero Le dimensioni 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 Le dimensioni 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 viene 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`. L'SSD è consigliato per l'unità di log.
      usrsapSize Numero intero Obbligatorio solo se installi SAP MaxDB per l'esecuzione con SAP NetWeaver sulla stessa istanza VM.
      sapmntSize Numero intero Obbligatorio solo se installi SAP MaxDB per l'esecuzione con SAP NetWeaver sulla stessa istanza VM.
      swapSize Numero intero Obbligatorio solo se installi 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 di database SAP MaxDB sia SAP NetWeaver. Il file di configurazione indica a Deployment Manager di eseguire il deployment di una VM n1-standard-16 che esegue 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 precedente richiama Deployment Manager, che esegue il deployment della VM in base alle specifiche del file template.yaml. L'operazione potrebbe richiedere alcuni minuti. Per controllare l'avanzamento dell'implementazione, 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.

    Controllare 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, inserisci la seguente query nell'editor di 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 dal menu di selezione di base.
    3. Analizza i log filtrati:

      • Se viene visualizzato "--- Finished", l'elaborazione del deployment è completata e puoi procedere al passaggio successivo.
      • Se visualizzi un errore di 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 pulire 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 utilizzando SSH. Dalla pagina Istanze VM di Compute Engine, puoi fare clic sul pulsante SSH per la tua istanza VM oppure puoi utilizzare il tuo metodo SSH preferito.

      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.

      I volumi di dati creati dallo script.

    4. Se stai installando SAP MaxDB sulla stessa VM di SAP NetWeaver, verifica che la directory di swap 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 swap viene chiusa.

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

    1. Correggi l'errore.
    2. Nella pagina Deployment, elimina il deployment per pulire 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. MaxDB viene in genere installato con il prodotto SAP con cui è integrato.

    Per installare SAP MaxDB sulla tua VM:

    1. Stabilisci una connessione SSH alla tua VM basata su Linux.
    2. Scarica SAP Software Provisioning Manager (SWPM), i supporti di installazione del prodotto SAP e i supporti di installazione di MaxDB in base alle guide all'installazione SAP.
    3. Installa il prodotto SAP e il database SAP MaxDB in base alle guide all'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.

    Convalidare l'installazione dell'agente per SAP di Google Cloud

    Dopo aver eseguito il deployment di una VM e installato il sistema SAP, verifica che l'agente diGoogle Cloudper SAP funzioni correttamente.

    Verifica che l'agente per SAP di Google Cloudsia 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.

    Verifica che SAP Host Agent riceva le metriche

    Per verificare che le metriche dell'infrastruttura vengano raccolte dall'agente per SAP diGoogle Cloude inviate correttamente all'agente host SAP, segui questi passaggi:

    1. Nel sistema SAP, inserisci la transazione ST06.
    2. Nel riquadro Panoramica, controlla la disponibilità e i contenuti dei seguenti campi per la corretta configurazione end-to-end dell'infrastruttura di monitoraggio SAP e Google:

      • Cloud Provider: Google Cloud Platform
      • Accesso al monitoraggio avanzato: TRUE
      • Dettagli di monitoraggio avanzati: ACTIVE

    Eseguire attività 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 ed esegui il backup del nuovo database SAP MaxDB.

    Per ulteriori informazioni, consulta SAP MaxDB Database Administration.

    Risoluzione dei problemi

    Questa sezione contiene informazioni su come correggere i problemi 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 per SSH dal browser.