Terraform : guide de déploiement à évolutivité verticale SAP HANA

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Ce guide de déploiement explique comment déployer un système SAP HANA sur Google Cloud à l'aide de Terraform et d'un fichier de configuration pour définir votre installation. Ce guide vous aide à configurer les machines virtuelles (VM) et les disques persistants Compute Engine, ainsi que le système d'exploitation Linux, pour optimiser les performances de votre système SAP HANA. Le fichier de configuration Terraform intègre les bonnes pratiques de Compute Engine et de SAP.

Ce guide vous permet de déployer un système SAP HANA à hôte unique à évolutivité verticale ou multi-hôte à évolutivité horizontale qui n'inclut pas d'hôtes de secours.

Si vous devez inclure le basculement automatique de l'hôte SAP HANA, utilisez plutôt le Guide de déploiement du système SAP HANA à évolutivité horizontale avec basculement automatique des hôtes.

Si vous devez déployer SAP HANA dans un cluster Linux haute disponibilité, utilisez l'un des guides suivants :

Prérequis

Avant de commencer, assurez-vous de remplir les conditions préalables suivantes :

  • Vous disposez d'un compte et d'un projet Google Cloud.
  • La mise en réseau du cloud privé virtuel est configurée avec des règles de pare-feu ou d'autres méthodes pour contrôler l'accès à vos VM.
  • Vous avez accès au support d'installation de SAP HANA.

  • Si OS Login est activé dans les métadonnées de votre projet et que vous déployez des nœuds à évolutivité horizontale, vous devrez désactiver temporairement OS Login jusqu'à la fin de votre déploiement. Pour le déploiement, cette procédure configure les clés SSH dans les métadonnées d'instance. Lorsque OS Login est activé, les configurations de clé SSH basées sur les métadonnées sont désactivées et le déploiement échoue. Une fois le déploiement terminé, vous pouvez réactiver OS Login.

    Pour en savoir plus, consultez les pages suivantes :

Configurer votre compte Google

Il est nécessaire d'avoir un compte Google pour travailler avec GCP.

  1. Créez un compte Google si vous n'en possédez pas.
  2. Connectez-vous à Google Cloud Console et créez un projet.
  3. Activez votre compte de facturation.
  4. Configurez des clés SSH afin de pouvoir vous connecter en SSH à vos instances Compute Engine. Utilisez l'outil de ligne de commande gcloud pour créer une clé SSH.
  5. Utilisez l'outil de ligne de commande gcloud ou la console Google Cloud pour ajouter les clés SSH aux métadonnées de votre projet. Cela vous permet d'accéder à toutes les instances Compute Engine du projet, à l'exception des instances qui désactivent explicitement les clés SSH à l'échelle du projet.

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 Monitoring de Google. 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 créer un réseau VPC pour votre projet, procédez comme suit :

  1. Créez un réseau en mode personnalisé. Pour plus d'informations, consultez la section Créer un réseau en mode personnalisé.

  2. Créez un sous-réseau, puis spécifiez la région et la plage d'adresses IP. Pour plus d'informations, consultez la section Ajouter 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.

Ajouter des règles de pare-feu

Par défaut, une règle de pare-feu implicite bloque les connexions entrantes provenant de l'extérieur de votre réseau VPC (Virtual Private Cloud, cloud privé virtuel). Pour autoriser les connexions entrantes, configurez une règle de pare-feu pour votre VM. Une fois qu'une connexion entrante est établie avec une VM, le trafic est autorisé dans les deux sens via cette connexion.

Vous pouvez également créer une règle de pare-feu pour autoriser l'accès externe à des ports spécifiés ou pour limiter l'accès entre plusieurs VM d'un même réseau. Si le type de réseau VPC default est utilisé, d'autres règles par défaut s'appliquent également, telles que la règle default-allow-internal, qui permet la connectivité entre les VM d'un même réseau sur tous les ports.

En fonction de la stratégie informatique applicable à votre environnement, vous devrez peut-être isoler votre hôte de base de données, ou en restreindre la connectivité, en créant des règles de pare-feu.

Selon votre scénario, vous pouvez créer des règles de pare-feu afin d'autoriser l'accès pour ce qui suit :

  • Ports SAP par défaut répertoriés dans le tableau listant les ports TCP/IP de tous les produits SAP.
  • Connexions à partir de votre ordinateur ou de votre environnement de réseau d'entreprise à votre instance de VM Compute Engine. Si vous ne savez pas quelle adresse IP utiliser, contactez l'administrateur réseau de votre entreprise.
  • Communication entre VM sur le sous-réseau SAP HANA, y compris la communication entre les nœuds d'un système à évolutivité horizontale SAP HANA ou la communication entre le serveur de base de données et les serveurs d'applications dans une architecture à trois niveaux. Pour activer la communication entre VM, vous pouvez créer une règle de pare-feu autorisant le trafic provenant du sous-réseau.
  • Connexions SSH à votre instance de VM, y compris les connexions SSH dans le navigateur.
  • Connexion à votre VM à l'aide d'un outil tiers sous Linux. Créez une règle autorisant l'accès de l'outil via votre pare-feu.

Consultez la section Créer des règles de pare-feu pour savoir comment créer des règles de pare-feu.

Créer un bucket Cloud Storage pour les fichiers d'installation de SAP HANA

