Prérequis¶
Ce tutoriel s'appuie sur le Tutoriel 1 — Fondations. Verifiez que votre environnement est pret.
Tutoriel 1 termine¶
Vous devez avoir :
- Un projet GCP configuré avec
universe_domain - Un service account
packer-builderavec les rôles nécessaires - Une méthode d'authentification (clé JSON ou WIF)
- Le build du Tuto 1 (image Docker) fonctionnel
Obligatoire
Si vous n'avez pas suivi le Tutoriel 1, faites-le d'abord : Fondations — Setup GCP, Packer, Ansible.
Versions requises¶
| Outil | Version minimum | Vérification |
|---|---|---|
| gcloud CLI | Dernière | gcloud --version |
| Packer | 1.10+ | packer --version |
| Ansible | 2.15+ | ansible --version |
| Python | 3.10+ | python3 --version |
| pywinrm | 0.4+ | pip show pywinrm |
Installation de pywinrm¶
Ansible a besoin de la librairie Python pywinrm pour communiquer avec Windows :
Verifiez :
Images de base GCP¶
Ce tutoriel construit des images à partir de Windows Server 2022 :
| Edition | Famille d'image | Projet | Licence |
|---|---|---|---|
| Server 2022 | windows-2022 | windows-cloud | Incluse (coût horaire) |
| Win 10/11 BYOL | Custom import | Votre projet | A fournir (Sole-Tenant) |
Verifiez que l'image Server 2022 est accessible :
Coût des licences Windows¶
Coût
Les images Windows sur GCP incluent un supplement de licence dans le coût horaire de la VM. Pour une e2-standard-4 Windows, comptez environ **$0.25/heure** (vs $0.13 pour Linux). Le build prend 20-35 minutes.
| Edition | Licence | Coût supplémentaire |
|---|---|---|
| Server 2022 | Incluse dans le coût GCE | ~$0.12/heure/vCPU |
| Windows 10/11 BYOL | Sole-Tenant Nodes | Licence propre + coût Sole-Tenant |
Sole-Tenant Nodes
Pour utiliser des licences Windows BYOL, vous devez provisionner des Sole-Tenant Nodes. Ce coût supplémentaire est significatif et réservé aux entreprises avec des licences existantes. La page 09 couvre cette variante.
Machine de build¶
Le build utilise une VM e2-standard-4 (4 vCPU, 16 Go RAM) pour accélérer l'installation des composants Windows :
Coût
Build Windows : environ $0.25/heure, durée estimée 20-35 minutes selon le profil.
Structure du projet¶
À la fin de ce tutoriel, votre projet aura cette structure :
packer-vdi-windows/
├── packer/
│ ├── variables.pkr.hcl
│ ├── windows-server-vdi.pkr.hcl
│ ├── windows-byol-vdi.pkr.hcl
│ └── vdi-win.auto.pkrvars.hcl
├── scripts/
│ ├── setup-winrm.ps1
│ ├── sysprep.ps1
│ └── unattend.xml
└── ansible/
├── playbook.yml
├── profiles/
│ ├── developer.yml
│ ├── office.yml
│ └── full.yml
├── group_vars/
│ └── windows.yml
└── roles/
├── winrm/
├── rdp/
├── apps/
├── chocolatey/
├── m365/
├── containers/
├── wsl2/
├── k3s/
└── security/