Terraform est une infrastructure en tant que plate-forme de code développée par HashiCorp. Vous pouvez simplement écrire du code dans un format lisible par l'homme en suivant HashiCorp Configuration Language (HCL) et le déployer pour obtenir l'infrastructure dans le cloud. Terraform est pris en charge par de nombreux fournisseurs de cloud comme Google, Amazon, Alibaba, etc.
Ici, dans cet article, nous allons installer la dernière version de terraform sur Ubuntu. Nous effectuons l'installation de terraform sur Ubuntu 20.04, mais vous pouvez effectuer la même procédure sur toutes les plates-formes Linux.
Découvrez également comment utiliser terraform avec un exemple simple en lançant une instance ec2 et en créant un compartiment s3.
Installer Terraform sur Ubuntu 20.04
Téléchargez la dernière version de Terrafrom. Au moment de la rédaction de l'article, la dernière version est la 0.14.3 .
$ wget https://releases.hashicorp.com/terraform/0.14.3/terraform_0.14.3_linux_amd64.zip
Maintenant, décompressez le fichier de téléchargement.
$ sudo apt install zip -y
$ sudo unzip terraform_0.14.3_linux_amd64.zip
Cela vous affichera un fichier terraform, déplacez-le simplement vers /usr/local/bin/ pour exécuter la commande.
$ sudo mv terraform /usr/local/bin/
Vérifier la version
$ terraform version
Comment utiliser Terraform
Expliquons comment utiliser terraform avec des exemples de base.
Lancement de l'instance ec2 et création d'un compartiment s3
Je voudrais créer un dossier et faire tout ce qu'il contient.
$ mkdir aws && cd aws
Créer un fichier de configuration pour terraform ayant l'extension 'tf'
vi configuration.tf
Vous devez maintenant fournir les informations suivantes :
- Fournisseur :fournisseur de cloud, AWS dans notre cas
- Accès, clé secrète :accès aux ressources AWS
- Région :région dans laquelle vous allez provisionner votre infrastructure. Je le fais dans l'Oregon.
Dans le deuxième bloc du code, définissez l'instance AWS, c'est-à-dire ami (vérifiez Amazon EC2 AMI Locator), le type d'instance et la balise.
La dernière partie du code suivant créera un compartiment s3 nommé « bucket-launched-using-terrafrom-20210106 ». N'oubliez pas que le nom du compartiment doit être unique sur AWS.
Copiez le contenu suivant dans le fichier configuration.tf. Fournissez un accès, une clé secrète, une région et un nom de compartiment qui vous sont propres.
#Define keys and region
provider "aws" {
access_key = "YOUR-ACCESS-KEY"
secret_key = "YOUR-SECRET-KEY"
region = "us-west-2"
}
#Define ec2 instance
resource "aws_instance" "instance1" {
ami = "ami-089668cd321f3cf82"
instance_type = "t2.micro"
tags = {
Name = "ubuntu-20.04"
}
}
#Define s3 bucket
resource "aws_s3_bucket" "bucket1" {
bucket = "bucket-launched-using-terrafrom-20210106"
acl = "private" # or can be "public-read"
tags = {
Name = "Bucket"
Environment = "Production"
}
}
Maintenant, initialisez, planifiez et exécutez votre code. Initialisation de terraform fera la configuration nécessaire, la planification est comme vous voyez ce qui se passera dans la réalité. Il trouvera également votre erreur de syntaxe. Et, enfin, appliquer signifie que vous allez déployer le code dans le cloud. Exécutons la commande suivante une par une.
L'initialisation de terraform effectuera la configuration nécessaire. Donc, exécutez la commande suivante,
$ terraform init
La planification est comme vous voyez ce qui se passera dans la réalité. Il découvrira également votre erreur de syntaxe.
$ terraform plan
Postuler signifie que vous allez déployer le code dans le cloud. Faites-le simplement en exécutant la commande,
$ terraform apply
Il vous demandera une confirmation. Tapez simplement "oui" et appuyez sur Entrée. En quelques secondes, votre infrastructure sera prête.
Vous pouvez maintenant vous connecter à la console AWS et accéder au service ec2. Vous constaterez qu'ec2 est lancé.
De même, accédez à s3 et recherchez votre compartiment.
Détruire l'infrastructure
Si vous voulez détruire l'infrastructure ci-dessus, vous pouvez simplement taper "terraform destroy".
$ terraform destroy
Il vous demande la confirmation, dites simplement "oui" et appuyez sur Entrée. L'instance ec2 et le compartiment s3 que vous créez ci-dessus doivent être supprimés de votre compte AWS. Vous pouvez vérifier en vous connectant à la console AWS.
Supprimer terraform
Si vous souhaitez supprimer terraform vous pouvez simplement supprimer le fichier 'terraform' conservé dans /usr/local/bin/
$ sudo rm -f /usr/local/bin/terraform
De plus, vous pouvez nettoyer votre répertoire où vous avez initialisé terraform. Dans notre cas, nous pouvons supprimer tout le contenu du dossier 'aws'.
Lecture connexe :
- Comment télécharger des fichiers sur S3 à l'aide de Terraform
- Provisionner l'instance cloud AWS EC2
Conclusion
Cet article vous a simplement guidé pour installer terraform, lancer l'instance ec2 et créer un compartiment s3 en l'utilisant. Nous vous avons également montré comment détruire votre infrastructure créée à partir de terraform.