Les fichiers d'installation contenant les fichiers binaires SAP HANA doivent être stockés dans un bucket Cloud Storage avant de pouvoir utiliser Terraform pour installer SAP HANA. Terraform attend les fichiers aux formats fournis par SAP. Selon votre version de SAP HANA, il peut s'agir de fichiers aux formats .zip, .exe ou .rar.

Pour télécharger les fichiers d'installation de SAP HANA, créez un bucket et importez-y les fichiers :

  1. Dans Téléchargements de logiciels SAP, téléchargez toutes les parties de la distribution Linux x86_64 de SAP HANA Platform Edition 1.0 ou 2.0, ainsi que toutes les mises à niveau de révision applicables sur votre lecteur local.

    Si vous ne pouvez pas accéder au logiciel depuis votre compte sur le portail d'assistance SAP, et que vous pensez qu'il s'agit d'une erreur, contactez le centre d'interaction client de l'assistance technique SAP mondiale.

  2. Utilisez la console Google Cloud pour créer un bucket Cloud Storage afin de stocker les fichiers d'installation de SAP HANA. Notez que le nom du bucket doit être unique dans GCP.

    • Lors de la création du bucket, choisissez Standard pour la classe de stockage.
  3. Configurez les autorisations du bucket. Par défaut, en tant que propriétaire, vous disposez d'un accès en lecture-écriture sur le bucket. Pour accorder l'accès à d'autres comptes principaux, consultez la page Utiliser des autorisations IAM.

  4. Dans la page du bucket Cloud Storage dans la console Google Cloud, sélectionnez Importer des fichiers pour importer le logiciel SAP HANA et les fichiers de révision de mise à niveau dans votre bucket à partir de votre support local :

    Importer des fichiers

  5. Notez le nom du bucket dans lequel vous avez importé les fichiers binaires. Vous en aurez besoin lorsque vous installerez SAP HANA.

Créer une VM avec SAP HANA installé

Les instructions suivantes font appel à Terraform pour installer SAP HANA sur une ou plusieurs instances de VM avec tous les disques persistants requis par SAP HANA. Vous définissez les valeurs nécessaires à l'installation dans un fichier de configuration Terraform.

