Given the recent new tasks (cassandra poc on azure for example was using terraform, vault server migration to azure), reuse the same tool to provision new nodes within different infras would help reproducibility.
Goals:
- Reuse same abstraction in between infrastructures (rocq, azure, aws?), existing tools (proxmox)
- (Keep puppet): it's in charge of the machine setup (not the provisioning)
Tools to consider:
|-----------+-------------------------------------------------+-------------| | Tools | Perimeter | License | |-----------+-------------------------------------------------+-------------| | Terraform | Bootstrap/Initialization resources | // | | Salt | IT automation tool (provision + cmt) | // | | Foreman | IT automation tool (provision, cmt, monitoring) | // | | Ansible | IT automation tool (provision + cmt) | // | |-----------+-------------------------------------------------+-------------|
Note:
- today we are using the sysadm-provisioning [1] repository which contains:
- preseed technology for debian install on proxmox vms (broke multiple times in the past)
- shell scripts to install vms on azure (broke multiple times as well)
- (no idea how it's done for aws)
- In the context of ongoing cassandra benchmarks, terraform and ansible got used [2]
[1] https://forge.softwareheritage.org/source/swh-sysadmin-provisioning/
[2] https://forge.softwareheritage.org/source/storage-benchmark-deployment/