Aller au contenu principal
Sommaire de la formation

Gestion des VMS et Containers avec Incus

coolibra500 vues

3. Gestion des Conteneurs avec Incus

    • incus_instance : Déployer et gérer des vm/conteneur via Terraform

  • Déployer et gérer des VM/Conteneurs avec incus_instance

L'élément principal pour déployer des conteneurs ou des machines virtuelles (VM) dans Incus avec Terraform est la ressource incus_instance. Cette ressource vous permet de spécifier les configurations des instances (conteneurs ou VM), les limites de ressources (CPU, mémoire, etc.), et divers paramètres comme l'automatisation du démarrage.

    • Configuration d’une machine virtuelle (VM) avec Terraform :

Voici un exemple de configuration pour déployer une VM Ubuntu 22.04 avec Terraform : créer le fichier vm.tf et n'oubliez pas d'ajouter aussi le providers.tf

resource "incus_instance" "vm-instance" {
  count   = 2
  project = "default"
  
  # Utilisation de l'index pour donner un nom unique à chaque instance
  name  = "vm-node-0${count.index + 1}"

  # Image utilisée pour la création de l'instance
  image = "images:ubuntu/22.04"

  type  = "virtual-machine" # Définir le type comme 'virtual-machine'

  config = {
    "boot.autostart" = true # Démarrage automatique de la VM
  }

  limits = {
    cpu = 2 # Limite du CPU à 2 cœurs
  }
}

 

Dans cet exemple, nous utilisons l'image Ubuntu 22.04 pour créer une machine virtuelle (VM) avec une limite de CPU à 2 cœurs et le démarrage automatique activé.

Pour appliquer :

terraform init
terraform plan
terraform apply
terraform destroy

 

 

    • Déployer un conteneur via Terraform 

Pour déployer un conteneur, vous pouvez utiliser la même ressource incus_instance, en changeant simplement le type à container : créer le ficher container.tf

 

resource "incus_instance" "container-instance" {
  count   = 2
  project = "default"
  
  # Utilisation de l'index pour donner un nom unique à chaque instance
  name  = "web-node-0${count.index + 1}"

  # Image utilisée pour la création de l'instance
  image = "images:ubuntu/22.04"

  type  = "container" # Définir le type comme 'container'

  config = {
    "boot.autostart" = true # Démarrage automatique de la VM
  }

  limits = {
    cpu = 1 # Limite du CPU à 1 v cœurs
    memory: "200MB"  # Limite du ram à 200 MEGA
  }
}

 

Ce conteneur Ubuntu est configuré avec une limite de CPU d’un cœur et un démarrage automatique.

terraform init
terraform plan
terraform apply
terraform destroy

 

 

 

Commentaires

Connectez-vous pour rejoindre la discussion.
  • Membre anonyme30 janv. 2025

    N'hésitez pas à laisser des commentaires si vous avez des questions ou des suggestions !