Les instructions suivantes utilisent Cloud Shell, mais sont généralement applicables à Google Cloud CLI.

  1. Vérifiez que vos quotas actuels pour les ressources telles que les disques persistants et les processeurs sont suffisants pour le système SAP HANA que vous allez installer. Si les quotas sont insuffisants, le déploiement échoue. Pour connaître les exigences en matière de quotas de SAP HANA, consultez la section Remarques relatives aux tarifs et aux quotas applicables à SAP HANA.

    Accéder à la page "Quotas"

  2. Ouvrez Cloud Shell ou, si vous avez installé Google Cloud SDK sur votre poste de travail local, ouvrez un terminal.

    Accéder à Cloud Shell

  3. Téléchargez le fichier de configuration sap_hana.tf dans votre répertoire de travail en saisissant la commande suivante dans Cloud Shell ou la CLI gcloud :

    wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana/terraform/sap_hana.tf
  4. Ouvrez le fichier sap_hana.tf dans l'éditeur de code Cloud Shell ou, si vous utilisez la CLI gcloud, dans l'éditeur de texte de votre choix.

    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 sap_hana.tf, mettez à jour les valeurs d'arguments suivantes en remplaçant les crochets et leur contenu par les valeurs de votre installation.

    Certaines valeurs d'argument que vous spécifiez pour le système SAP HANA, telles que sap_hana_sid, sap_hana_sidadm_password ou sap_hana_system_password, sont soumises à des règles définies par SAP. Pour en savoir plus, consultez la section sur la référence des paramètres dans le guide d'installation et de mise à jour du serveur SAP HANA.

    Pour spécifier des mots de passe dans le fichier de configuration, vous devez utiliser des secrets ou spécifier des mots de passe en texte brut. Pour en savoir plus, consultez la section Gestion des mots de passe.

    Si vous souhaitez créer une instance de VM sans installer SAP HANA, supprimez toutes les lignes commençant par sap_hana_.

    Argument Data type Description
    source String

    Spécifie l'emplacement et la version du module Terraform à utiliser lors du déploiement.

    Le fichier de configuration DEPLOYMENT_TYPE.tf comprend deux instances de l'argument source : l'une active et l'autre incluse en tant que commentaire. L'argument source actif par défaut spécifie latest comme version de module. La deuxième instance de l'argument source, qui est désactivée par défaut par un caractère # de début, spécifie un horodatage qui identifie une version de module.

    Si vous avez besoin que tous vos déploiements utilisent la même version de module, supprimez le caractère # de début de l'argument source qui spécifie l'horodatage de la version, puis ajoutez-le à l'argument source spécifiant latest.

    project_id String Indiquez l'ID de votre projet Google Cloud dans lequel vous déployez ce système.
    instance_name String Spécifiez un nom pour l'instance de VM hôte. Le nom peut contenir des lettres minuscules, des chiffres et des traits d'union. Les instances de VM des hôtes de calcul et de secours utilisent le même nom, auquel sont ajoutés la lettre w et le numéro d'hôte.
    machine_type String Spécifiez le type de machine virtuelle (VM) Compute Engine sur lequel vous devez exécuter votre système SAP. Si vous avez besoin d'un type de VM personnalisé, spécifiez un type de VM prédéfini avec un nombre de processeurs virtuels le plus proche possible de la quantité dont vous avez besoin tout en étant légèrement supérieur. Une fois le déploiement terminé, modifiez le nombre de processeurs virtuels et la quantité de mémoire.
    zone String Spécifiez la zone dans laquelle vous déployez votre système SAP. Cette zone doit se trouver dans la même région que celle que vous avez sélectionnée pour votre sous-réseau.
    subnetwork String Spécifiez le 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 SHARED_VPC_PROJECT_ID/SUBNETWORK. Exemple : myproject/network1.
    linux_image String Indiquez le nom de l'image du système d'exploitation Linux sur laquelle vous souhaitez déployer votre système SAP. Par exemple, rhel-8-4-sap-ha ou sles-15-sp3-sap. Pour obtenir la liste des images de système d'exploitation disponibles, consultez la page Images dans la console Google Cloud.
    linux_image_project String Spécifiez le projet Google Cloud qui contient l'image que vous avez spécifiée pour l'argument linux_image. Ce projet peut être votre propre projet ou un projet d'image Google Cloud. Pour une image Compute Engine, spécifiez rhel-sap-cloud ou suse-sap-cloud. Pour trouver le projet d'image correspondant à votre système d'exploitation, consultez la page Détails des systèmes d'exploitation.
    sap_hana_deployment_bucket String Pour installer automatiquement SAP HANA sur les VM déployées, spécifiez le nom du bucket Cloud Storage de votre projet Cloud qui contient les fichiers d'installation de SAP HANA.
    sap_hana_sid String Pour installer automatiquement SAP HANA sur les VM déployées, spécifiez l'ID système SAP HANA. L'ID doit comporter trois caractères alphanumériques et commencer par une lettre. Toutes les lettres doivent être en majuscules.
    sap_hana_sidadm_uid Integer Facultatif. Spécifiez une valeur pour remplacer la valeur par défaut de l'ID de l'utilisateur administrateur SID_LC. La valeur par défaut est 900. Vous pouvez la remplacer par une autre valeur pour garantir la cohérence dans votre environnement SAP.
    sap_hana_instance_number Integer Facultatif. Spécifiez le numéro d'instance (0 à 99) du système SAP HANA. La valeur par défaut est 0.
    sap_hana_sidadm_password String Pour installer automatiquement SAP HANA sur les VM déployées, spécifiez un mot de passe SIDadm temporaire pour les scripts d'installation à utiliser lors du déploiement. Le mot de passe doit contenir au moins huit caractères et inclure au moins une lettre majuscule, une lettre minuscule et un chiffre.

    Ne spécifiez pas de mot de passe si vous utilisez Secret Manager pour stocker le mot de passe SIDadm. Spécifiez plutôt le nom du secret de l'argument sap_hana_sidadm_password_secret.

    sap_hana_sidadm_password_secret String Facultatif. Si vous utilisez Secret Manager pour stocker le mot de passe SIDadm, spécifiez le nom du secret correspondant à ce mot de passe.

    Dans Secret Manager, assurez-vous que la valeur du secret, qui correspond au mot de passe, contient au moins huit caractères et au moins une lettre majuscule, une lettre minuscule et un chiffre.

    Ne spécifiez pas de valeur pour sap_hana_sidadm_password_secret si vous spécifiez une valeur pour l'argument sap_hana_sidadm_password.

    Pour en savoir plus, consultez la section Gestion des mots de passe.
    sap_hana_system_password String Pour installer automatiquement SAP HANA sur les VM déployées, spécifiez le mot de passe temporaire d'un super-utilisateur de base de données pour les scripts d'installation à utiliser lors du déploiement. Le mot de passe doit contenir au moins huit caractères et inclure au moins une lettre majuscule, une lettre minuscule et un chiffre.

    Ne spécifiez pas de mot de passe si vous utilisez Secret Manager pour stocker le mot de passe du super-utilisateur de la base de données. Spécifiez plutôt le nom du secret de l'argument sap_hana_system_password_secret.

    sap_hana_system_password_secret String Facultatif. Si vous utilisez Secret Manager pour stocker le mot de passe du super-utilisateur de la base de données, spécifiez le nom du secret correspondant à ce mot de passe.

    Dans Secret Manager, assurez-vous que la valeur du secret, qui correspond au mot de passe, contient au moins huit caractères et au moins une lettre majuscule, une lettre minuscule et un chiffre.

    Ne spécifiez pas de valeur pour sap_hana_system_password_secret si vous spécifiez une valeur pour l'argument sap_hana_system_password.

    Pour en savoir plus, consultez la section Gestion des mots de passe.
    sap_hana_scaleout_nodes Integer Pour déployer SAP HANA dans une architecture à hôtes multiples et scaling horizontal, spécifiez le nombre d'hôtes de calcul dont vous avez besoin. La valeur par défaut est 0. Terraform crée les hôtes de calcul en plus de l'instance HANA principale. Par exemple, si vous spécifiez 3, quatre instances SAP HANA sont déployées dans un cluster à évolutivité horizontale.
    sap_hana_backup_size Integer Facultatif. Spécifiez la taille du volume /hanabackup en Go. Si vous ne spécifiez pas cet argument ou si vous le définissez sur 0, le script d'installation provisionne l'instance Compute Engine avec un volume de sauvegarde HANA de deux fois la mémoire totale.
    sap_hana_sapsys_gid Integer Facultatif. Remplace l'ID de groupe par défaut défini pour sapsys. La valeur par défaut est 79.
    network_tags String Facultatif. Spécifiez un ou plusieurs tags réseau séparés par une virgule que vous souhaitez associer à vos instances de VM à des fins de routage ou de pare-feu.

    Si vous spécifiez public_ip = false et ne spécifiez pas de tag réseau, veillez à fournir un autre moyen d'accès à Internet.

    public_ip Booléen Facultatif. Détermine si une adresse IP publique est ajoutée ou non à votre instance de VM. La valeur par défaut est true.
    service_account String Facultatif. Spécifiez l'adresse e-mail d'un compte de service géré par l'utilisateur qui sera utilisée par les VM hôtes et par les programmes qui s'exécutent sur celles-ci. Par exemple, svc-acct-name@project-id.iam.gserviceaccount.com.

    Si vous spécifiez cet argument sans valeur ou si vous l'omettez, le script d'installation utilise le compte de service Compute Engine par défaut. Pour en savoir plus, consultez la page Gestion de l'authentification et des accès pour les programmes SAP sur Google Cloud.

    sap_deployment_debug Booléen Facultatif. Lorsque Cloud Customer Care vous demande d'activer le débogage pour votre déploiement, spécifiez true, qui permet au déploiement de générer des journaux de déploiement détaillés. La valeur par défaut est false.
    reservation_name String Facultatif. Pour utiliser une réservation de VM Compute Engine spécifique pour ce déploiement, spécifiez le nom de la réservation. Par défaut, le script d'installation sélectionne toute réservation Compute Engine disponible en fonction des conditions suivantes.

    Que vous définissiez son nom ou que le script d'installation le sélectionne automatiquement, la réservation doit être définie comme suit pour être utilisable :

    • L'option specificReservationRequired est définie sur true ou, dans la console Google Cloud, l'option Sélectionner une réservation spécifique est sélectionnée.
    • Certains types de machines Compute Engine sont compatibles avec les plates-formes de processeur qui ne sont pas couvertes par la certification SAP de ce type de machine. Si la réservation cible concerne l'un des types de machines suivants, la réservation doit spécifier les plates-formes de processeur minimales, comme indiqué :
      • n1-highmem-32 : Intel Broadwell
      • n1-highmem-64 : Intel Broadwell
      • n1-highmem-96 : Intel Skylake
      • m1-megamem-96 : Intel Skylake
    • Les plates-formes de processeur minimales pour tous les autres types de machines certifiés par SAP pour une utilisation sur Google Cloud sont conformes à la configuration minimale requise de processeur SAP.

    L'exemple suivant montre un fichier de configuration terminé, indiquant à Terraform de déployer une machine virtuelle n2-highmem-32 disposant d'un système HANA à évolutivité horizontale qui inclut une instance SAP HANA principale avec trois hôtes de calcul. SAP HANA s'exécute sur un système d'exploitation SLES 15 SP2.

    #
    #...
    module "sap_hana" {
      source: "https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana/sap_hana_module.zip"
      #
      # By default, this source file uses the latest release of the terraform module
      # for SAP on Google Cloud. To fix your deployments to a specific release
      # of the module, comment out the source property above and uncomment the source property below.
      #
      # source: "https://storage.googleapis.com/cloudsapdeploy/terraform/YYYYMMDDHHMM/terraform/sap_hana/sap_hana_module.zip"
      # ...
      project_id = "example-project-123456"
      zone = "us-central1-f"
      machine_type = "n2-highmem-32"
      subnetwork = "example-subnet-us-central1"
      linux_image = "sles-15-sp2-sap"
      linux_image_project = "suse-sap-cloud"
      # ...
      instance_name = "hana-scaleout"
      # ...
      sap_hana_deployment_bucket = "mybucketname"
      sap_hana_sid = "AB2"
      sap_hana_instance_number = 12
      sap_hana_sidadm_password = "TempPa55word"
      sap_hana_system_password = "TempPa55word"
      sap_hana_scaleout_nodes = 3
      sap_hana_sidadm_uid = 11
      # ...
    }
  6. Pour initialiser votre répertoire de travail actuel et télécharger le plug-in du fournisseur Terraform et les fichiers de modules pour Google Cloud, procédez comme suit :

    terraform init

    La commande terraform init prépare votre répertoire de travail pour d'autres commandes Terraform.

    Pour forcer l'actualisation du plug-in du fournisseur et des fichiers de configuration dans votre répertoire de travail, spécifiez l'option --upgrade. Si l'option --upgrade est omise et que vous n'apportez aucune modification à votre répertoire de travail, Terraform utilise les copies mises en cache localement, même si latest est spécifié dans l'URL source.

    terraform init --upgrade 
  7. Vous pouvez également créer le plan d'exécution Terraform :

    terraform plan

    La commande terraform plan affiche les modifications requises par votre configuration actuelle. Si vous ignorez la commande terraform plan, la commande terraform apply calcule le plan avant de l'appliquer.

  8. Pour appliquer le plan d'exécution, procédez comme suit :

    terraform apply

    Lorsque vous êtes invité à approuver les actions, saisissez yes.

    La commande terraform apply configure l'infrastructure Google Cloud, puis appelle un autre script qui configure le système d'exploitation et installe SAP HANA.

    Lorsque Terraform a le contrôle, les messages d'état sont écrits dans Cloud Shell. Une fois les scripts appelés, les messages d'état sont écrits dans Logging et peuvent être consultés dans la console Google Cloud, comme décrit dans la section Vérifier les journaux.

    La durée d'exécution peut varier, mais l'ensemble du processus prend généralement moins de 30 minutes.

