
Create and maintain airgaped clusters for distributed software
Automata does this by Generate OS iso's and fire them up on hosts (kvm or redfish)
airgap_media.sh fedora_41
iso_create.sh fedora_41 4 spark x14.se
kvm_initiate.sh fedora_41 4 spark x14.se
kvm_cluster.sh fedora_41 4 spark x14.se
you will se 4 small virtual machines fired up !
- airgap your target os media on an internet enabled server.
syntax airgap_img.sh osversion For example , fedora_41 os
airgap_media.sh fedora_41
For a quick test continue with step nr 2 below on same server. But for production you need transfer airgaped media files to non internet enabled machines.
A future update needs to run the below command and again transfer the packages to non internet enabled machine/s
airgap_update.sh fedora_41
- Create your media ,One iso for each node in cluster will be created
syntax iso_create.sh osversion nodes nodename domain
For example , to create 4 isos with hostnames {spark1.x14.se, spark2.x14.se, spark3.x14.se}
iso_create.sh fedora_41 4 spark x14.se
- Initate your hosts (DISCLAIMER WARNING WILL DESTROY / FORMAT / DELETE your hosts)
syntax [kvm/redfish]_initate.sh osversion nodes nodename domain
using local kvm
kvm_initiate.sh fedora_41 4 spark x14.se
or redfish where you must set ip1...ip4 to your hardwares BMC.
redfish_initiate.sh fedora_41 4 spark x14.se {ip1,ip2,ip3,ip4}
- Fire up your cluster by installing iso's on hosts
syntax kvm_cluster.sh osversion nodes nodename domain
syntax redfish_cluster.sh osversion nodes nodename domain {ip1,ip2,..}_
For example to fire up fedora_41 cluster localy on kvm'ms
kvm_cluster.sh fedora_41 4 spark x14.se
a small cluster json vill be created with IP'setc..
- Use your cluster
Its up and running and you have an cluster.json with ip's etc
To myself Rickard Ernst Björn Lundin on behalf of Swedish X14 AB and Danish Ignalina APS
KVM parts are partly copied and inspired from from Earl C. Ruby III https://github.com/earlruby/create-vm
Wikipedia image of Automata