Guide de déploiement de SAP MaxDB pour Linux

Ce guide explique comment déployer une machine virtuelle (VM) Compute Engine prête pour l'installation de SAP MaxDB sur un système d'exploitation Linux et vous y connecter.

Les instructions de ce guide font appel à Cloud Deployment Manager pour le déploiement et la configuration de la VM, du système d'exploitation Linux et des volumes de disque requis pour SAP MaxDB.

Pour en savoir plus sur la planification du déploiement, consultez le guide de planification de SAP MaxDB.

Prérequis

Si vous souhaitez que votre charge de travail SAP s'exécute conformément aux exigences liées à la résidence des données, au contrôle des accès, au personnel d'assistance ou à la réglementation, vous devez créer le dossier Assured Workloads requis. Pour en savoir plus, consultez la page Contrôles de conformité et de souveraineté pour SAP sur Google Cloud.

Si vous n'avez pas encore de projet Google Cloud avec la facturation activée, vous devez en créer un avant de pouvoir déployer une VM pour votre installation SAP MaxDB.

Pour créer un projet :

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  5. Vérifiez que la facturation est activée pour votre projet Google Cloud.

Configurer l'environnement de commande gcloud

Ces instructions font appel à Cloud Shell pour la saisie des commandes gcloud qui déploient ou configurent vos ressources Google Cloud. Cloud Shell est accessible via la console Google Cloud dans votre navigateur.

Cloud Shell s'exécute sur une VM fournie par Google Cloud chaque fois que vous démarrez Cloud Shell. Lorsque vous utilisez Cloud Shell pour la première fois, Google Cloud crée également un répertoire $HOME persistant qui est restauré chaque fois que vous ouvrez Cloud Shell.

La VM provisionnée inclut la dernière version de Google Cloud CLI. Par conséquent, les commandes gcloud que vous utilisez dans Cloud Shell sont les mêmes que celles que vous utiliseriez dans une instance de gcloud CLI installée localement.

Si gcloud CLI est installé, vous pouvez exécuter les commandes gcloud spécifiées dans ces instructions à partir de votre ordinateur local. Toutefois, si vous installez gcloud CLI en local, vous devez toujours vous assurer d'utiliser la dernière version de gcloud CLI.

Que vous utilisiez Cloud Shell ou gcloud CLI, vous pouvez définir et modifier les propriétés de votre environnement de commande gcloud et les enregistrer en tant que configuration. Les configurations sont des collections de paires clé-valeur qui influencent le comportement des commandes gcloud.

Vous pouvez effectuer certaines actions de base avec une configuration dans Cloud Shell, parmi lesquelles :

  • Initialiser une configuration :

    gcloud init
  • Vérifier les paramètres de votre configuration gcloud actuelle :

    gcloud config list
  • Basculez vers le projet Google Cloud requis. Remplacez PROJECT_ID par l'ID de votre projet Google Cloud.

    gcloud config set project PROJECT_ID
  • Définissez une région par défaut. Remplacez REGION par une région Google Cloud.

    gcloud config set compute/region REGION
  • Définissez une zone par défaut. Remplacez ZONE par une zone Google Cloud.

    gcloud config set compute/zone ZONE
  • Créez une configuration. Remplacez NAME par le nom de la configuration.

    gcloud config configurations create NAME

Pour en savoir plus sur l'utilisation des configurations, consultez la page Gérer les configurations de gcloud CLI.

Créer un réseau

Pour des raisons de sécurité, nous vous recommandons de créer un réseau, dont vous contrôlez les accès en ajoutant des règles de pare-feu ou toute autre méthode.

Si votre projet dispose d'un réseau VPC par défaut, ne l'utilisez pas. À la place, créez votre propre réseau VPC afin que les seules règles de pare-feu appliquées soient celles que vous créez explicitement.

Lors du déploiement, les instances de VM nécessitent généralement un accès à Internet pour télécharger l'agent Google Cloud pour SAP. Si vous utilisez l'une des images Linux certifiées SAP disponibles dans Google Cloud, l'instance de VM requiert également l'accès à Internet pour enregistrer la licence et accéder aux dépôts des fournisseurs d'OS. Une configuration comprenant une passerelle NAT et des tags réseau de VM permet aux VM cibles d'accéder à Internet même si elles ne possèdent pas d'adresses IP externes.

