Provisioning Servers

Server provisioning with Serverfluent is a process when you either create a new server instance (for example DigitalOcean’s Droplet) or bring a fresh custom server and set up Serverfluent to manage and provision this new server.

Once you create a server via Serverfluent, we will automatically install any software components that are required to run your applications and perform any additional configuration to the server to make it production ready.

When you are bringing a custom server, make sure it is a freshly created and unused server. If your server already contains some data or for example existing php installation, it might be overwritten or provisioning process might fail or complete with an unexpected error.

# What software is installed

Installed software components include but are not limited to the following list:

  • PHP with commonly used extensions
  • MySQL database
  • Nginx server
  • Supervisor process manager
  • Redis in-memory database
  • Node.js runtime

When provisioning your server, you can control which software is going to be installed on the server.

# How Serverfluent manages your servers

When you set up a server and perform initial provisioning, all interactions with your server are done via SSH connection. Therefore, you should make sure that you enter correct ssh port when provisioning a custom server.

Make sure to leave the SSH port accessible via firewall, otherwise Serverfluent will not be able to communicate with your server.

Once provisioning is done your server will be configured to reject root and password based logins via SSH. Therefore, you will need to use SSH keys in order to SSH into your server.

# Setting up server providers

Serverfluent currently supports multiple ways how you can manage servers. You can either bring your own already existing server via “Custom server” or use any of supported server provider via API tokens or similar mechanism.

You can set up API keys and other required information for server providers in server providers settings page

# Custom server

Choose the “Custom server” button to create a custom server
in create servers page . When using custom server you will need to have root and ssh access to your server. Follow the instructions provided on the server creation page to complete the provisioning of custom server.

# DigitalOcean

In order to create and provision new droplets via DigitalOcean, you will need to use Personal Access Token API keys. You can follow this guide on how to create Personal Access Tokens in DigitalOcean Once you have the API token created, add it in server providers settings page.

You will now be able to use previously added API token to create and provision new servers on DigitalOcean.

# Initial provisioning

After you create the server, you will be able to perform an initial provisioning which will set up and install all software required to run your applications.

Make sure you securely store sudo password provided on initial provisioning page. Serverfluent does not store sudo password and in case you lose it, we are unable to reset it for you. By default, displayed sudo password is for user serverfluent

# Post provisioning script

You can provide a post-provisioning script that will be executed after all provisioning steps are completed. These scripts are executed via bash shell with elevated sudo privileges.

You should use post provisioning scripts to perform any additional set up needed.

You can manage your provisioning scripts in provisioning scripts settings page