Valider le déploiement

Pour vérifier le déploiement, vérifiez les journaux de déploiement dans Cloud Logging, ainsi que les disques et les services sur les VM des hôtes principaux et de calcul.

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 & Admin, augmentez les quotas qui ne répondent pas aux exigences de SAP HANA décrites dans le guide de planification SAP HANA.

      2. Ouvrez Cloud Shell.

        Accéder à Cloud Shell

      3. Accédez à votre répertoire de travail et supprimez le déploiement pour nettoyer les VM et les disques persistants de l'installation ayant échoué :

        terraform destroy

        Lorsque vous êtes invité à approuver l'action, saisissez yes.

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

Vérifiez la configuration de la VM et du système SAP HANA

  1. Une fois le système SAP HANA déployé sans erreur, connectez-vous à chaque VM à l'aide du protocole SSH. Sur la page VM instances (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 "VM instances" (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 d'obtenir un résultat semblable à ce qui suit, avec les volumes et les tailles attendus. L'exemple suivant provient du nœud maître d'un système à évolutivité horizontale comportant trois nœuds de calcul.

    example-vm:~ # df -h
    Filesystem                        Size  Used Avail Use% Mounted on
    devtmpfs                          126G  8.0K  126G   1% /dev
    tmpfs                             189G     0  189G   0% /dev/shm
    tmpfs                             126G   18M  126G   1% /run
    tmpfs                             126G     0  126G   0% /sys/fs/cgroup
    /dev/sda3                          30G  5.4G   25G  18% /
    /dev/sda2                          20M  2.9M   18M  15% /boot/efi
    /dev/mapper/vg_hana-shared        251G   50G  201G  20% /hana/shared
    /dev/mapper/vg_hana-sap            32G  282M   32G   1% /usr/sap
    /dev/mapper/vg_hana-data          426G  7.4G  419G   2% /hana/data
    /dev/mapper/vg_hana-log           125G  4.3G  121G   4% /hana/log
    /dev/mapper/vg_hanabackup-backup  2.0T  2.1G  2.0T   1% /hanabackup
    tmpfs                              26G     0   26G   0% /run/user/473
    tmpfs                              26G     0   26G   0% /run/user/900
    tmpfs                              26G     0   26G   0% /run/user/1003
  4. Passez à l'administrateur SAP :

    su - SID_LCadm
    

    Remplacez SID_LC par la valeur SID que vous avez spécifiée dans le fichier de configuration. Utilisez des minuscules pour toutes les lettres.

  5. Assurez-vous que les services SAP HANA, tels que hdbnameserver, hdbindexserver et autres services, s'exécutent sur l'instance :

    HDB info
    

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

  1. Corrigez les erreurs.
  2. Ouvrez Cloud Shell.

    Accéder à Cloud Shell

  3. Accédez au répertoire contenant le fichier de configuration Terraform pour déployer SAP HANA.

  4. Pour supprimer le déploiement :

    terraform destroy

    Lorsque vous êtes invité à approuver l'action, saisissez yes.

