Préparer un serveur sur Google Cloud
Ce guide prépare une VM Compute Engine pour Bring Your Own Server, avec son pare-feu, son IP fixe et son stockage de sauvegarde. Skysize installe tout le reste sur le serveur.
Chaque étape comporte deux onglets : cliquez dans Console, ou collez depuis Ligne de commande. Votre choix s'applique à toute la page.
Les commandes s'exécutent dans Cloud Shell, l'icône de terminal en haut de la console Google Cloud : vous n'avez ainsi rien à installer. Sélectionnez d'abord votre projet et gardez le même onglet ouvert, car chaque bloc réutilise les valeurs de l'étape 1.
1. Choisir vos valeurs
Choisissez la zone la plus proche de vos utilisateurs, et la taille adaptée à votre usage.
| Usage | Type de machine | vCPU | RAM | Disque |
|---|---|---|---|---|
| Une branche de production et une de staging | e2-standard-2 | 2 | 8 GB | 100 GB |
| Production avec des branches de staging et de développement | e2-standard-4 | 4 | 16 GB | 200 GB |
Évitez les séries Arm T2A, C4A et N4A : l'installateur refuse de s'y exécuter.
- Console
- Ligne de commande
Sélectionnez votre projet en haut de la console Google Cloud. Utilisez la même région à chaque étape.
ZONE=us-central1-a
NAME=skysize-odoo
TYPE=e2-standard-2
DISK_GB=100
PROJECT=$(gcloud config get-value project)
REGION=${ZONE%-*}
BUCKET=$NAME-backups-$PROJECT
2. Ajouter la règle de pare-feu
Le serveur a besoin de ces ports entrants, et d'aucun autre :
| Protocole | Port | Source | Pourquoi |
|---|---|---|---|
| TCP | 80 | Toute adresse (0.0.0.0/0) | Certificats et redirections |
| TCP | 443 | Toute adresse (0.0.0.0/0) | Vos sites Odoo |
Skysize n'a besoin d'aucun port entrant qui lui soit propre. SSH est déjà autorisé par la règle default-allow-ssh du réseau par défaut. Laissez PostgreSQL (5432) fermé sauf si vous utilisez l'accès à la base de données en lecture seule. Le trafic sortant est autorisé par défaut, et le serveur en a besoin.
- Console
- Ligne de commande
- Ouvrez VPC network → Firewall → Create firewall rule.
- Donnez au nom la valeur
skysize-odoo-web. - Réglez Targets sur Specified target tags, et Target tags sur
skysize-odoo-web. - Réglez Source IPv4 ranges sur
0.0.0.0/0. - Sous Protocols and ports, cochez TCP et saisissez
80,443. - Cliquez sur Create.
gcloud compute firewall-rules create "$NAME-web" \
--allow tcp:80,tcp:443 --source-ranges 0.0.0.0/0 --target-tags "$NAME-web"
3. Créer le bucket de sauvegarde et l'identité du serveur
Skysize n'effectue aucune sauvegarde tant qu'un projet n'a pas de cible de sauvegarde. Cette étape crée un bucket privé et un compte de service qui permet au serveur de l'utiliser, sans aucune clé à stocker.
- Console
- Ligne de commande
Compte de service
- Ouvrez IAM & Admin → Service Accounts → Create service account.
- Donnez au nom la valeur
skysize-odoo, et cliquez sur Done. - Copiez son adresse email.
Bucket
- Ouvrez Cloud Storage → Buckets → Create.
- Saisissez un nom unique sur l'ensemble de Google Cloud, par exemple
skysize-odoo-backups-suivi de l'ID de votre projet. - Choisissez votre région, conservez le contrôle d'accès uniforme et laissez la prévention de l'accès public activée. Cliquez sur Create.
- Dans l'onglet Permissions du bucket, cliquez sur Grant access.
- Collez l'adresse email du compte de service, choisissez le rôle Storage Object Admin, et cliquez sur Save.
gcloud storage buckets create "gs://$BUCKET" --location "$REGION" \
--uniform-bucket-level-access --public-access-prevention
gcloud iam service-accounts create "$NAME"
SA="$NAME@$PROJECT.iam.gserviceaccount.com"
sleep 15
gcloud storage buckets add-iam-policy-binding "gs://$BUCKET" \
--member "serviceAccount:$SA" --role roles/storage.objectAdmin
Le sleep laisse à Google Cloud le temps de rendre le nouveau compte disponible.
4. Créer la VM avec une IP fixe
Utilisez Ubuntu 24.04 pour x86, et une IP statique pour que vos enregistrements DNS continuent de fonctionner si la VM s'arrête. Notez cette IP : vos enregistrements DNS pointeront vers elle.
- Console
- Ligne de commande
Ouvrez Compute Engine → VM instances → Create instance, et définissez :
| Paramètre | Valeur |
|---|---|
| Name | skysize-odoo |
| Region and Zone | Les vôtres |
| Machine type | Le type de l'étape 1 |
| OS and storage | Ubuntu, Ubuntu 24.04 LTS, la version x86/64. Balanced persistent disk, avec la taille de l'étape 1. |
| Networking → Network tags | skysize-odoo-web |
| Networking → Network interface → External IPv4 address | Reserve a new static address |
| Security → Service account | skysize-odoo |
| Security → Access scopes | Allow full access to all Cloud APIs |
Cliquez ensuite sur Create.
gcloud compute addresses create "$NAME" --region "$REGION"
gcloud compute instances create "$NAME" \
--zone "$ZONE" \
--machine-type "$TYPE" \
--image-family ubuntu-2404-lts-amd64 --image-project ubuntu-os-cloud \
--boot-disk-size "${DISK_GB}GB" --boot-disk-type pd-balanced \
--address "$NAME" \
--tags "$NAME-web" \
--service-account "$SA" --scopes cloud-platform
gcloud compute addresses describe "$NAME" --region "$REGION" --format 'value(address)'
echo "Bucket: $BUCKET"
5. Se connecter au serveur
C'est ici que vous collez la commande d'installation de Skysize.
- Console
- Ligne de commande
Cliquez sur SSH à côté de la VM dans la liste des instances de VM. Un terminal s'ouvre dans votre navigateur.
gcloud compute ssh "$NAME" --zone "$ZONE"
6. Définir la cible de sauvegarde
Une fois votre projet créé, ouvrez ses Paramètres → Cible de sauvegarde, cliquez sur Ajouter une cible et renseignez :
| Champ | Valeur |
|---|---|
| Type | Google Cloud Storage |
| Bucket | Le nom de votre bucket |
| Préfixe | Le nom du projet |
| Identifiants | Par défaut du serveur |
Cliquez sur Tester pour la vérifier depuis votre serveur.
Envoyer des emails depuis Odoo
Google Cloud bloque par défaut le port 25 sortant. Utilisez un relais SMTP sur le port 587. Voir Configurer l'email sortant.
Connecter le serveur à Skysize
Votre serveur est prêt. Suivez Configurer votre propre serveur, à partir de l'étape d'enregistrement du serveur. En bref : enregistrez-le dans le tableau de bord, connectez-vous-y en SSH et collez la commande d'installation. Le statut passe à En ligne moins d'une minute après la fin de l'installateur.
Une fois votre premier projet lancé, ajoutez votre domaine.
En cas de problème
Le tableau de bord indique que les ports 80 et 443 ne sont pas joignables. Vérifiez les règles de pare-feu ci-dessus, et que l'IP publique indiquée dans les paramètres du serveur est bien celle que vous avez notée. Cliquez ensuite sur Vérifier à nouveau.
Le serveur reste Hors ligne. Le serveur se connecte en sortie à Skysize, aucune règle entrante ne résout donc ce problème. Exécutez ces commandes sur le serveur :
sudo systemctl status skysize-agent
sudo journalctl -u skysize-agent -n 50
nc -zv cp.skysize.io 50051
Si l'installateur ne s'est pas terminé, ou si le jeton d'enrôlement a déjà été utilisé, utilisez Régénérer le jeton d'enrôlement sur la page du serveur et relancez la commande d'installation.
Le problème persiste ? Ouvrez Assistance dans le tableau de bord et joignez la sortie de ces commandes.