Autoscaling and High Availability

  • Home
  • Docs
  • Autoscaling and High Availability

Autoscaling and High Availability

Autoscaling Configuration

Enterprise listens to all interfaces on ports as specified above (8120 by default, optionally 8120 through 8120+number of cores) to facilitate sending all traffic from a load balancer (that terminates TLS) such as an ELB or HA Proxy server, while Pro listens to localhost only.

Remember to configure Redis on a separate host (replicated and Elasticache work well) using the HA/Redis tab of the admin dashboard.

Multi-core Startup Script

Run a single instance of Userify for each processing core on each node:

#! /bin/bash

# Userify multi-core startup script
SERVER_PATH="/opt/userify-server"
SERVER_COMMAND="$SERVERPATH/userify-server"

# adjust number of cores as appropriate
numcores=$(grep processor /proc/cpuinfo |wc -l)

cd "$SERVER_PATH"
for port in $(seq 8120 $((numcores+8119)))
do

    (while true
    do

        echo "Starting Userify on $port and sending output to syslog."
        sudo "$SERVER_COMMAND" server $port | \
            logger --priority local2.info --tag userify-server 2>&1

        # when the server exits, sleep 3 seconds before restarting
        sleep 3

    done) &

    # slow down startup between each core
    sleep 10

done
echo
echo "Be sure to add proxy_pass statements for ports shown above."

Expert configuration and installation support available at enterprise@userify.com.

Get More Information

Please fill out the form below to receive more information. If you are inquiring about purchasing Userify, please be sure to include your company name, number of servers and users, and the Userify edition that you are interested in.