Multi Location Uptime Monitoring
Vigilant allows you to monitor a service from multiple locations, this works via outposts. An outpost is an application deployed somewhere else which Vigilant uses as a proxy to in order to uptime and latency checks.
Outpost are designed to be deployed with minimal configuration and are short-lived. All they need is the URL to your Vigilant instance and a secret. Once an outpost start it will register itself in Vigilant. When the outpost starts it chooses a random port for Vigilant to call. Communication from Vigilant to the outpost is done via HTTPS using a certificate created by Vigilant.
Registration works like this:
Outpost is started and sends a request to Vigilant with the pre defined secret and the randomly selected port
Vigilant registers the outpost and responds with a certificate
Outpost will start listening on that port
Requirements
Setting up an outpost requires a Linux server with Docker compose and ports 1000 - 9000 must be open as the outpost will choose a random port to listen to.
Deploying outposts
Deploying an outpost first require you to configure Vigilant to accept external outposts and set a secret key for the outposts. Add the following to Vigilant's `.env`:
UPTIME_ALLOW_EXTERNAL_OUTPOSTS=true
UPTIME_OUTPOST_SECRET=<random secret string here>
Then use the following docker compose file on your remote server:
services:
outpost:
image: ghcr.io/govigilant/vigilant-uptime-outpost:latest
restart: always
network_mode: host
environment:
- VIGILANT_URL=https://<Vigilant instance URL here>
- OUTPOST_SECRET=<random secret string here>
Start the outpost using `docker compose up` and see it register itself with Vigilant.
You can check successful registration in Vigilant by going to the `/uptime/outposts` URL.
Start Monitoring within minutes.
Get started with Vigilant in a few minutes, sign up, enter your website and select your monitors.
Vigilant comes with sensible defaults and requires minimal configuration.