June 2022: Feature releases & highlights

The June release addresses two important areas:

Here is a live picture from my desktop, edge installer running left, and application observability UI to the right. Fun!

Automated host install

We have fully automated the first install procedure of the Edge Enforcer on the edge hosts. A one-liner makes all needed configuration, downloading, and installation steps:

curl -s https://api.test.acme.avassa.net/install | sudo sh

On the host, you just point curl to the install script that resides in Control Tower and pass that to the shell as shown above. This will install the Edge Enforcer and all its prerequisites. This process is supported for the Debian 11, Ubuntu 20.04, CentOS 9, and Alpine distributions.

A session might look like the below:

$ curl -s [https://](<https://api.acme.edge.avassa.dev/install>)[api.test.acme.avassa.net](<https://api.test.acme.avassa.net/install>)[/install](<https://api.acme.edge.avassa.dev/install>) | sudo sh
Saving output in /tmp/install.log
Installing Edge Enforcer on Ubuntu 20.04.4 LTS
Using Control Tower address api.acme.edge.avassa.dev
Using host id 6CFMR32
Installing jq... done
Updating /etc/docker/daemon.json...done
Restarting docker... done
Downloading Edge Enforcer container image... done
Flushing iptables... ok
Downloading start scripts
Installing /etc/systemd/system/supd.service... done
Installing /usr/sbin/start-supd... done
Creating directories: /var/lib/supd/state /etc/supd /var/lib/supd/volumes
Creating configuration file /etc/supd/supd.conf... done
Starting Edge Enforcer... done
Edge Enforcer successfully installed and started

Control Tower will only accept hosts that have the shared secret host id configured. You can pre-provision sites and hosts in Control Tower before you run the install script as above. In that case, they will immediately show up in Control Tower. If the Control Tower does not know the host, the install script will install and configure all dependencies and thereafter wait until the host is accepted. From that point, the Edge Enforcer is downloaded and installed. The screenshot below shows how to add the host to a site.

If you want to pre-provision the hosts the Avassa system also provides a command to get the host id before running the installer:

$curl -s https://[api.test.acme.avassa.net](<https://api.test.acme.avassa.net/install>)/scripts/get-host-id | sudo sh

These steps can easily be automated for a large edge deployment by using for example Ansible to do the job across hosts.

You can read more in the installation documentation.

Application observability

We have now released the first feature set for enhanced observability. You will see several feature enhancements during the coming months. This first step focuses on insights into the health of the applications running at the edge.

To the left, you see the “catalog” of applications that have been defined by your applications team and their running status at the edge. The application list will show connection issues to the sites where it is running, and indicate if any application issues need to be investigated.

At this point as an operations user, you can drill down to the individual sites that have an issue and inspect the details and logs of the application and its services and containers.

Selecting an application a site will give you direct insight into services, containers, probes, and logs:

From the above view you can for example restart the service:

You will also see any unexpected exits:

The observability functions will also propagate the state of a readiness probe to the service.

All of the features are of course available over the APIs and the command line interface.

And have a lovely summer all of you!

Bless my tail! Whatever next! Moominpappa, from the book Finn Family Moomintroll