Moduli e riutilizzo del codice
Impari come i moduli Terraform raccolgano infrastruttura riutilizzabile, accettino input, espongano output e mantengano le configurazioni DRY e manutenibili.
Moduli e riutilizzo del codice è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Perché utilizzare i moduli?
Copiaincollare le stesse risorse tra ambienti diversi porta a divergenze e bug. Un modulo è un contenitore riutilizzabile e parametrizzato di risorse Terraform, richiamabile più volte con input diversi, mantenendo il codice DRY.
Ogni configurazione è un modulo
La directory da cui si esegue terraform apply è il modulo root. I moduli che richiama sono i moduli child. Quindi utilizza già i moduli: ne sta semplicemente aggiungendo altri.
Struttura di un modulo
Un modulo è semplicemente una cartella con file .tf, convenzionalmente:
main.tf— le risorse.variables.tf— le variabili di input.outputs.tf— i valori esposti.
Definizione degli input
Gli input vengono dichiarati come variabili all'interno del modulo e consentono ai chiamanti di personalizzarne il comportamento.
variable "bucket_name" {
type = string
}
variable "versioning" {
type = bool
default = false
}Utilizzo degli input
Le risorse del modulo fanno riferimento alle relative variabili.
resource "aws_s3_bucket" "this" {
bucket = var.bucket_name
}Esposizione degli output
Gli output restituiscono valori utili al chiamante, come ID o ARN.
output "bucket_arn" {
value = aws_s3_bucket.this.arn
}Richiamo di un modulo
Il modulo root richiama un modulo child con un blocco module, passando gli input.
module "logs" {
source = "./modules/bucket"
bucket_name = "app-logs"
versioning = true
}Riferimento agli output di un modulo
Acceda agli output di un modulo con module.NAME.OUTPUT in altre parti della configurazione.
resource "aws_s3_bucket_policy" "p" {
bucket = module.logs.bucket_arn
}Origini dei moduli
source può essere un percorso locale, un URL Git o il Terraform Registry pubblico.
module "vpc" {
source = "terraform-aws-modules/vpc/aws"
version = "5.0.0"
}Gestione delle versioni dei moduli
Blocchi sempre una version per i moduli del registry, così gli aggiornamenti avvengono intenzionalmente. Esegua terraform init dopo aver aggiunto o modificato moduli per scaricarli.
Progettazione di moduli efficaci
Mantenga i moduli focalizzati (un componente logico), esponga solo gli input necessari, documenti gli output ed eviti di codificare direttamente valori specifici dell'ambiente. Moduli piccoli e componibili sono preferibili a un unico modulo enorme.
Verifica rapida
Verifichi la Sua conoscenza dei moduli.
Riepilogo
I moduli rendono Terraform riutilizzabile e DRY.
- Un modulo è una cartella di file .tf con variabili (input) e output.
- Lo si richiama con un blocco
modulee unsource; si accede ai risultati tramitemodule.NAME.OUTPUT. - Le origini possono essere locali, Git o il registry; blocchi
versioned eseguiinit. - Progetti moduli piccoli, focalizzati e ben documentati.
Domande Frequenti
La lezione «Moduli e riutilizzo del codice» è gratuita?
Sì — il testo completo di «Moduli e riutilizzo del codice» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Moduli e riutilizzo del codice»?
Impari come i moduli Terraform raccolgano infrastruttura riutilizzabile, accettino input, espongano output e mantengano le configurazioni DRY e manutenibili. Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Moduli e riutilizzo del codice»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Provider e risorse
- Variabili e output
- Fondamenti della gestione dello state
- Moduli e riutilizzo del codice