arrow_back

Implémenter Cloud SQL (Azure)

Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

Implémenter Cloud SQL (Azure)

Atelier 1 heure 30 minutes universal_currency_alt 5 crédits show_chart Débutant
info This lab may incorporate AI tools to support your learning.
Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

Vous avez récemment été embauché par une entreprise informatique qui utilise Google Cloud comme principal fournisseur de services cloud. En tant qu'expert en bases de données SQL, vous êtes chargé d'examiner et d'adopter les services SQL proposés par Google Cloud. Vous devez par exemple vous préoccuper des points suivants :

  • Déploiement
  • Sécurité
  • Intégration des applications
  • Méthodes de connectivité

Diagramme Azure Comme vous utilisiez Azure dans votre poste précédent, vous savez comment déployer un serveur SQL. Le modèle de tarification est basé sur un nombre personnalisable d'unités de transaction de base de données (DTU) classées selon diverses options correspondant à des scénarios d'utilisation différents.

Dans Azure, vous utilisez les éléments suivants :

  • une implémentation de proxy pour assurer une connexion sécurisée à votre base de données ;
  • un équilibreur de charge HTTP pour maintenir la disponibilité de la base de données pour votre application.

Vous pouvez utiliser différentes méthodes pour connecter des applications que vous avez déployées précédemment. En voici quelques-unes :

  • Chaînes de connexion
  • Intégration de services d'application Web
  • Connexion à Cloud SQL à l'aide d'adresses IP privées

À présent, vous allez découvrir comment vous pouvez utiliser les fonctionnalités de Cloud SQL pour créer et connecter de manière sécurisée une base de données à une application.

Présentation

Dans cet atelier, vous allez apprendre à configurer un serveur Cloud SQL et découvrir comment connecter une application au serveur via un proxy, par le biais d'une connexion externe. Vous allez aussi apprendre à configurer une connexion via un lien d'adresse IP privée offrant des avantages en termes de performances et de sécurité. L'application que nous avons choisie à titre de démonstration dans cet atelier est WordPress, mais les informations et les bonnes pratiques sont applicables à toutes les applications nécessitant SQL Server.

À la fin de cet atelier, vous aurez deux instances de travail de l'interface WordPress connectées sur deux types de connexion différents à leur backend d'instance SQL, comme indiqué dans le schéma suivant :

Schéma de l'atelier sur SQL

Objectifs

Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :

  • Créer une base de données Cloud SQL
  • Configurer une machine virtuelle pour exécuter un proxy
  • Créer une connexion entre une application et Cloud SQL
  • Connecter une application à Cloud SQL à l'aide d'une adresse IP privée

Prérequis

Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.

  1. Connectez-vous à Qwiklabs dans une fenêtre de navigation privée.

  2. Vérifiez le temps imparti pour l'atelier (par exemple : 01:15:00) : vous devez pouvoir le terminer dans ce délai.
    Une fois l'atelier lancé, vous ne pouvez pas le mettre en pause. Si nécessaire, vous pourrez le redémarrer, mais vous devrez tout reprendre depuis le début.

  3. Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.

  4. Notez vos identifiants pour l'atelier (Nom d'utilisateur et Mot de passe). Ils vous serviront à vous connecter à Google Cloud Console.

  5. Cliquez sur Ouvrir la console Google.

  6. Cliquez sur Utiliser un autre compte, puis copiez-collez les identifiants de cet atelier lorsque vous y êtes invité.
    Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.

  7. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.

Tâche 1 : Créer une base de données Cloud SQL

Dans cette tâche, vous allez configurer un serveur SQL en respectant les bonnes pratiques Google Cloud et créer une connexion IP privée.

  1. Dans le menu de navigation (Icône du menu de navigation), cliquez sur SQL.
  2. Cliquez sur Créer une instance.
  3. Cliquez sur Choisir MySQL.
  4. Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
Propriété Valeur
ID d'instance wordpress-db
Mot de passe racine saisir un mot de passe
Région
Zone Tout
Version de la base de données MySQL 5.7
Remarque : Notez le mot de passe racine. Dans la suite de cet atelier, il sera désigné sous le nom [ROOT_PASSWORD].
  1. Développez la section Afficher les options de configuration.

  2. Développez la section Type de machine.

  3. Provisionnez la quantité adéquate de vCPU et de mémoire. Pour choisir un type de machine, cliquez sur le menu déroulant, puis explorez vos options.

