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.
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