Skip to main content
All CollectionsServers
How to manually install the SSH task execution dependencies
How to manually install the SSH task execution dependencies
Brent Sanders avatar
Written by Brent Sanders
Updated over 2 months ago

Bash Script Guided Install

On the server management screen within Ottomatik there is a uniquely generated bash script that, when run on your command line, will walk you through the process of setting up your SSH Key and software dependencies.  This is by far the easiest way to configure a server to work on Ottomatik. The script does the following:

  • Install your SSH key while making a backup of the authorized_keys file just in case.

  • Prompt to install Python if not found

  • Install Python PIP if not found

  • Install PIP packages if needed: awscli, certifi, colorama, python-dateutil, features

  • Detect current user, ssh port, IP address. Post to Ottomatik and automatically test the incoming SSH connection.

  • Prompt to update MySQL Config for MySQL / MariaDB real-time backups (binlog backups)

  • Prompt to restart MySQL

  • Prompts for creating a new MySQL user and permissions to be used for backups

Note: This script makes several webhook requests to Ottomatik and will dynamically update your website UI without your needing to take additional steps.

Pro Tip: If you are adding a decent number of servers being prompted by the script can be time-consuming.  If you like, you can add your database name as an additional argument to the script (paste the cmd, add a space, type the db name, hit enter) and not be prompted at all.  The script will automatically do the tasks above without prompting you.  Note this WILL restart mysql.

Manual Install

If you'd like to avoid having Ottomatik install the backup task dependencies below you can manually install them yourself.  Here are some notes on the installation of each requirement.

Install the SSH Key

When you create a server on Ottomatik a SSH public key will be provided.  You must append this key to the ~/.ssh/authorized_keys file for each user you'll be using (in the "SSH User" field on the server record) to connect over SSH with when running a backup.

After installing the key, select the "Update Status" button in Ottomatik, shown on the same page where the SSH public key is displayed.  Ottomatik will then verify successful ssh connectivity and update the status of the server to "success". 

Software Dependencies

  • Python >= 2.6.5

Most OSs should come with a version of Python that will work, but if not you should definitely do some Googling to find out how to upgrade or install.  
This is particularly important for CentOS / Redhat distros since the package installer yum is Python based.  You don't want to mess that up.

  • Python PIP >= 8.1.2

You can download and install the Python package manager PIP with the 2 following commands:
sudo curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
sudo python get-pip.py

  • awscli PIP package >= 1.8.3

This can be installed through Python PIP with the command:
sudo pip install awscli

  • certifi PIP package >= 2015.04.28

This can be installed through Python PIP with the command:
sudo pip install certifi

  • colorama PIP package >= 0.2.5

This can be installed through Python PIP with the command:
sudo pip install colorama

  • python-dateutil PIP package >= 2.4.2

This can be installed through Python PIP with the command:
sudo pip install python-dateutil

  • futures PIP package >= 3.0.5

This can be installed through Python PIP with the command:
sudo pip install futures

Ubuntu 24.04

You need to pass the --break-system-packages flag with the pip installation. I know this flag seems severe but it won't break your system packages.

Did this answer your question?