Remarque : Voici quelques points à retenir.

  • Les machines à cœur partagé sont efficaces pour le prototypage et ne sont pas couvertes par le contrat de niveau de service de Cloud SQL.
  • Chaque processeur virtuel est soumis à une limite de débit réseau de 250 Mo/s pour des performances optimales. Chaque cœur supplémentaire augmente la limite de débit réseau, jusqu'à un maximum théorique de 2 000 Mo/s.
  • Pour les charges de travail exigeant des performances élevées, telles que le traitement des transactions en ligne (OLTP), il convient généralement de s'assurer que votre instance dispose d'une mémoire suffisante pour contenir l'ensemble de travail complet et prendre en charge le nombre de connexions actives.
    1. Pour cet atelier, sélectionnez Standard dans le menu déroulant, puis 1 vCPU, 3,75 Go de mémoire.

    2. Développez ensuite la section Stockage, puis sélectionnez Type de stockage et Capacité de stockage.

    Remarque : Voici quelques points à retenir.

  • Un disque dur SSD constitue le meilleur choix dans la plupart des cas. Les disques durs HDD offrent des performances inférieures, mais les coûts de stockage sont considérablement réduits. Ils peuvent donc être privilégiés pour stocker des données qui n'ont pas besoin d'être souvent consultées et qui ne requièrent pas une latence très faible.
  • Il existe une relation directe entre la capacité de stockage et le débit.
    1. Cliquez sur chacune des options de capacité pour voir comment elle affecte le débit. Réinitialisez l'option à 10 Go.
    Remarque : Si vous réglez votre capacité de stockage à un niveau trop bas sans activer l'augmentation automatique du stockage, votre instance risque de sortir du cadre du contrat de niveau de service.
    1. Développez la section Connexions.

    2. Sélectionnez Adresse IP privée.

    3. Dans la liste déroulante Réseau, sélectionnez par défaut.

    4. Cliquez sur le bouton Configurer la connexion qui s'affiche.

    5. Dans le panneau de droite, cliquez sur Activer l'API, puis sur Utiliser une plage d'adresses IP automatiquement allouée. Cliquez ensuite sur Continuer, puis sur Créer une connexion.

    6. Cliquez sur Créer une instance en bas de la page pour créer l'instance de base de données.

    Remarque : Vous devrez peut-être attendre que les modifications d'adresse IP privée soient appliquées avant de pouvoir cliquer sur le bouton Créer.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Créer une instance Cloud SQL

    Tâche 2 : Configurer un proxy sur une machine virtuelle

    Si votre application ne se trouve pas dans la même région et sur le même réseau VPC que votre instance Cloud SQL, utilisez un proxy pour sécuriser sa connexion externe.

    Pour configurer le proxy, vous avez besoin du nom de connexion de l'instance Cloud SQL.

    Remarque : Cet atelier donne accès à deux machines virtuelles préconfigurées avec WordPress et ses dépendances. Vous pouvez voir le script de démarrage et l'accès au compte de service en cliquant sur le nom d'une machine virtuelle. Notez que nous avons utilisé le principe du moindre privilège et n'autorisons l'accès SQL que pour cette machine virtuelle. Une balise réseau et un pare-feu sont également préconfigurés pour ouvrir le port 80 à tous les hôtes.
    1. Dans le menu de navigation (Icône du menu de navigation), cliquez sur Compute Engine.

    2. Cliquez sur SSH à côté de wordpress-proxy.

    3. Téléchargez le proxy de Cloud SQL et rendez-le exécutable :

    wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy && chmod +x cloud_sql_proxy

    Pour démarrer le proxy, vous avez besoin du nom de connexion de l'instance Cloud SQL. Gardez votre fenêtre SSH ouverte et retournez dans la console Cloud.

    1. Dans le menu de navigation (Icône du menu de navigation), cliquez sur SQL.

    2. Cliquez sur l'instance wordpress-db et attendez qu'une coche verte à côté de son nom indique qu'elle est opérationnelle (cela peut prendre quelques minutes).

    3. Notez le nom de connexion de l'instance ; il sera utilisé plus tard et désigné par l'expression [SQL_CONNECTION_NAME].

    4. En outre, pour que l'application fonctionne, vous devez créer une table. Cliquez sur Bases de données.

    5. Cliquez sur Créer une base de données, tapez wordpress, qui est le nom attendu par l'application, puis cliquez sur Créer.

    6. Revenez à la fenêtre SSH et enregistrez le nom de la connexion dans une variable d'environnement, en remplaçant [SQL_CONNECTION_NAME] par le nom unique que vous avez copié lors d'une étape précédente :

    export SQL_CONNECTION=[SQL_CONNECTION_NAME]
    1. Pour vérifier que la variable d'environnement est bien configurée, exécutez la commande suivante :
    echo $SQL_CONNECTION

    Le nom de la connexion doit être affiché.

    1. Pour activer la connexion du proxy à votre base de données Cloud SQL et envoyer le processus en arrière-plan, exécutez la commande suivante :
    ./cloud_sql_proxy -instances=$SQL_CONNECTION=tcp:3306 &

    Le résultat attendu est :

    Listening on 127.0.0.1:3306 for [SQL_CONNECTION_NAME] Ready for new connections
    1. Appuyez sur Entrée.
    Remarque : Le proxy écoutera sur 127.0.0.1:3306 (localhost) et se connectera de manière sécurisée à votre Cloud SQL via un tunnel sécurisé utilisant l'adresse IP externe de la machine.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Créer une base de données et configurer un proxy sur une machine virtuelle

    Tâche 3 : Connecter une application à l'instance Cloud SQL

    Dans cette tâche, vous connecterez un exemple d'application à l'instance Cloud SQL.

    1. Configurez l'application WordPress. Pour trouver l'adresse IP externe de votre machine virtuelle, interrogez ses métadonnées :
    curl -H "Metadata-Flavor: Google" http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip && echo
    1. Accédez à l'adresse IP externe wordpress-proxy dans votre navigateur et configurez l'application WordPress.

    2. Cliquez sur Let's Go (C'est parti).

    3. Spécifiez les paramètres suivants, en remplaçant [ROOT_PASSWORD] par le mot de passe que vous avez configuré lors de la création de la machine, et conservez les valeurs par défaut des autres paramètres :

    Propriété Value (Valeur)
    Username (Nom d'utilisateur) root
    Password (Mot de passe) [ROOT_PASSWORD]
    Database Host (Hôte de base de données) 127.0.0.1
    Remarque : Vous utilisez 127.0.0.1 (localhost) comme adresse IP de la base de données, car le proxy que vous avez mis en place écoute sur cette adresse et redirige ce trafic vers votre serveur SQL de manière sécurisée.
    1. Cliquez sur Envoyer.

    2. Lorsqu'une connexion a été établie, cliquez sur Run the installation (Exécuter l'installation) pour instancier WordPress et sa base de données dans votre Cloud SQL. Cela peut prendre un moment.

    3. Complétez les informations de votre site de démonstration avec des valeurs aléatoires et cliquez sur Install WordPress (Installer WordPress). Vous n'aurez pas besoin de vous souvenir de ces informations ni de les utiliser.

    Remarque : L'installation de WordPress peut prendre jusqu'à trois minutes, car il propage toutes ses données à votre serveur SQL.
    1. Lorsqu'une fenêtre confirme que tout a bien fonctionné, supprimez le texte situé après l'adresse IP dans la barre d'adresse de votre navigateur Web et appuyez sur Entrée.
      Vous verrez apparaître un blog WordPress fonctionnel.

    Tâche 4 : Se connecter à Cloud SQL via une adresse IP interne

    Si vous pouvez héberger votre application dans la même région et sur le même réseau VPC que votre Cloud SQL, vous pouvez utiliser une configuration plus sécurisée et plus performante en vous servant d'une adresse IP privée.

    En utilisant une adresse IP privée, vous augmentez les performances en réduisant la latence et en limitant la surface d'attaque de votre instance Cloud SQL, car vous pouvez communiquer avec elle exclusivement via des adresses IP internes.

    1. Dans la console Cloud, accédez au menu de navigation (Icône du menu de navigation), puis cliquez sur SQL.
    2. Cliquez sur wordpress-db.
    3. Notez l'adresse IP privée du serveur Cloud SQL ; elle sera désignée par l'expression [SQL_PRIVATE_IP].
    4. Dans le menu de navigation, cliquez sur Compute Engine.
    Remarque : Notez que wordpress-private-ip est situé dans us-central1, où se trouve votre Cloud SQL, ce qui vous permet de bénéficier d'une connexion plus sécurisée.
    1. Copiez l'adresse IP externe de wordpress-private-ip, collez-la dans une fenêtre de navigateur et appuyez sur Entrée.

    2. Cliquez sur Let's Go (C'est parti).

    3. Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Value (Valeur)
    Username (Nom d'utilisateur) root
    Password (Mot de passe) saisissez le mot de passe [ROOT_PASSWORD] configuré lors de la création de l'instance Cloud SQL
    Database Host (Hôte de base de données) [SQL_PRIVATE_IP]
    1. Cliquez sur Submit (Envoyer).
    Remarque : Notez que cette fois, vous créez une connexion directe à une adresse IP privée ; vous ne configurez pas un proxy. Cette connexion est privée, ce qui signifie qu'elle ne sort pas vers Internet : les performances et la sécurité sont donc meilleures.
    1. Cliquez sur Run the installation (Exécuter l'installation).
      Une fenêtre indiquant que l'application est déjà installée s'affiche, ce qui signifie qu'elle est connectée au serveur Cloud SQL par une adresse IP privée.

    2. Dans la barre d'adresse de votre navigateur Web, supprimez le texte situé après l'adresse IP et appuyez sur Entrée.
      Vous verrez apparaître un blog WordPress fonctionnel.

    Tâche 5 : Récapitulatif

    Dans cet atelier, vous avez créé une base de données Cloud SQL et l'avez configurée pour utiliser à la fois une connexion externe via un proxy sécurisé et une adresse IP privée, qui est plus sûre et performante. Rappelez-vous que vous ne pouvez vous connecter à l'aide d'une adresse IP privée que si l'application et le serveur Cloud SQL sont situés dans la même région et font partie du même réseau VPC. Si votre application est hébergée dans une région, un VPC ou même un projet différent, utilisez un proxy pour sécuriser sa connexion externe.

    Maintenant que vous savez comment créer et configurer une base de données dans Cloud SQL, examinons certaines similitudes et différences entre Google Cloud SQL et Azure SQL.

    Similitudes :

    • Azure et Google Cloud gèrent l'infrastructure de la base de données de façon à inclure les instances, les sauvegardes, les mises à jour et le basculement.
    • Cloud SQL et Azure SQL déploient tous deux un proxy afin de recevoir des connexions sécurisées provenant de l'extérieur de votre VPC.
    • Les deux services créent une connexion à l'aide d'une chaîne de connexion.
    • Les deux services peuvent utiliser une adresse IP interne afin d'établir une connexion directe entre une application et une instance de serveur SQL s'ils figurent dans la même région et font partie du même réseau VPC. L'utilisation exclusive d'adresses IP internes vous permet d'améliorer la sécurité, car aucune connexion publique n'est alors autorisée.

    Différences :

    • Les spécifications pour la création d'un serveur SQL sont conçues de façon différente pour Google Cloud et Azure. Dans Azure, vous avez le choix entre différentes catégories, unités de transaction de base de données (DTU) et capacités de stockage. Dans Google Cloud, vous spécifiez directement le nombre de CPU et la capacité de stockage nécessaires.
    • Google Cloud dispose d'un mécanisme intégré d'authentification de base de données (utilisateur-mot de passe) et vous permet d'implémenter un proxy d'authentification Cloud SQL ainsi que des bibliothèques de connecteurs afin de fournir un accès basé sur IAM. Dans Azure, par contre, vous pouvez utiliser des stratégies pour définir comment les requêtes vont être acceptées. Pour le traitement des requêtes, vous avez également le choix d'utiliser soit une méthode de redirection (option par défaut), soit une stratégie de connexion au proxy. L'authentification Azure Active Directory est également prise en charge.
    • Dans Google Cloud, vous avez le choix entre deux options principales pour vous connecter à l'instance à l'aide de Cloud SQL :
      • Proxy d'authentification Cloud SQL : un tunnel sécurisé qui ne nécessite pas de réseau autorisé ni de chiffrement SSL. L'authentification et l'autorisation se font par le biais de stratégies Identity and Access Management (IAM) et du protocole OAuth 2.0.
      • Adresse IP privée : une connexion privée entre votre réseau VPC et le réseau VPC sous-jacent du producteur de services Google.

    Terminer l'atelier

    Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.

    Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.

    Le nombre d'étoiles correspond à votre degré de satisfaction :

    • 1 étoile = très insatisfait(e)
    • 2 étoiles = insatisfait(e)
    • 3 étoiles = ni insatisfait(e), ni satisfait(e)
    • 4 étoiles = satisfait(e)
    • 5 étoiles = très satisfait(e)

    Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.

    Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.

    Copyright 2020 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

    This content is not currently available

    We will notify you via email, when it becomes available

    Great!

    We will contact you via email, if it becomes available