Pour configurer la mise en réseau, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Réseaux VPC.

    Accéder aux réseaux VPC

  2. Cliquez sur Créer un réseau VPC.
  3. Saisissez un Nom pour le réseau.

    Le nom doit respecter la convention d'attribution de noms. Les réseaux VPC utilisent la convention d'attribution de noms de Compute Engine.

  4. Dans le champ Mode de création du sous-réseau, sélectionnez Custom.
  5. Dans la section Nouveau sous-réseau, spécifiez les paramètres de configuration de sous-réseau suivants :
    1. Saisissez un nom pour le sous-réseau.
    2. Dans le champ Région, sélectionnez la région Compute Engine dans laquelle vous souhaitez créer le sous-réseau.
    3. Pour Type de pile IP, sélectionnez IPv4 (pile unique), puis saisissez une plage d'adresses IP au format CIDR, telle que 10.1.0.0/24.

      Il s'agit de la plage IPv4 principale du sous-réseau. Si vous envisagez d'ajouter plusieurs sous-réseaux, attribuez à chacun d'eux des plages d'adresses IP CIDR qui ne se chevauchent pas dans le réseau. Notez que chaque sous-réseau et ses plages d'adresses IP internes sont mappés sur une seule région.

    4. Cliquez sur OK.
  6. Pour ajouter d'autres sous-réseaux, cliquez sur Ajouter un sous-réseau et répétez les étapes ci-dessus. Vous pouvez ajouter d'autres sous-réseaux au réseau après sa création.
  7. Cliquez sur Create (Créer).

gcloud

  1. Accédez à Cloud Shell.

    Accéder à Cloud Shell

  2. Pour créer un réseau en mode de sous-réseau personnalisé, exécutez la commande suivante :
    gcloud compute networks create NETWORK_NAME --subnet-mode custom

    Remplacez NETWORK_NAME par le nom du nouveau réseau. Le nom doit respecter la convention d'attribution de noms. Les réseaux VPC utilisent la convention de dénomination de Compute Engine.

    Spécifiez --subnet-mode custom pour éviter d'utiliser le mode automatique par défaut, qui crée automatiquement un sous-réseau dans chaque région Compute Engine. Pour en savoir plus, consultez la section Mode de création du sous-réseau.

  3. Créez un sous-réseau, et spécifiez la région et la plage d'adresses IP :
    gcloud compute networks subnets create SUBNETWORK_NAME \
        --network NETWORK_NAME --region REGION --range RANGE

    Remplacez les éléments suivants :

    • SUBNETWORK_NAME : nom du nouveau sous-réseau
    • NETWORK_NAME : nom du réseau que vous avez créé à l'étape précédente
    • REGION : région dans laquelle vous souhaitez créer le sous-réseau
    • RANGE : plage d'adresses IP spécifiée au format CIDR (par exemple, 10.1.0.0/24)

      Si vous envisagez d'ajouter plusieurs sous-réseaux, attribuez à chacun d'eux des plages d'adresses IP CIDR qui ne se chevauchent pas. Notez que chaque sous-réseau et ses plages d'adresses IP internes sont mappés sur une seule région.

  4. Si vous le souhaitez, répétez l'étape précédente et ajoutez des sous-réseaux.

Configurer une passerelle NAT

Si vous avez besoin de créer une ou plusieurs VM sans adresse IP publique, vous devez utiliser la traduction d'adresse réseau (NAT) pour permettre aux VM d'accéder à Internet. Utilisez Cloud NAT, un service géré distribué et défini par logiciel de Google Cloud, qui permet aux VM d'envoyer des paquets sortants vers Internet et de recevoir tous les paquets de réponses entrants établis correspondants. Vous pouvez également configurer une VM distincte en tant que passerelle NAT.

Pour créer une instance Cloud NAT pour votre projet, consultez la page Utiliser Cloud NAT.

Une fois que vous avez configuré Cloud NAT pour votre projet, vos instances de VM peuvent accéder en toute sécurité à Internet sans adresse IP publique.

Déployer une VM Linux pour SAP MaxDB à l'aide de Deployment Manager

Les instructions suivantes font appel à Deployment Manager pour le déploiement d'une instance de VM Linux et de tous les disques persistants dont SAP MaxDB a besoin.

À propos de Deployment Manager

Dans ces instructions, vous définissez les options de ressources pour votre installation dans un modèle de fichier de configuration Deployment Manager.

