upmaru / uplink

🛰 Uplink cluster management for Instellar

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Uplink

build

Why?

Uplink is designed to work with instellar. It provides protocols that enable instellar to push changes and events that propagate into dynamic configuration changes.

Installation

You can install uplink either by using the instellar UI or Infrastructure as Code. See instructions below.

Click Ops

You can install uplink via instellar.app. On the cluster page. When you add a new empty cluster you can simply click on the Setup button.

Setup Uplink

Then select the option you want and simply click Next

Configure installation

Infrastructure as Code

You can use our terraform module to install uplink on your cluster. You can create a repo from one of the templates listed here insterra.

What is Uplink?

Uplink is a module that is installed on the cluster that is being managed by instellar.app. It provides some useful functionality such as:

  • Dynamically configuring load balancing based on apps running on the cluster (Caddy)
  • Container orchestration
    • Upgrading of existing apps
    • Bootstrapping new apps
  • Manages state required to run applications
    • Environment variables
    • Port configurations

How does Uplink use Caddy?

Caddy provides the heavy lifting of load balancing, routing traffic to the containers running inside the cluster and handles automatic ssl certificate issuing.

Uplink ensures that the configuration provided by the user on instellar.app is correctly fed into Caddy. When there is a change in configuration (i.e. new apps deployed on a cluster) uplink will automatically update caddy.

Future Plans

Here are some features we're planning to develop for uplink.

  • Pro Mode - Currently the lite version is available on instellar. We want to enable pro mode to allow users to persist state to a database running outside the cluster. This will open up many more opportunities.

  • Vault - Provides ability to store secrets securely on the cluster. This means all storage of environment variables will be persisted inside a cluster marked as trusted. Applications will directly fetch variables from uplink on the cluster without relying on instellar.app. This will only work for uplink in pro mode.

  • Service Discovery - Some applications need to be able to discover other instances running to be able to connect to one another. In the future uplink will provide this functionality. This will work with both lite and pro mode.

About

🛰 Uplink cluster management for Instellar

License:Mozilla Public License 2.0


Languages

Language:Elixir 100.0%