Déployer sur Google Cloud
Video Tutorial
Découvrez comment déployer OpenReplay dans votre infrastructure GCP
Si vous n'aimez pas lire, vous pouvez suivre ce tutoriel vidéo qui vous montre comment déployer OpenReplay sur GCP
La pile OpenReplay peut être installée sur une seule machine et Google Cloud est un candidat idéal.
Lancer une VM
Section titled Lancer une VM- Allez dans le tableau de bord ‘Compute Engine’ et sélectionnez ‘VM Instances’ dans la barre de menu de gauche
- Cliquez sur ‘Create Instance’
- Sélectionnez vos ‘region’ et ‘zone’ préférées
- Choisissez votre type de machine. Les spécifications minimales sont
2 vCPUs, 8 GB of RAM, 50 GB of storage, sinon les services backend d’OpenReplay ne démarreront tout simplement pas. C’est pourquoi nous recommandons au moins len2-standard-2(ou un équivalent ; notez que lee2-standard-2est connu pour poser des problèmes lors du déploiement), ce qui suffit pour un volume faible/modéré. Si vous prévoyez un trafic élevé, vous devriez monter en gamme à partir de là. - Changez votre disque de démarrage en Ubuntu 20.04 LTS ou plus récent, puis choisissez SSD persistent disk comme type de disque de démarrage et définissez la taille à 50 GB.
- Cochez à la fois ‘Allow HTTP traffic’ et ‘Allow HTTPS traffic’ dans Firewall
- Cliquez sur ‘Create’
Déployer OpenReplay
Section titled Déployer OpenReplayUne fois que votre instance est Running, connectez-vous à celle-ci en cliquant sur le bouton SSH puis installez OpenReplay en fournissant le domaine sur lequel elle s’exécutera (par exemple DOMAIN_NAME=openreplay.mycompany.com) :
sudo wget https://raw.githubusercontent.com/openreplay/openreplay/main/scripts/helmcharts/openreplay-cli -O /bin/openreplay
sudo chmod +x /bin/openreplay
openreplay -i DOMAIN_NAME
Configurer TLS/SSL
Section titled Configurer TLS/SSLOpenReplay traite des données utilisateur sensibles et nécessite donc HTTPS pour fonctionner. C’est obligatoire, sinon le tracker ne commencerait tout simplement pas à enregistrer. Il en va de même pour le tableau de bord : sans HTTPS, vous ne pourrez pas rejouer les sessions des utilisateurs.
La façon la plus simple de gérer le SSL dans Google Cloud est de configurer un équilibreur de charge (Google Load Balancing) et d’exécuter OpenReplay derrière celui-ci. Une autre option consiste à générer ou à utiliser votre propre certificat SSL et à faire pointer votre sous-domaine (c’est-à-dire openreplay.mycompany.com) vers l’instance OpenReplay. Plus de détails sur les deux options ci-dessous.
Configurer l’équilibreur de charge Google (option 1)
Section titled Configurer l’équilibreur de charge Google (option 1)La première étape consiste à ajouter un groupe d’instances, qui sera nécessaire plus tard pour l’équilibreur de charge :
- Allez dans ‘Compute Engine’ > ‘Instance Groups’
- ‘Create Instance Group’ et sélectionnez New unmanaged instance group
- Choisissez votre ‘Location’ préférée, puis sélectionnez le ‘Network’ et choisissez l’instance de VM OpenReplay
- Cliquez sur ‘Create’
Il est maintenant temps de créer l’équilibreur de charge :
- Allez dans ‘Network Services’ > ‘Load Balancing’
- ‘Create Load Balancer’ et choisissez HTTP(S) Load Balancing
- Choisissez ‘From Internet to my VMs’ puis cliquez sur ‘Continue’
- Commencez par ‘Backend configuration’ et cliquez sur ‘Backend services’ > ‘Create a backend service’
- Sélectionnez Instance group pour ‘Backend type’. Dans ‘Backends’ > ‘New backend’, choisissez le groupe d’instances que vous avez créé précédemment, définissez le port sur
80puis cliquez sur ‘Done’. - Faites défiler jusqu’à ‘Health Check’ et ‘Create a health check’. Choisissez HTTP pour le ‘Protocol’, définissez le ‘Port’ sur
80puis changez le ‘Request path’ en/healthz. Conservez les autres valeurs par défaut, puis cliquez sur ‘Save’. - Cliquez sur ‘Create’
- Dans ‘Frontend configuration’, choisissez HTTPS pour ‘Protocol’ puis, dans ‘Certificate’, créez un nouveau certificat (géré par Google) ou apportez le vôtre. Cliquez sur ‘Done’.
- Vérifiez puis cliquez sur ‘Create’
Une fois créé, allez dans Cloud DNS (ou votre fournisseur de service DNS) et créez un A Record qui pointe vers l’équilibreur de charge en utilisant son IP (que vous trouverez dans le tableau de bord Load Balancing).
Enfin, activez le use-forwarded-headers en décommentant la ligne ci-dessous sous la section ingress-nginx, dans /var/lib/openreplay/vars.yaml :
ingress-nginx: &ingress-nginx
controller:
config:
use-forwarded-headers: true
Tout est maintenant prêt, OpenReplay devrait être accessible de manière sécurisée sur le sous-domaine que vous venez de configurer. Vous pouvez créer un compte en visitant la page /signup (c’est-à-dire openreplay.mycompany.com/signup).
Apporter/générer votre certificat SSL (option 2)
Section titled Apporter/générer votre certificat SSL (option 2)Comme alternative à la création d’un équilibreur de charge, vous pouvez apporter (ou générer) votre propre certificat SSL.
-
Tout d’abord, allez dans Cloud DNS (ou votre autre fournisseur de service DNS) et créez un
A Record. Utilisez le domaine que vous avez fourni précédemment lors de l’étape d’installation et faites-le pointer vers la VM en utilisant son IP publique (que vous trouverez dans le tableau de bord Compute Engine). -
Si vous apportez votre propre certificat, créez un secret SSL à l’aide de la commande suivante :
kubectl create secret tls openreplay-ssl -n app --key="private_key_file.pem" --cert="certificate.crt".
Remarque : Si vous n’avez pas de certificat, générez-en un, qui se renouvelle automatiquement, pour votre sous-domaine (celui fourni lors de l’installation) en utilisant Let’s Encrypt. Connectez-vous simplement à l’instance OpenReplay, exécutez
cd /var/lib/openreplay/openreplay/scripts/helmcharts && bash certmanager.shet suivez les étapes.
- Si vous souhaitez activer la redirection de http vers https (recommandé), décommentez le bloc ci-dessous, sous la section
ingress-nginx, dans/var/lib/openreplay/vars.yaml:
ingress-nginx: &ingress-nginx
controller:
config:
ssl-redirect: true
force-ssl-redirect: true
Il convient de mentionner que notre ingress-nginx s’exécute par défaut sur les ports 80|443, mais cela peut être facilement modifié, si nécessaire, dans vars.yaml :
ingress-nginx: &ingress-nginx
controller:
service:
ports:
http: 80
https: 443
- Enfin, réinstallez le NGINX d’OpenReplay :
openreplay -R
Tout est maintenant prêt, OpenReplay devrait être accessible sur votre sous-domaine. Vous pouvez créer un compte en visitant la page /signup (c’est-à-dire openreplay.mycompany.com/signup).
Vous avez des questions ?
Section titled Vous avez des questions ?Si vous rencontrez des problèmes, rejoignez notre Slack ou consultez notre Forum et obtenez de l’aide auprès de notre communauté.