Deployment Manager traite toutes les ressources créées pour votre système SAP comme une seule entité appelée déploiement. Vous pouvez afficher et utiliser tous les déploiements de votre projet sur la page Déploiements dans la console Google Cloud.

Tenez compte des comportements suivants lorsque vous utilisez Deployment Manager :

  • La suppression d'un déploiement supprime toutes les ressources associées au déploiement, y compris les VM, les disques persistants et les systèmes SAP installés sur la VM.
  • Par défaut, Deployment Manager utilise la stratégie de création de ressources ACQUIRE. Si vous spécifiez un nom de VM déjà utilisé par une autre VM dans votre projet, Deployment Manager ne crée pas de VM, mais ajoute celle existante à votre nouveau déploiement. Si votre VM d'origine a été créée par une exécution précédente de Deployment Manager, cette VM est associée à deux déploiements.

    Si vous supprimez ensuite le nouveau déploiement, la VM acquise est supprimée du déploiement qui l'a créée initialement. Pour éviter un tel scénario, définissez la stratégie de ressources de Deployment Manager sur CREATE ou assurez-vous d'utiliser des noms de ressources uniques dans votre nouveau déploiement.

    Pour en savoir plus sur les stratégies que vous pouvez utiliser lors de la création de ressources avec Deployment Manager et sur la façon de les spécifier, consultez la documentation sur Deployment Manager.

Procédure de déploiement

  1. Ouvrez Cloud Shell.

    Accéder à Cloud Shell

  2. Téléchargez le modèle de fichier de configuration template.yaml dans votre répertoire de travail en saisissant la commande suivante dans Cloud Shell :

    wget https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_maxdb/template.yaml
  3. Renommez éventuellement le fichier template.yaml afin d'identifier la configuration qu'il définit.

  4. Ouvrez le fichier template.yaml dans l'éditeur de code de Cloud Shell.

    Pour ce faire, cliquez sur l'icône en forme de crayon située dans l'angle supérieur droit de la fenêtre du terminal Cloud Shell.

  5. Dans le fichier template.yaml, mettez à jour les valeurs de propriété ci-dessous en remplaçant les crochets et leur contenu par les valeurs de votre installation.

    Propriété Type de données Description
    type Chaîne

    Spécifie l'emplacement, le type et la version du modèle Deployment Manager à utiliser lors du déploiement.

    Le fichier YAML comprend deux spécifications type, dont l'une est laissée en commentaire. La spécification type qui est active par défaut spécifie la version du modèle en tant que latest. La spécification type qui est laissée en commentaire spécifie une version de modèle spécifique avec un horodatage.

    Si tous vos déploiements doivent utiliser la même version de modèle, utilisez la spécification type qui inclut l'horodatage.

    instanceName Chaîne Nom de l'instance de VM sur laquelle SAP MaxDB sera installé. Ce nom doit comporter un maximum de 13 caractères et inclure des lettres minuscules, des chiffres ou des traits d'union.
    instanceType Chaîne Type de la machine virtuelle Compute Engine sur laquelle SAP MaxDB sera installé. Spécifiez un type de machine avec deux processeurs virtuels ou plus. Par exemple, "n1-standard-4". Si vous exécutez SAP MaxDB avec SAP NetWeaver sur la même VM, sélectionnez un type de machine comportant suffisamment de processeurs et de mémoire pour pouvoir exécuter les deux systèmes. Consultez le guide de planification de SAP NetWeaver.
    zone Chaîne Zone dans laquelle vous déployez le système SAP MaxDB. Elle doit se trouver dans la même région que celle que vous avez sélectionnée pour votre sous-réseau.
    subnetwork Chaîne Nom du sous-réseau que vous avez créé à une étape précédente. Si vous procédez au déploiement sur un VPC partagé, spécifiez cette valeur en tant que [SHAREDVPC_PROJECT]/[SUBNETWORK]. Exemple :myproject/network1
    linuxImage Chaîne Nom de la famille d'images ou de l'image système du système d'exploitation Windows que vous utilisez avec SAP MaxDB. Pour spécifier une famille d'images, ajoutez le préfixe family/ au nom de la famille. Par exemple, family/rhel-7 ou family/sles-12-sp3-sap. Pour spécifier une image donnée, indiquez uniquement son nom. Pour obtenir la liste des familles d'images disponibles, consultez la page Images dans Cloud Console.
    linuxImageProject Chaîne Le projet Google Cloud qui contient l'image que vous allez utiliser. Il peut s'agir de votre propre projet ou d'un projet d'image Google Cloud, tel que rhel-sap-cloud ou suse-sap-cloud. Pour obtenir la liste des projets d'image Google Cloud, consultez la page Images dans la documentation Compute Engine.
    maxdbSID Chaîne ID de l'instance de base de données.
    maxdbRootSize Entier Taille en Go de /sapdb, qui est le répertoire racine de l'instance de base de données. Les valeurs minimales et par défaut de maxdbRootSize sont égales à 8 Go.
    maxdbDataSize Entier Taille de /sapdb/[DBSID]/sapdata, qui contient les fichiers de données de la base de données. Les valeurs minimales et par défaut de maxdbDataSize sont égales à 30 Go.
    maxdbLogSize Entier Taille de /sapdb/[DBSID]saplog, qui contient les journaux de transaction de la base de données. Les valeurs minimales et par défaut de maxdbLogSize sont égales à 8 Go.
    maxdbBackupSize Entier Taille du volume /maxdbbackup. Cette propriété est facultative. Si elle est définie sur 0 ou omise, aucun disque n'est créé.
    maxdbDataSSD boolean Spécifie si le disque de données utilise un disque persistant SSD ("Yes") ou un disque persistant HDD ("No"). "Oui" est la valeur par défaut.
    maxdbLogSSD boolean Spécifie si le disque de journalisation utilise un disque persistant SSD ("Yes") ou un disque persistant HDD ("No"). "Oui" est la valeur par défaut. L'utilisation d'un disque SSD est recommandée pour le disque de journalisation.
    usrsapSize Entier Propriété requise seulement si vous installez SAP MaxDB pour une exécution avec SAP NetWeaver sur la même instance de VM.
    sapmntSize Entier Propriété requise seulement si vous installez SAP MaxDB pour une exécution avec SAP NetWeaver sur la même instance de VM.
    swapSize Entier Propriété requise seulement si vous installez SAP MaxDB pour une exécution avec SAP NetWeaver sur la même instance de VM.

    Le fichier de configuration suivant crée une VM configurée pour exécuter à la fois le serveur de base de données SAP MaxDB et SAP NetWeaver. Ce fichier de configuration demande à Deployment Manager de déployer une VM n1-standard-16 exécutant un système d'exploitation SLES 12 SP3. La VM comprend tous les répertoires requis pour exécuter SAP MaxDB et 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. Créez l'instance de VM comme suit :

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

    La commande ci-dessus appelle Deployment Manager, qui déploie la VM conformément aux spécifications de votre fichier template.yaml. Ce processus peut prendre quelques minutes. Pour vérifier la progression du déploiement, suivez les étapes de la section suivante.

