Prepare Installation Resources¶
If you will be deploying to a cloud provider, please first check to see if we have a terraform package for your provider. This will aid you in ensuring certain required steps are performed first.
Please see the ansible installation guide for more details on how to proceed with installing ansible.
Install on MacOS
Ensure you have homebrew installed, and run:
brew install ansible
Install on Linux
To ensure you have an up-to-date copy of Ansible, we recommend using
pip to install ansible.
pip install --user ansible echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc source ~/.bashrc
Note: For some distributions, it may be
~/.bash_profile instead of
Download our Ansible Package¶
git clone https://github.com/ComputeStacks/ansible-install computestacks-installer cd computestacks-installer mv inventory.yml.sample inventory.yml ansible-galaxy install -r requirements.yml
If you used our terraform providers, you can skip the
mv inventory.yml.sample inventory.yml command and copy the
result/inventory.yml file to the root of this directory.
The actual bootstrap process can take up to an hour, so we recommend you setup your ansible environment on a remote linux server, and run either
Please review your
inventory.yml file and ensure all the settings are correct. You may check the
roles/<role>/defaults/main.yml file for each role to see additional configuration options.
Prepare the servers¶
Ensure all hostnames are configured properly on each node. Our system expects the hostnames on nodes to be 1 lowercase word (dashes or underscores are ok), no special characters or spaces. They should not be FQDN or have the dot notation.
Examples: node101, node102, node103
hostname node101 && echo "node101" > /etc/hostname && echo "127.0.0.1 node101" >> /etc/hosts
The reason these are critical are two fold:
a) When metrics are stored for containers or nodes, the hostname is added as a label. This is how ComputeStacks is able to filter metrics for the correct container/node.
b) Backup jobs are assigned to the node by their hostname. If there is a mismatch in the controller, then jobs will not run.`
Please ensure the following packages have been installed prior to running the ansible installation.
apt update && apt -y install openssl ca-certificates linux-headers-amd64 python3 python3-pip python3-openssl python3-apt python3-setuptools python3-wheel && pip3 install ansible
Network MTU Settings¶
If you’re using a setting other than the default 1500, please add the following to the main vars: section of your inventory.yml file:
container_network_mtu: 1400 # Set the desired MTU for containers to use
Next Step: Perform Installation