# Where to run kogut

Where to run kogut so monitoring survives an outage.

## One VPS

kogut beside your applications needs no extra server, but stops when that VPS fails. An
external watchdog, [kogut edge](https://docs.kogut.dev/high-availability/kogut-edge/) or a [heartbeat URL](https://docs.kogut.dev/high-availability/heartbeat-url/),
reports the loss of kogut, but the panel and the status page go down with it. Set either
up under **Settings → Watching kogut**. Without either, **Overview** warns when kogut
shares a host with an agent it watches.

## A separate VPS

The recommended setup is a small VPS at another provider:

| Location | Runs |
|---|---|
| Application hosts, provider A | Applications and kogut agents |
| Monitoring host, provider B | kogut, including checks, alerts, and the status page |

kogut keeps running through an outage of an application host or provider. An outage of
kogut itself still needs an external watchdog. Agents buffer data during a short outage.
[Offsite backups](https://docs.kogut.dev/high-availability/backups/) let a replacement server recover history.

[Railway](https://docs.kogut.dev/installation/railway/) and [Render](https://docs.kogut.dev/installation/render/) also work.
For an app on Vercel, Netlify, or Cloudflare Pages, see
[Hosted apps](https://docs.kogut.dev/web-apps/hosted-apps/).

## Independent alert delivery

**Overview** warns when there is one notification channel or none. Use two
[notification channels](https://docs.kogut.dev/alerts/channels/) from different services, so that an
outage of one does not hide yours. You can also watch `/healthz` from another monitoring
service instead of using the built-in watchdogs.
