Production Installation

This section covers the installation of self-hosted Scalr in a public or private cloud for Production use. If you are installing for a POC please see POC Install.

This page contains a description of the architecture and the prerequisites for installation. This is followed by links to instructions for each cloud.

Architecture

The logical architecture of a Scalr production installation is as shown in this diagram.

../../_images/iacp_prod.png

Component

Purpose

Notes and Options

Scalr App Server

UI and API endpoints and can be front-ended by a load balancer

  • Currently only one scalr server is supported but multiple will be allowed in due course, so adding an LB from the start is recommended.

Scalr MySQL Database

Scalr internal meta data storage

  • MySQL can be set up in any cloud based database service or it can be managed by Scalr as part of the installation.

  • Cloud database service must be used where available.

  • Latency between the Scalr App Server and MySQL should be minimized. It is not recommended to have the Scalr App Server in one cloud and MySQL in another.

Blob Storage

State storage, log files, synchronized clones of VCS repositories and other large objects

  • Cloud Storage is required when deploying on Google. Other cloud storage options will be supported soon.

  • Incorporated into MySQL when Cloud Storage is not available

The following architectures should be used for the each cloud.

Cloud

MySQL

Blob Storage

Google

Cloud SQL with replication and automated backups

Google Cloud Storage

AWS

Amazon RDS MySQL with replication and automated backups

Incorporated in MySQL DB

Azure

Azure Database for MySQL with replication and automated backups

Incorporated in MySQL DB

Private Cloud

Scalr managed MySQL with replication and and automated backups

Incorporated in MySQL DB

Prerequisites

  • Scalr App Server:

    • A single server with 4CPU x 16GB RAM and 50GB storage

    • OS:

      • Ubuntu 18.04

      • RHEL/CentOS 8.x

      • Amazon Linux 2

  • Database component:

    • MySQL 5.7.8 database instance with 4CPU x 16GB RAM and 500GB storage

    • Multi location replication recommended.

  • Scalr download token

  • Scalr license file

  • SSL Cert

  • Internet Connectivity

  • A domain name, the URL should not resolve to an IP

Tip

Because Terraform will run in a container, one of the following options must be applied to SELinux on the servers that Scalr is running on:

  • Disable SELinux

  • Update package container-selinux >= 2.107

  • Update Linux kernel >= 5.3