Terraform je infrastruktura jako kódová platforma vyvinutá společností HashiCorp. Můžete jednoduše napsat kód ve formátu čitelném pro člověka podle HashiCorp Configuration Language (HCL) a nasadit jej, abyste získali infrastrukturu v cloudu. Terraform je podporován mnoha poskytovateli cloudu, jako je Google, Amazon, Alibaba atd.
Zde v tomto článku provedeme instalaci nejnovější verzi terraform na Ubuntu. Provádíme instalaci terraformu na Ubuntu 20.04, ale stejný postup můžete provést na všech platformách Linux.
Přečtěte si také, jak používat teraform na jednoduchém příkladu spuštěním instance ec2 a vytvořením bloku s3.
Nainstalujte terraform na Ubuntu 20.04
Stáhněte si nejnovější verzi Terrafrom. V době psaní článku je nejnovější verze 0.14.3.
$ wget https://releases.hashicorp.com/terraform/0.14.3/terraform_0.14.3_linux_amd64.zip
Nyní rozbalte stažený soubor.
$ sudo apt install zip -y
$ sudo unzip terraform_0.14.3_linux_amd64.zip
Tím získáte soubor terraform, stačí jej přesunout do /usr/local/bin/ a provést příkaz.
$ sudo mv terraform /usr/local/bin/
Zkontrolujte verzi
$ terraform version
Jak používat Terraform
Pojďme si vysvětlit, jak používat terraform na základních příkladech.
Spuštění instance ec2 a vytvoření bloku s3
Chtěl bych vytvořit složku a udělat v ní vše.
$ mkdir aws && cd aws
Vytvořte konfigurační soubor pro terraform s příponou 'tf'
vi configuration.tf
Nyní musíte zadat následující informace:
- Poskytovatel:Poskytovatel cloudu, v našem případě AWS
- Přístup, tajný klíč:Přístup ke zdrojům AWS
- Region:Region, kde se chystáte poskytovat infrastrukturu. Dělám to v Oregonu.
Ve druhém bloku kódu definujte instanci AWS, tj. ami ( zkontrolujte amazon EC2 AMI Locator ), typ instance a značku.
Poslední část následujícího kódu vytvoří kbelík s3 s názvem 'bucket-launched-using-terrafrom-20210106'. Pamatujte, že název segmentu musí být v rámci AWS jedinečný.
Zkopírujte následující obsah a vložte do souboru configuration.tf. Poskytněte přístup, tajný klíč, region, vlastní název segmentu.
#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"
}
}
Nyní inicializujte, naplánujte a spusťte svůj kód. Inicializace terraform provede potřebnou konfiguraci, plánování je jako byste viděli, co se ve skutečnosti stane. Zjistí také vaši syntaktickou chybu. A nakonec použití znamená, že nasadíte kód do cloudu. Proveďme následující příkaz jeden po druhém.
Inicializace terraformu provede potřebnou konfiguraci. Proveďte tedy následující příkaz
$ terraform init
Plánování je, jako byste viděli, co se ve skutečnosti stane. Zjistí také vaši chybu v syntaxi.
$ terraform plan
Podání znamená, že nasadíte kód v cloudu. Udělejte to pouhým provedením příkazu
$ terraform apply
Požádá vás o potvrzení. Stačí napsat „ano“ a stisknout Enter. Během několika sekund bude vaše infrastruktura připravena.
Nyní se můžete přihlásit ke konzole AWS a dostat se ke službě ec2. Zjistíte, že ec2 je spuštěn.
Podobně přejděte na s3 a prohledejte svůj kbelík.
Zničte infrastrukturu
Pokud chcete zničit výše uvedené infrastruktury, můžete jednoduše napsat 'terraform zničit'.
$ terraform destroy
Požádá vás o potvrzení, řekněte „ano“ a stiskněte Enter. Instance ec2 a segment s3, který vytvoříte výše, by měly být odstraněny z vašeho účtu AWS. Můžete to ověřit přihlášením do konzole AWS.
Odstranit terraform
Pokud chcete odstranit terraform můžete jednoduše smazat soubor 'terraform' uložený v /usr/local/bin/
$ sudo rm -f /usr/local/bin/terraform
Také můžete vyčistit svůj adresář, kde jste inicializovali terraform. V našem případě můžeme smazat veškerý obsah složky 'aws'.
Související čtení:
- Jak nahrát soubory do S3 pomocí Terraform
- Poskytování cloudové instance AWS EC2
Závěr
Tento článek vás jednoduše navedl k instalaci terraformu, spuštění instance ec2 a vytvoření bucketu s3 pomocí ní. Také jsme vám ukázali, jak zničit vaši infrastrukturu vytvořenou z terraformu.