How to manually install the SSH task execution dependencies. | Ottomatik

How to manually install the SSH task execution dependencies.

Bash Script Guided Install

On the server management screen within Ottomatik there is a uniquely generated bash script that, when ran 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 incomming 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 verion 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