Skip to content

Latest commit

 

History

History
 
 

ironic-deployment

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Kustomizations for Ironic

This folder contains kustomizations for Ironic. They are mainly used traditionally been used through the deploy.sh script, which takes care of generating the necessary config for basic-auth and TLS.

Experimentally, instead of deploy.sh, you can use the new golang-based deploy-cli library, which, at the moment, handles everything deploy.sh does. You can either:

  • Run the package with go run. From the root of BMO repository:
cd hack/tools/deploy-cli
go run *.go
  • Otherwise, build the package to a static binary:
make deploy-cli

And run the binary with:

./tools/bin/deploy-cli -h

To check which options are available, run the script/binary with -h.

Here is a basic introduction of the kustomize structure:

  • base - This is the kustomize base that we start from.
  • components - In here you will find re-usable kustomize components for running Ironic with TLS, basic-auth, keepalived or mariadb.
    • basic-auth - Enable basic authentication. Note that the basic-auth component is missing the actual credentials. This is on purpose, to make sure that the user is setting the password.
    • tls - Enable TLS. The TLS component needs to have the proper IP/SAN set for the certificates.
    • keepalived - Add a keepalived container to the deployment. This is useful when using a VIP for exposing the Ironic endpoint, so that the IP can move with the pod.
    • mariadb - Use MariaDB instead of SQLite. TLS required for this to work.
  • default - A minimal, fully working, Ironic kustomization including configmap and password. Use only for development! The DB password is hard coded in the repo and there is no TLS or basic-auth.
  • overlays - Here you will find ready made overlays that use the above mentioned components.