Valider le déploiement

Pour vérifier le déploiement, consultez les journaux de déploiement dans Cloud Logging et la configuration de la VM.

Vérifier les journaux

  1. Dans la console Google Cloud, ouvrez Cloud Logging pour surveiller la progression de l'installation et rechercher les erreurs.

    Accéder à CloudLogging

  2. Filtrez les journaux :

    Logs Explorer

    1. Sur la page Explorateur de journaux, accédez au volet Requête.

    2. Dans le menu déroulant Ressource, sélectionnez Global, puis cliquez sur Ajouter.

      Si l'option Global n'apparaît pas, saisissez la requête suivante dans l'éditeur de requête :

      resource.type="global"
      "Deployment"
      
    3. Cliquez sur Exécuter la requête.

    Ancienne visionneuse de journaux

    • Sur la page Ancienne visionneuse de journaux, dans le menu de sélection de base, sélectionnez Global comme ressource de journalisation.
  3. Analysez les journaux filtrés :

    • Si "--- Finished" s'affiche, le traitement du déploiement est terminé, et vous pouvez passer à l'étape suivante.
    • Si vous rencontrez une erreur de quota :

      1. Sur la page Quotas de IAM et admin, augmentez les quotas qui ne répondent pas aux exigences de SAP HANA répertoriées dans le guide de planification de SAP HANA.

      2. Sur la page Déploiements de Deployment Manager, supprimez le déploiement pour nettoyer les VM et les disques persistants de l'installation ayant échoué.

      3. Réexécutez le déploiement.

