diff --git a/jobs/monitoring/gatus.hcl b/jobs/monitoring/gatus.hcl index fc1ca41..882ff04 100644 --- a/jobs/monitoring/gatus.hcl +++ b/jobs/monitoring/gatus.hcl @@ -3,7 +3,7 @@ job "gatus" { type = "service" meta { - domain = "status.redbrick.dcu.ie" + domain = "gatus.redbrick.dcu.ie" } group "db-web" { @@ -176,6 +176,13 @@ defaults_https: &defaults_https - "[STATUS] == 200" - "[CERTIFICATE_EXPIRATION] > 48h" +defaults_shortlinks: &defaults_shortlinks + interval: 260s + alerts: + - type: discord + conditions: + - "[STATUS] == 200" + endpoints: # --- All Redbrick Monitors --- - name: Atlas @@ -193,7 +200,7 @@ endpoints: url: "https://api.redbrick.dcu.ie" <<: *defaults_https - - name: Better Timetable + - name: Timetable Sync group: Services url: "https://timetable.redbrick.dcu.ie" <<: *defaults_https @@ -264,11 +271,6 @@ endpoints: url: "https://outline.solarracing.ie" <<: *defaults_https - - name: Plume (on RB) - group: Other Socs - url: "https://cspp.rb.dcu.ie" - <<: *defaults_https - - name: Amikon Website group: Other Socs url: "https://amikon.me" @@ -276,27 +278,22 @@ endpoints: - name: Glados group: Servers - url: "tcp://10.10.0.4:22" + url: "tcp://10.10.10.4:22" <<: *defaults_tcp - name: Wheatley group: Servers - url: "tcp://10.10.0.5:22" + url: "tcp://10.10.10.5:22" <<: *defaults_tcp - - name: Bastion VM + - name: Mirage group: Servers - url: "tcp://136.206.16.50:2269" - <<: *defaults_tcp - - - name: Johnson - group: Servers - url: "tcp://10.10.0.7:22" + url: "tcp://10.10.30.9:22" <<: *defaults_tcp - name: Chell group: Servers - url: "tcp://10.10.0.6:22" + url: "tcp://10.10.10.6:22" <<: *defaults_tcp - name: Minecraft Vanilla @@ -307,37 +304,37 @@ endpoints: - name: Discord Shortlink group: Short Links url: "https://discord.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: Github Shortlink group: Short Links url: "https://github.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: Instagram Shortlink group: Short Links url: "https://instagram.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: Youtube Shortlink group: Short Links url: "https://youtube.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: LinkedIn Shortlink group: Short Links url: "https://linkedin.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: Twitch Shortlink group: Short Links url: "https://twitch.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks - name: Tiktok Shortlink group: Short Links url: "https://tiktok.redbrick.dcu.ie" - <<: *defaults_https + <<: *defaults_shortlinks EOH } diff --git a/jobs/monitoring/grafana.hcl b/jobs/monitoring/grafana.hcl new file mode 100644 index 0000000..21c0968 --- /dev/null +++ b/jobs/monitoring/grafana.hcl @@ -0,0 +1,179 @@ +job "grafana" { + datacenters = ["aperture"] + type = "service" + + meta { + domain = "grafana.redbrick.dcu.ie" + } + + group "database" { + count = 1 + + network { + port "db" { + to = 5432 + } + } + + service { + name = "grafana-db" + port = "db" + + check { + name = "postgres-tcp" + type = "tcp" + port = "db" + interval = "10s" + timeout = "2s" + } + } + + task "db" { + driver = "docker" + kill_signal = "SIGTERM" # SIGTERM instead of SIGKILL so database can shutdown safely + kill_timeout = "30s" + shutdown_delay = "5s" + + config { + image = "postgres:17-alpine" + ports = ["db"] + + volumes = [ + "/storage/nomad/${NOMAD_JOB_NAME}/${NOMAD_TASK_NAME}:/var/lib/postgresql/data" + ] + } + + template { + data = <