The romana-setup
tool allows you to provide a list of hosts that were provisioned manually or with other tools, and perform the installation on those hosts.
This is done by providing an Ansible inventory
file when running the romana-setup
command.
Each host needs to sastisfy the minimum requirements before the installtion can be performed.
- A Redhat- or Debian-based linux distribution installed
- Access to the internet for downloading additional files
- Access to other hosts via the same network segment
- An unprivileged user with
sudo
access sudo
not requiring a password for that unprivileged usersudo
configured to not require a TTY- Key-based SSH access for that unprivileged user
- Python installed
- Python packages for the distro package manager installed (eg:
python-apt
,python-yum
)
The inventory file provides the list of hosts to use for installation, the details required to connect to them, and the role of the host.
example-controller ansible_ssh_host="192.168.10.11" ansible_ssh_user="ubuntu" ansible_ssh_private_key_file="/home/example/example_id_rsa"
example-compute01 ansible_ssh_host="192.168.10.22" ansible_ssh_user="ubuntu" ansible_ssh_private_key_file="/home/example/example_id_rsa"
# Additional compute hosts may be specified here, eg
# example-compute02 ansible_ssh_host="192.168.10.33" ansible_ssh_user="ubuntu" ansible_ssh_private_key_file="/home/example/example_id_rsa"
# example-compute03 ansible_ssh_host="192.168.10.44" ansible_ssh_user="ubuntu" ansible_ssh_private_key_file="/home/example/example_id_rsa"
# example-compute04 ansible_ssh_host="192.168.10.55" ansible_ssh_user="ubuntu" ansible_ssh_private_key_file="/home/example/example_id_rsa"
[stack_nodes:children]
controller
computes
[controller]
example-controller
[computes]
example-compute01
# The names of additional compute hosts should be put here also, eg
# example-compute02
# example-compute03
# example-compute04
Run the installation, specifying -p static
and the path to the inventory file using -i /path/to/inventory
.
cd romana-install
./romana-setup -n example -p static -i /path/to/inventory -d ubuntu -s kubernetes install
This should be performed manually, or using the provisioning tools used to create the hosts.
Running the uninstall
command cleans up local files created during installation but does no other action on the hosts.