Vérifier la configuration de la VM

  1. Une fois le système SAP MaxDB déployé sans erreur, connectez-vous à votre VM à l'aide du protocole SSH. Pour ce faire, sur la page Instances de VM de Compute Engine, cliquez sur le bouton SSH de votre instance de VM ou utilisez la méthode SSH de votre choix.

    Bouton SSH sur la page "Instances de VM" de Compute Engine

  2. Connectez-vous en tant qu'utilisateur racine.

    sudo su -
  3. À l'invite de commande, saisissez df -h. Assurez-vous que vous obtenez un résultat semblable au suivant, par exemple le répertoire //sapdb/[DBSID]/sapdata.

    Volumes de données créés par le script

  4. Si vous installez SAP MaxDB sur la même VM que SAP NetWeaver, vérifiez que le nouveau répertoire d'échange a été créé en saisissant la commande suivante :

    cat /proc/meminfo | grep Swap

    Un résultat semblable à l'exemple suivant devrait s'afficher :

    Exemple de résultat de terminal en cas de présence d'un répertoire d'échange

Si l'une des étapes de validation indique que l'installation a échoué, procédez comme suit :

  1. Corrigez l'erreur.
  2. Sur la page Déploiements, supprimez le déploiement pour nettoyer les VM et les disques persistants de l'installation défaillante.
  3. Réexécutez le déploiement.

Installer la base de données

Une fois votre système d'exploitation configuré, installez votre base de données SAP MaxDB : Le système MaxDB est généralement installé avec le produit SAP auquel il est intégré.

Pour installer le système SAP MaxDB sur votre VM, procédez comme suit :

  1. Établissez une connexion SSH avec votre VM basée sur Linux.
  2. Téléchargez le Software Provisioning Manager (SWPM) de SAP, le support d'installation du produit SAP et le support d'installation de MaxDB en suivant les guides d'installation de SAP.
  3. Installez le produit SAP et la base de données SAP MaxDB en suivant les guides d'installation de SAP pour votre produit SAP. Pour obtenir des conseils supplémentaires, reportez-vous à la documentation SAP MaxDB.

Le produit SAP fournit des informations supplémentaires concernant l'installation sur la page Note SAP 1020175 – Questions fréquentes sur l'installation, la mise à jour ou l'application d'un correctif pour SAP MaxDB (en anglais).

Vérifier l'installation de l'agent Google Cloud pour SAP

Après avoir déployé une VM et installé le système SAP, vérifiez que l'agent Google Cloud pour SAP fonctionne correctement.

Vérifier que l'agent Google Cloud pour SAP est en cours d'exécution

Pour vérifier que l'agent est en cours d'exécution, procédez comme suit :

  1. Établissez une connexion SSH avec votre instance de VM hôte.

  2. Exécutez la commande ci-dessous.

    systemctl status google-cloud-sap-agent

    Si l'agent fonctionne correctement, la sortie contient active (running). Exemple :

    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
    

Si l'agent n'est pas en cours d'exécution, redémarrez-le.

Vérifier que l'agent hôte SAP reçoit les métriques

Pour vérifier que les métriques d'infrastructure sont collectées par l'agent Google Cloud pour SAP et envoyées correctement à l'agent hôte SAP, procédez comme suit :

  1. Dans votre système SAP, saisissez la transaction ST06.
  2. Dans le volet de synthèse, vérifiez la disponibilité et le contenu des champs suivants pour vous assurer de la configuration de façon correcte et complète de l'infrastructure de surveillance SAP et Google :

    • Fournisseur cloud : Google Cloud Platform
    • Accès à la surveillance améliorée : TRUE
    • Détails de la surveillance améliorée : ACTIVE

Effectuer des tâches post-déploiement

Avant d'utiliser votre instance SAP MaxDB, nous vous recommandons d'effectuer les étapes de post-déploiement suivantes :

  1. Mettez à jour votre logiciel SAP MaxDB avec la dernière version des correctifs, si disponible.
  2. Installez tous les composants supplémentaires.
  3. Configurez et sauvegardez votre nouvelle base de données SAP MaxDB.

Pour en savoir plus, reportez-vous à la page Administration des bases de données SAP MaxDB (en anglais).

Résoudre les problèmes

Cette section explique comment résoudre les problèmes courants.

Résoudre les problèmes de connexion à votre VM

Si vous rencontrez des problèmes de connexion à votre VM via SSH, vérifiez que vous avez créé une règle de pare-feu pour ouvrir le port 22 sur le réseau Google Cloud que vous utilisez.

Pour découvrir les autres problèmes possibles, consultez la section Problèmes connus de la page "SSH depuis le navigateur".