Installer SAP HANA Studio sur une VM Compute Engine pour Windows

Vous pouvez vous connecter à partir d'une instance SAP HANA en dehors de Google Cloud ou d'une instance sur Google Cloud. Pour ce faire, vous devrez peut-être activer l'accès réseau aux VM cibles à partir de SAP HANA Studio.

Pour installer SAP HANA Studio sur une VM Windows sur Google Cloud, procédez comme suit :

  1. Utilisez Cloud Shell pour appeler les commandes suivantes.

    OUVRIR CLOUD SHELL

    export NETWORK_NAME="[YOUR_NETWORK_NAME]"
    export REGION="[YOUR_REGION]"
    export ZONE="[YOUR_ZONE]"
    export SUBNET="[YOUR_SUBNETWORK_NAME]"
    export SOURCE_IP_RANGE="[YOUR_WORKSTATION_IP]"
    gcloud compute instances create saphanastudio --zone=$ZONE \
    --machine-type=n1-standard-2  --subnet=$SUBNET --tags=hanastudio \
    --image-family=windows-2016  --image-project=windows-cloud \
    --boot-disk-size=100 --boot-disk-type=pd-standard \
    --boot-disk-device-name=saphanastudio
    gcloud compute firewall-rules create ${NETWORK_NAME}-allow-rdp \
    --network=$NETWORK_NAME --allow=tcp:3389 --source-ranges=$SOURCE_IP_RANGE \
    --target-tags=hanastudio

    Les commandes ci-dessus définissent des variables pour la session Cloud Shell actuelle, créent un serveur Windows dans le sous-réseau que vous avez créé précédemment et créent une règle de pare-feu qui autorise l'accès de votre poste de travail local à l'instance via le protocole RDP (Remote Desktop Protocol, RDP).

  2. Installez SAP HANA Studio sur ce serveur.

    1. Importez les fichiers d'installation de SAP HANA Studio et l'outil d'extraction SAPCAR dans un bucket Cloud Storage de votre projet Google Cloud.
    2. Connectez-vous à la nouvelle VM Windows à l'aide du protocole RDP ou de la méthode de votre choix.
    3. Sous Windows, ouvrez l'interface de Google Cloud CLI ou une autre interface de ligne de commande en tant qu'administrateur.
    4. Copiez les fichiers d'installation de SAP HANA Studio et l'outil d'extraction SAPCAR du bucket de stockage vers la VM en saisissant la commande gsutil cp dans l'interface de commande. Exemple :

      gsutil cp gs://[SOURCE_BUCKET]/IMC_STUDIO2_232_0-80000323.SAR C:\[TARGET_DIRECTORY] &
      gsutil cp gs://[SOURCE_BUCKET]/SAPCAR_1014-80000938.EXE C:\[TARGET_DIRECTORY]
      
    5. Remplacez le répertoire par votre répertoire cible.

      cd C:\[TARGET_DIRECTORY]
      
    6. Exécutez le programme SAPCAR pour extraire le fichier d'installation de SAP HANA Studio.

      SAPCAR_1014-80000938.EXE -xvf IMC_STUDIO2_232_0-80000323.SAR
      
    7. Exécutez le programme hdbinst ainsi extrait pour installer SAP HANA Studio.

