Google Cloud from Scratch - Commencer par la base

Cet article fait partie d’une série autour du thème "Google Cloud from scratch".

Au fil du temps et des discussions, je me suis aperçu que beaucoup de gens connaissent le Cloud en général et en particulier AWS. La plateforme Google Cloud a, elle aussi, beaucoup d’avantages mais elle reste peu utilisée en France.

Étant persuadé qu’il s’agit d’une méconnaissance, j’ai décidé de vous proposer un parcours de découverte. Beaucoup d’annonces sortent régulièrement autour des capacités fantastiques du cloud, des infrastructures Big Data au Machine Learning en passant par l’orchestration de conteneurs automatisée. Auparavant, il est important de commencer par la base : la création du compte et des paramètres généraux.

Google Cloud c’est quoi ?

Théoriquement, si vous arrivez ici c’est que vous avez déjà une vague idée de ce qu’est Google Cloud, néanmoins un rappel ne fait jamais de mal !

Google Cloud est une plateforme de Cloud Computing opérée par Google et disponible sur toute la planète. La plateforme fournit des services pour opérer une infrastructure entièrement gérée et de tout type : Calcul, Réseau, Conteneurs, Big Data, Machine Learning, et bien d’autres.

Les services offerts sont équivalents à ceux d’Amazon Web Services et ceux de Microsoft Azure. Des dizaines de comparatifs existent quant aux services offerts, au-delà du fait que ces articles sont tous obsolètes au bout de quelques jours, ce n’est pas l’objet de celui-ci !

Créons notre environnement GCloud

Les fondations sont posées, nous pouvons maintenant entrer dans le vif du sujet et pour cela nous allons créer notre environnement d'exécution Google Cloud.

Notre objectif est de créer un nouveau compte, définir un projet, régler les permissions, et enfin lancer un serveur de test pour s’assurer que tout fonctionne.
L’opération ne devrait pas prendre plus de quelques dizaines de minutes au total, plutôt cool non ?

Création du compte

Il existe plusieurs méthodes pour créer un compte Google Cloud Platform (GCP) :

La solution la plus simple pour débuter est d'utiliser votre compte Gmail.
Si vous êtes une entreprise utilisant déjà GSuite, alors je vous conseille d’intégrer Google Cloud directement, votre gestion n’en sera que plus facilitée.
À propos de Cloud Identity : il s’agit d’un service permettant d’ouvrir l’accès aux services Google aux comptes externes. Par exemple, imaginons que vous ayez des développeurs externes sans comptes Google ayant besoin d’accéder à l’un de vos projets Google Cloud. Il est possible à l’aide Cloud Identity de connecter cette identité externe à une identité gérée par Google dans ses différents services.

Les deux dernières solutions nécessitent de passer par le support commercial si vous n’êtes pas encore client, nous allons donc suivre la solution utilisant Gmail. Quel que soit votre choix, le résultat sera le même, nous disposerons d’un compte racine pour construire nos différents projets dans Google Cloud :

project-in-orga

Pour revenir à notre compte Gmail, nous pouvons nous inscrire sur Google Cloud en allant simplement sur la page SignUp.
Plusieurs informations vous seront demandées, et notamment les informations de facturation. Il s’agit simplement de s’assurer que vous avez la possibilité d’être facturé au cas où vous consommeriez des ressources payantes. Après avoir rempli tous les champs, vous accéderez enfin à la page d’accueil de la console Google Cloud !

Ajout d’un projet

Vous voilà sur la page d’accueil de Google Cloud, la prochaine étape est de créer un projet. Dans l’écosystème Google Cloud, un projet est un unité logique de regroupement des ressources.
Suivez les instructions dans l’interface ou allez directement sur ce lien.

create-project

Chaque projet doit avoir un identifiant unique pour tout Google Cloud, il ne pourra plus être modifié par la suite.
Attention au placement de votre projet, si vous utilisez une organisation GSuite le projet peut être lié à l’organisation ou en être séparé.

Vérification de la facturation

Lors de la création de votre projet, il vous sera suggéré de le lier à un compte de facturation. Chaque projet peut être facturé indépendamment c’est vous qui choisissez. Vous pouvez vérifier les comptes de facturation directement sur la page facturation.

En tant que nouvel utilisateur, un crédit vous est offert, nous reparlerons plus tard de toutes les possibilités liées à la facturation et comment gérer au mieux ses coûts.

Réglage des permissions

Notre projet existe, la facturation est en place, il nous faut vérifier les permissions avant d’aller plus loin.
Lors de la création du projet, vous avez été promu automatiquement “Propriétaire”, ce rôle vous donne les droits les plus étendus sur tous les éléments du projets. Les rôles primitifs au niveau projet sont “Propriétaire”, “Editeur”, “Lecteur”, et “Explorateur”, cependant afin de correspondre à tous vos besoins il y a beaucoup d’autres rôles disponibles.

Le rôle défini suffira amplement pour notre usage, mais n'hésitez pas à en rajouter pour vos collègues et amis afin de leur donner accès à ce projet.

iam-permissions

Vous pouvez ajouter ou retirer des rôles depuis la page de gestion IAM de votre projet.

Lancement d’une Machine Virtuelle

Tout est en place, nous pouvons instancier une machine virtuelle et vérifier qu’elle fonctionne correctement.

Pour cela, dans la console allez dans la section “Compute”, puis créez une machine virtuelle.
Plusieurs personnalisations sont possibles, nous allons justement modifier quelques éléments :

  • Type d'instance : f1-micro
  • Zones : choisissez une zone US (sauf us-east4)
  • Image de démarrage : CentOS 7
  • Firewall : autoriser HTTP entrant

Le type et la région ont une importance quant à la facturation. La combinaison que je vous propose n’entraînera pas de facturation, je vous expliquerai tout ça dans un prochain article !

create-vm

Nous allons également ajouter des instructions de configuration pour le démarrage de notre machine. Déroulez le menu “Gestion, Disques, Réseau, SSH” et ajoutez le bloc suivant en tant que script de démarrage :

#!/bin/bash
yum install -y httpd
systemctl start httpd
echo "Hello GCP" > /var/www/html/index.html

Vous pouvez maintenant démarrer la machine virtuelle !
Au bout de quelques minutes elle apparaîtra comme prête et vous pourrez aller vérifier dans un navigateur web, en cliquant sur le lien de l’adresse IP externe de votre machine virtuelle, si le message “Hello GCP” que nous avons inséré est bien visible.

running-vm

N’oubliez pas de supprimer la machine virtuelle une fois que vous avez terminé, même si elle n’est pas facturée mieux vaut prendre de bonnes habitudes dès maintenant.

Conclusion

Nous en avons terminé avec la base de notre installation Google Cloud ! Félicitations, vous avez un compte GCP actif et fonctionnel.
Étant un fervent défenseur de l'infrastructure as code, je vous proposerai systématiquement le code Terraform et/ou DeploymentManager associé, sur ce dépôt https://github.com/bcadiot/gcp-from-scratch.

À très vite pour la suite de notre découverte de Google Cloud, nous parlerons réseau !

Et la saga continue...

A lire et à relire, les articles de la saga "Google Cloud From Scratch".

-Episode 1 : "Commencer par la base"
-Episode 2 : "Parlons Réseau"

Bastien Cadiot

Spécialisé en OpenSource et GoogleDevExpert Cloud, Bastien est passionné par la conception de systèmes évolutifs. Il pense que chaque besoin est unique et cherche des solutions toujours adaptées.