1.2 KiB
04 - Pipeline Architecture
The deploy.yml playbook orchestrates the initialization via sequential phases utilizing include_role blocks to guarantee procedural execution order.
Phase 1: Repositories & Licensing
Evaluates the pve_enterprise_key variable. Modifies /etc/apt/sources.list.d/, drops the ceph/enterprise configurations as needed, and applies Linstor repository keys.
Phase 2: System Updates & JS Patches
Forces a dist-upgrade. Implements a regex replacement targeting proxmoxlib.js to nullify the ExtJS subscription prompt. Installs required DRBD headers and modules. Issues a conditional reboot.
Phase 3: Proxmox Clustering
Generates 4096-bit RSA keys, constructs a full-mesh authorized_keys trust, and nullifies StrictHostKeyChecking for the defined subnets. Bootstraps Corosync via pvecm create on Node 01, followed by asynchronous pvecm add operations on worker nodes.
Phase 4: Linstor/DRBD Configuration (Conditional)
Wrapped in a feature flag (deploy_linstor). Executes standard DRBD module loading, configures global LVM filters, sets up High Availability components, and injects backend parameters into /etc/pve/storage.cfg.