Activer le redémarrage rapide de SAP HANA

Google Cloud recommande fortement d'activer le redémarrage rapide SAP HANA pour chaque instance de SAP HANA, en particulier pour les instances de grande capacité. Le redémarrage rapide de SAP HANA réduit le temps de redémarrage en cas d'arrêt de SAP HANA, mais le système d'exploitation reste en cours d'exécution.

Comme configuré par les scripts d'automatisation fournis par Google Cloud, les paramètres du système d'exploitation et du noyau sont déjà compatibles avec le redémarrage rapide de SAP HANA. Vous devez définir le système de fichiers tmpfs et configurer SAP HANA.

Pour définir le système de fichiers tmpfs et configurer SAP HANA, vous pouvez suivre les étapes manuelles ou utiliser le script d'automatisation fourni par Google Cloud pour activer le redémarrage rapide de SAP HANA. Pour en savoir plus, consultez les pages suivantes :

Pour obtenir des instructions faisant autorité sur la fonction de redémarrage rapide SAP HANA, consultez la documentation sur les options de redémarrage rapide de SAP HANA.

Étapes manuelles : Activer le redémarrage rapide de SAP HANA

Configurer le système de fichiers tmpfs

Une fois les VM hôtes et les systèmes SAP HANA de base déployés, vous devez créer et installer des répertoires pour les nœuds NUMA du système de fichiers tmpfs.

Afficher la topologie NUMA de votre VM

Pour pouvoir mapper le système de fichiers tmpfs requis, vous devez connaître la quantité de nœuds NUMA dont dispose votre VM. Pour afficher les nœuds NUMA disponibles sur une VM Compute Engine, saisissez la commande suivante :

lscpu | grep NUMA

Par exemple, un type de VM m2-ultramem-208 comporte quatre nœuds NUMA, numérotés de 0 à 3, comme illustré dans l'exemple suivant :

NUMA node(s):        4
NUMA node0 CPU(s):   0-25,104-129
NUMA node1 CPU(s):   26-51,130-155
NUMA node2 CPU(s):   52-77,156-181
NUMA node3 CPU(s):   78-103,182-207
Créer les répertoires de nœuds NUMA

Créez un répertoire pour chaque nœud NUMA de votre VM et définissez les autorisations.

Par exemple, pour quatre nœuds NUMA numérotés de 0 à 3 :

mkdir -pv /hana/tmpfs{0..3}/SID
chown -R SID_LCadm:sapsys /hana/tmpfs*/SID
chmod 777 -R /hana/tmpfs*/SID
Installer les répertoires de nœuds NUMA dans tmpfs

Montez les répertoires du système de fichiers tmpfs et spécifiez une préférence de nœud NUMA pour chacun avec mpol=prefer :

mount tmpfsSID_UC0 -t tmpfs -o mpol=prefer:0 /hana/tmpfs0/SID_UC
mount tmpfsSID_UC1 -t tmpfs -o mpol=prefer:1 /hana/tmpfs1/SID_UC
mount tmpfsSID_UC2 -t tmpfs -o mpol=prefer:2 /hana/tmpfs2/SID_UC
mount tmpfsSID_UC3 -t tmpfs -o mpol=prefer:3 /hana/tmpfs3/SID_UC
Mettre à jour /etc/fstab

Pour vous assurer que les points d'installation sont disponibles après un redémarrage du système d'exploitation, ajoutez des entrées dans la table du système de fichiers, /etc/fstab :

