MetaMorph is a tool introduced to provision baremetal nodes in the kubernetes native way. It is fully compliant with Kubernetes Cluster API, its a Baremetal Provisioner. MetaMorph uses native redfish APIs to provision the baremetal nodes thus eliminating complex traditional pre-requisties like DHCP, TFTP, PXE booting etc. ISO used to provision the OS will be mounted from an HTTP share using VirtualMedia
feature of Redfish
git clone https://github.com/bm-metamorph/MetaMorph.git
Setup ENV variables
export METAMORPH_CONFIGPATH=<path of config.yaml location>
export REDFISH_SLEEPTIME_SECS=10 //time duration in between subsequent redfish API calls. Default = 120 secs
export METAMORPH_POWERCHANGE_TIMEOUT=300 //To handle Nodes that are powered off at the start of RAID Creation.
export METAMORPH_LOG_LEVEL= 1 // default is DEBUG, 1 = INFO 2 = WARN 3 = ERROR
export REDFISH_JOBCHECKTIMEOUT_MTS= 10 // default is 10 minutes. Job related to firmware updates takes more time.
cd MetaMorph
To Run the Controller
go run main.go controller
To Run the API
go run main.go api