Service de gestion
des Feature Flags
en open source
Innovate Your Software Faster without Risk
Déployer un service de gestion de feature flags sur Azure en utilisant Terraform
Cet article a été écrit par LifeCycle. Pour plus d'informations, consultez la version anglaise.
FeatBit est un service open-source de feature flags qui permet aux équipes de tester leurs applications en production, de déployer des fonctionnalités de manière incrémentielle et de revenir en arrière instantanément si un problème survient.
Ce guide décrit comment déployer FeatBit sur Azure à l'aide de Terraform. Au lieu du blog, vous pouvez visiter notre dépôt GitHub directement pour commencer votre parcours d'installation. Ce dépôt GitHub contient le code Terraform pour le déploiement de FeatBit sur Azure.
Comme le montre la figure ci-dessus, les services de FeatBit sont déployés en tant qu'Azure Container Apps (ACA) dans Azure. Tels que le portail UI de FeatBit, le serveur API de FeatBit, le serveur d'évaluation de FeatBit, le serveur DA de FeatBit. Le service d'évaluation et le service API communiquent avec le service DA à l'intérieur d'ACA.
Note : ACA est en réalité un cluster Kubernetes géré. Vous pouvez trouver plus d'informations sur ACA dans le document officiel des Azure Container Apps. Tous les services sont situés dans un VNet Azure, nous utilisons un endpoint privé et une zone DNS privée pour sécuriser l'accès à Azure Cache pour Redis et Azure CosmosDB pour MongoDB. Vous pouvez trouver plus d'informations sur l'endpoint privé et la zone DNS privée dans le document officiel d'Azure.
Le portail UI de FeatBit, le serveur API et le serveur d'évaluation sont exposés à l'internet public via un Azure Load Balancer et des adresses IP Azure. Vous pouvez trouver plus d'informations sur l'Azure Load Balancer dans le document officiel d'Azure.
Télécharger le code Terraform
Téléchargez le code source Terraform depuis le dépôt GitHub
Premiers pas avec le fournisseur Terraform pour Azure
Si vous n'êtes pas familier avec le fournisseur Terraform pour Azure, vous pouvez suivre les étapes dans le tutoriel officiel du fournisseur Azure.
Déployer FeatBit sur votre Azure
Exécutez terraform init
pour télécharger les providers requis
terraform init
Exécutez terraform plan
pour voir ce qui sera déployé
terraform plan
Exécutez terraform apply
pour déployer FeatBit sur votre Azure
terraform apply
Avant d'appliquer le déploiement Terraform, vous pouvez modifier les variables définies dans les fichiers variables.tf
pour personnaliser votre déploiement. Par exemple, vous pouvez :
- Changer le nom du groupe de ressources en modifiant la valeur de la variable
resource_group_name
dans le fichiervariables.tf
du répertoireterraform
. - Changer le nom de l'emplacement des ressources en modifiant la valeur de la variable
location
dans le fichiervariables.tf
du répertoireterraform
. - Changer la configuration de Redis en modifiant la valeur de la variable
redis
dans le fichiervariables.tf
du répertoireterraform
.
Pour changer le CPU, la mémoire et le nombre de répliques de chaque application conteneur, vous devez actuellement éditer directement dans le fichier main.tf
du répertoire terraform/aca
. Nous ajouterons ces variables à l'avenir pour faciliter l'installation.
Support
Le code Terraform concerne actuellement uniquement la version FeatBit Standard. Cliquez ici pour voir la différence entre la version Standard et la version Pro
Pour toute question, vous pouvez nous contacter en créant une issue, en rejoignant notre canal Slack, ou en nous envoyant un e-mail à support@featbit.co.