tmpfsSID_UC0 /hana/tmpfs0/SID_UC tmpfs rw,relatime,mpol=prefer:0
tmpfsSID_UC1 /hana/tmpfs1/SID_UC tmpfs rw,relatime,mpol=prefer:1
tmpfsSID_UC1 /hana/tmpfs2/SID_UC tmpfs rw,relatime,mpol=prefer:2
tmpfsSID_UC1 /hana/tmpfs3/SID_UC tmpfs rw,relatime,mpol=prefer:3
Facultatif : définir des limites à l'utilisation de la mémoire

Le système de fichiers tmpfs peut augmenter ou diminuer de manière dynamique.

Pour limiter la mémoire utilisée par le système de fichiers tmpfs, vous pouvez définir une limite de taille pour un volume de nœuds NUMA en utilisant l'option size. Exemple :

mount tmpfsSID_UC0 -t tmpfs -o mpol=prefer:0,size=250G /hana/tmpfs0/SID_UC

Vous pouvez également limiter l'utilisation globale de la mémoire tmpfs pour tous les nœuds NUMA d'une instance SAP HANA donnée et d'un nœud de serveur donné en définissant le paramètre persistent_memory_global_allocation_limit dans la section [memorymanager] du fichier global.ini.

Configuration de SAP HANA pour le redémarrage rapide

Pour configurer SAP HANA pour le redémarrage rapide, mettez à jour le fichier global.ini et spécifiez les tables à stocker dans la mémoire persistante.

Mettre à jour la section [persistence] du fichier global.ini

Configurez la section [persistence] du fichier SAP HANA global.ini de manière à référencer les emplacements tmpfs. Séparez chaque emplacement tmpfs par un point-virgule :

[persistence]
basepath_datavolumes = /hana/data
basepath_logvolumes = /hana/log
basepath_persistent_memory_volumes = /hana/tmpfs0/SID_UC;/hana/tmpfs1/SID_UC;/hana/tmpfs2/SID_UC;/hana/tmpfs3/SID_UC

L'exemple précédent spécifie quatre volumes de mémoire pour quatre nœuds NUMA, ce qui correspond à m2-ultramem-208. Si vous l'exécutez sur m2-ultramem-416, vous devez configurer huit volumes de mémoire (de 0 à 7).

Redémarrez SAP HANA après avoir modifié le fichier global.ini.

SAP HANA peut désormais utiliser l'emplacement tmpfs comme espace de mémoire persistant.

Spécifier les tables à stocker en mémoire persistante

Spécifiez des tables ou partitions de colonne spécifiques à stocker en mémoire persistante.

Par exemple, pour activer la mémoire persistante pour une table existante, exécutez la requête SQL :

ALTER TABLE exampletable persistent memory ON immediate CASCADE

Pour modifier la valeur par défaut des nouvelles tables, ajoutez le paramètre table_default dans le fichier indexserver.ini. Exemple :

[persistent_memory]
table_default = ON

Pour en savoir plus sur le contrôle des colonnes et des tables ainsi que sur les vues de surveillance qui fournissent des informations détaillées, consultez la page Mémoire persistante SAP HANA.

Script d'automatisation : Activer le redémarrage rapide de SAP HANA

Le script d'automatisation fourni par Google Cloud pour activer le redémarrage rapide de SAP HANA apporte des modifications aux répertoires /hana/tmpfs*, au fichier /etc/fstab et à la configuration de SAP HANA. Lorsque vous exécuterez le script, vous devrez peut-être effectuer des étapes supplémentaires selon qu'il s'agit du déploiement initial de votre système SAP HANA ou que vous redimensionnez votre machine sur une autre taille NUMA.

Pour le déploiement initial de votre système SAP HANA ou le redimensionnement de la machine pour augmenter le nombre de nœuds NUMA, assurez-vous que SAP HANA est en cours d'exécution pendant l'exécution du script d'automatisation fourni par Google Cloud pour activer le redémarrage rapide de SAP HANA.

Lorsque vous redimensionnez votre machine pour réduire le nombre de nœuds NUMA, assurez-vous que SAP HANA est arrêté pendant l'exécution du script d'automatisation fourni par Google Cloud pour permettre le redémarrage rapide de SAP HANA. Une fois le script exécuté, vous devez mettre à jour manuellement la configuration SAP HANA pour terminer la configuration du redémarrage rapide de SAP HANA. Pour en savoir plus, consultez la section Configuration de SAP HANA pour le redémarrage rapide.

