Help:Cumin master
A standalone Cumin master can be setup inside a Cloud VPS instance to perform automation and orchestration across the instances of the project. For more general information on what Cumin is and how it's used, see Cumin.
Installation
On the soon-to-be Cumin master host
On the host that will be the Cumin master of the project, follow these steps
Create an SSH key with passhphrase
sudo ssh-keygen -t ed25519 -f /root/.ssh/cumin
N.B. save the passphrase in an encrypted form (i.e. in a password manager) and in any case not on the host itself.
Export the SSH public key
sudo cat /root/.ssh/cumin.pub
Get the IP of the Cumin master
sudo facter -p ipaddress
On Horizon UI
Go to the Puppet Project page on Horizon
If you have access to multiple projects, ensure to have selected the right project from the menu at the top.
Click on the Edit
button below the Hiera Config
block, insert the following values, replacing the highlighted variables ##NAME##
with the data extracted above, and save:
profile::openstack::eqiad1::cumin::project_masters:
- '##CUMIN_MASTER_IP##'
profile::openstack::eqiad1::cumin::project_pub_key: '##SSH_PUBLIC_KEY##'
Go to the Cumin master Puppet configuration on Horizon
From the instances page, select the Cumin master host and go to the Puppet Configuration tab.
- Click on the
Edit
button below theHiera Config
block, insert the following block and save:
profile::openstack::eqiad1::cumin::aliases: {}
profile::openstack::eqiad1::cumin::project_ssh_priv_key_path: /root/.ssh/cumin
- Click on the top-right
all
button to show all the available Puppet classes, search theprofile::openstack::eqiad1::cumin::master
one and click on theApply Class
button on the right. Leave the default values and click theApply
button.
On the Cumin master host
- Run puppet to apply the changes:
sudo run-puppet-agent
- Arm the keyholder with the SSH key passphrase:
sudo keyholder arm
- Restart the keyholder proxy:
sudo systemctl restart keyholder-proxy
- Verify the keyholder status:
sudo keyholder status
For more information, see the Keyholder page.
All done
At the next Puppet run, all the instances of the project will be configured to allow SSH connections from the Cumin master host with the specified SSH key. Once Puppet has run on all the instances, to test if all work fine, run:
sudo cumin '*' 'true'