Pour activer le redémarrage rapide de SAP HANA, procédez comme suit :

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

  2. Passez en mode root :

    sudo su -

  3. Téléchargez le script sap_lib_hdbfr.sh :

    wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/lib/sap_lib_hdbfr.sh
  4. Rendez le fichier exécutable :

    chmod +x sap_lib_hdbfr.sh
  5. Vérifiez que le script ne comporte aucune erreur :

    vi sap_lib_hdbfr.sh
    ./sap_lib_hdbfr.sh -help

    Si la commande renvoie une erreur, contactez le Cloud Customer Care. Pour en savoir plus sur la procédure à suivre pour contacter le service client, consultez la page Obtenir de l'aide concernant SAP sur Google Cloud.

  6. Exécutez le script après avoir remplacé l'ID système (SID) et le mot de passe SAP HANA de l'utilisateur système de la base de données SAP HANA. Pour fournir le mot de passe en toute sécurité, nous vous recommandons d'utiliser un secret dans Secret Manager.

    Exécutez le script en utilisant le nom d'un secret dans Secret Manager.

    sudo ./sap_lib_hdbfr.sh -h 'SID' -s SECRET_NAME 

    Remplacez les éléments suivants :

    • SID : spécifiez le SID en majuscules. Par exemple, AHA.
    • SECRET_NAME : spécifiez le nom du secret correspondant au mot de passe de l'utilisateur système de la base de données SAP HANA.

    Vous pouvez également exécuter le script en utilisant un mot de passe en texte brut. Une fois le redémarrage rapide de SAP HANA activé, veillez à modifier votre mot de passe. L'utilisation d'un mot de passe en texte brut n'est pas recommandée, car celui-ci serait enregistré dans l'historique de ligne de commande de votre VM.

    sudo ./sap_lib_hdbfr.sh -h 'SID' -p 'PASSWORD'

    Remplacez les éléments suivants :

    • SID : spécifiez le SID en majuscules. Par exemple, AHA.
    • PASSWORD : spécifiez le mot de passe de l'utilisateur système de la base de données SAP HANA.

Dans le cas d'une exécution initiale réussie, vous devez obtenir une sortie semblable à celle-ci :

INFO - Script is running in standalone mode
ls: cannot access '/hana/tmpfs*': No such file or directory
INFO - Setting up HANA Fast Restart for system 'TST/00'.
INFO - Number of NUMA nodes is 2
INFO - Number of directories /hana/tmpfs* is 0
INFO - HANA version 2.57
INFO - No directories /hana/tmpfs* exist. Assuming initial setup.
INFO - Creating 2 directories /hana/tmpfs* and mounting them
INFO - Adding /hana/tmpfs* entries to /etc/fstab. Copy is in /etc/fstab.20220625_030839
INFO - Updating the HANA configuration.
INFO - Running command: select * from dummy
DUMMY
"X"
1 row selected (overall time 4124 usec; server time 130 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_persistent_memory_volumes') = '/hana/tmpfs0/TST;/hana/tmpfs1/TST;'
0 rows affected (overall time 3570 usec; server time 2239 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistent_memory', 'table_unload_action') = 'retain';
0 rows affected (overall time 4308 usec; server time 2441 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') SET ('persistent_memory', 'table_default') = 'ON';
0 rows affected (overall time 3422 usec; server time 2152 usec)

Configurer l'agent de surveillance Google pour SAP HANA

Si vous le souhaitez, vous pouvez configurer l'agent de surveillance Google pour SAP HANA, qui collecte les statistiques de SAP HANA et les envoie à Cloud Monitoring. Cloud Monitoring vous permet de créer des tableaux de bord pour visualiser vos métriques, de configurer des alertes personnalisées en fonction de seuils de métriques, etc. Pour plus d'informations sur la configuration de l'agent de surveillance Google pour SAP HANA, consultez le Guide de l'utilisateur de l'agent de surveillance SAP HANA.

Se connecter à SAP HANA

Étant donné qu'aucune adresse IP externe n'est utilisée pour SAP HANA dans ces instructions, vous ne pouvez vous connecter aux instances SAP HANA que via l'instance bastion à l'aide de SSH ou via le serveur Windows à l'aide de SAP HANA Studio.

  • Pour vous connecter à SAP HANA via l'instance bastion, connectez-vous à l'hôte bastion, puis aux instances SAP HANA à l'aide du client SSH de votre choix.

  • Pour vous connecter à la base de données SAP HANA via SAP HANA Studio, utilisez un client Bureau à distance pour vous connecter à l'instance Windows Server. Une fois la connexion établie, installez SAP HANA Studio manuellement, puis accédez à votre base de données SAP HANA.

Effectuer des tâches post-déploiement

Avant d'utiliser votre instance SAP HANA, nous vous recommandons d'effectuer les étapes de post-déploiement ci-dessous. Pour en savoir plus, consultez le Guide d'installation et de mise à jour de SAP HANA.

  1. Modifiez les mots de passe temporaires de l'administrateur système et du super-utilisateur du système SAP HANA. Exemple :

    sudo passwd SIDadm

    Consultez la section Réinitialiser le mot de passe utilisateur SYSTEM de la base de données système.

  2. Installez votre licence permanente SAP HANA. Si vous ne le faites pas, il est possible que SAP HANA opère un verrouillage de la base de données après l'expiration de la licence temporaire.

    Pour en savoir plus sur la gestion de vos licences SAP HANA, reportez-vous à la section Clés de licence de la base de données SAP HANA.

  3. Mettez à jour le logiciel SAP HANA avec les derniers correctifs.

  4. Installez des composants supplémentaires tels que les bibliothèques Application Function Library (AFL) ou Smart Data Access (SDA).

  5. Configurez et sauvegardez votre nouvelle base de données SAP HANA. Pour en savoir plus, consultez le Guide d'utilisation de SAP HANA.

Étape suivante

  • Si vous devez utiliser NetApp Cloud Volumes Service pour Google Cloud au lieu de disques persistants pour vos répertoires SAP HANA, consultez les informations de déploiement de NetApp Cloud Volumes Service dans le guide de planification SAP HANA.
  • Pour en savoir plus sur l'administration et la surveillance des VM, consultez le Guide d'utilisation de SAP HANA.