1
1
mirror of https://gitlab.archlinux.org/archlinux/infrastructure.git synced 2025-01-18 08:06:16 +01:00
Commit Graph

135 Commits

Author SHA1 Message Date
Kristian Klausen
ab567991d4
Remove obsolete dev.archlinux.org subdomain
This was apparently hosted on the long gone "apollo" server[1], and when
archweb was migrated to a dedicated cloud VM, it was changed to a
redirect to the main site (archlinux.org)[2][3].

It may have made sense at the time, but now four years later there is no
reason for keeping this around.

I guess dev.archlinux.org was something similar to what pkgbuild.com is
today ("Public HTML server" for staff), but only for developers.

[1] f6c3af0e ("Merge branch 'apollo_decomission' into 'master'")
[2] 824fb084 ("tf-stage1/archlinux: Change DNS records for the archweb migration and also increase the machine size")
[3] 9800d023 ("roles/archweb: Create domain redirects for the domains that point to specific archweb sub urls.")
2025-01-12 01:31:13 +01:00
Christian Heusel
d3d0180bc2
prometheus: Fix syntax issue in node rules
Somehow these changes were not directly applied even though the role
reloads the prometheus config.

Fixes: 10475a62 ("prometheus: Alert if a build hosts is OOM for 12h")
Signed-off-by: Christian Heusel <christian@heusel.eu>
2025-01-05 13:22:38 +01:00
Christian Heusel
10475a62f1
prometheus: Alert if a build hosts is OOM for 12h
Signed-off-by: Christian Heusel <christian@heusel.eu>
2025-01-04 10:45:57 +01:00
Christian Heusel
0794f65c63
prometheus: Disable the OOM alert for build hosts
There is not much value in knowing when one of our build hosts has no
more memory left as all of them have plenty of swap available.
Additionally these rules trigger quite often even for short spikes.

Signed-off-by: Christian Heusel <christian@heusel.eu>
2025-01-03 21:15:35 +01:00
Robin Candau
a5f4104943 Use 'Start and enable ' in all corresponding systemd_service: tasks 2024-12-23 17:43:01 +00:00
Robin Candau
934db48d4a Rename systemd module to systemd_service
See https://github.com/ansible/ansible/pull/77644
2024-12-23 17:43:01 +00:00
Kristian Klausen
c9e9b3c6f9
loki/prometheus: Add plumbing for using loki recording rules[1]
The plan is to use this for creating metrics from the nginx log lines
(e.g. requests per second).

[1] https://grafana.com/docs/loki/latest/alert/#recording-rules
2024-12-22 15:07:54 +01:00
Kristian Klausen
12fbdc5401
prometheus: Fix "cli configuration" changes not taking effect automatically
Fixes: bd19c007 ("Add configuration to retain prometheus data for 1 year")
2024-12-22 14:29:56 +01:00
Kristian Klausen
ec6296bf6f
Add alert for Fastly cost
If the cost exceeds $0, it indicates that we have run out of credit
and/or are doing something wrong, in either case we want to be alerted.
2024-12-15 18:06:39 +01:00
Christian Heusel
ee7bee72b3
prometheus: Update the monitored link for Signstar
The project now has a centralized landing page hosted in the root
directory which we can observe instead of the docs for one specific
crate.

Related to https://gitlab.archlinux.org/archlinux/signstar/-/issues/124
Related to https://gitlab.archlinux.org/archlinux/signstar/-/merge_requests/131

Signed-off-by: Christian Heusel <christian@heusel.eu>
2024-12-12 17:08:24 +01:00
Christian Heusel
2d3f66b8e5
prometheus: Update the monitored link for ALPM
The project now has a centralized landing page hosted in the root
directory which we can observe instead of the docs for one specific
crate.

Related to https://gitlab.archlinux.org/archlinux/alpm/alpm/-/issues/76
Related to https://gitlab.archlinux.org/archlinux/alpm/alpm/-/merge_requests/57

Signed-off-by: Christian Heusel <christian@heusel.eu>
2024-12-12 17:08:24 +01:00
Christian Heusel
ccd1d54bcc
tf-stage1: Add GitLab Pages for Signstar
Requested by dvzrv[1] and implemented in this MR[2].

[1]: https://gitlab.archlinux.org/archlinux/signstar/-/issues/91
[2]: https://gitlab.archlinux.org/archlinux/signstar/-/merge_requests/125

Signed-off-by: Christian Heusel <christian@heusel.eu>
2024-12-03 10:40:07 +01:00
Sven-Hendrik Haase
f95299917b
Add Mumble server
As per my announcement to arch-devops[1] and staff, this adds a Mumble
server for Arch Linux.

The password for the special root user SuperAdmin is automatically
generated on first launch and printed to the logs. I went ahead and
added it to the vault. It should not usually be required to login as
SuperAdmin though as long as there are user admins around.

This uses certbot for local certificates.

[1] https://lists.archlinux.org/archives/list/arch-devops@lists.archlinux.org/thread/AHAOSTGFJTLQDSXLWFORDKGR6RDVHYEI/
2024-11-26 14:30:42 +01:00
Evangelos Foutras
ce0c53df43
misc/find-arch-on-crt: detect alpm.archlinux.page
Also regenerate the list of Prometheus Blackbox targets, adding:

- https://london.mirror.pkgbuild.com
- https://package-maintainer-bylaws.aur.archlinux.org
2024-11-23 23:41:39 +02:00
Evangelos Foutras
c7e6f23e50
Remove seoul.mirror.pkgbuild.com dedicated server
It failed to reboot during the last upgrade procedure. Upon logging into
the Equinix Metal console, we discovered that we lack access to all 4 of
the servers sponsored by Equinix Metal. They are under the CNCF account,
and it's not possible to transfer them to our organization.

Equinix Metal is being sunset, and the remaining 3 servers will also go
away on June 30th 2026. We can keep them until then, or until they fail
to boot like seoul.mirror.pkgbuild.com.
2024-11-17 20:59:47 +02:00
Kristian Klausen
34642f7f05
Remove GitLab Pages for alpm-types
alpm-buildinfo and alpm-types have been consolidated into the alpm
project[1], for which GitLab Pages was recently configured[2][3].

Requested by @dvzrv.

[1] https://gitlab.archlinux.org/archlinux/alpm/alpm
[2] https://gitlab.archlinux.org/archlinux/alpm/alpm/-/issues/32
[3] 3d54b56c ("Add GitLab Pages for alpm")
2024-11-17 19:25:42 +01:00
Kristian Klausen
3d54b56ce7
Add GitLab Pages for alpm
Requested by Orhun[1].

[1] https://gitlab.archlinux.org/archlinux/alpm/alpm/-/merge_requests/9
2024-10-26 21:25:35 +02:00
Evangelos Foutras
84421e620a
prometheus: monitor HTTPS records for Geo domains
Check the HTTPS DNS records of the following Geo domains:

- geo.mirror.pkgbuild.com
- riscv.mirror.pkgbuild.com

Ensure they return: "1 . alpn=h2,h3 ipv4hint=... ipv6hint=..."

Ref #606
2024-10-06 07:31:11 +03:00
Kristian Klausen
25855deb67
aurweb/prometheus: Put aurweb metrics endpoint behind authentication
We do not usually expose metrics publicly and there is no good reason
for handling aurweb differently.

Fixes: 74757d6b ("Scape aurweb metrics")
2024-08-18 22:53:40 +02:00
Kristian Klausen
95a1476d17
Move from broken ansible_fqdn variable to inventory_hostname
It seems to have broken with the release of filesystem 2021.12.07, which
incorporates this upstream change[1] in [2]. Please also see the
upstream issue[3].

I'm not sure why we used ansible_fqdn in the first place as
inventory_hostname should be preferred (as we define it ourselves).

[1] ce266330fc
[2] fc84245e3e
[3] https://github.com/systemd/systemd/issues/20358
2024-08-18 18:01:56 +02:00
Kristian Klausen
c9a24e94d1
prometheus: Use new flag for enabling remote write receiver[1]
[1] 8fdfa52976
2024-08-18 16:57:34 +02:00
Jelle van der Waa
2b67a0c0c1
archweb: enable Prometheus metrics for requests
Archweb now exports Prometheus status via /metrics with request duration
information.
2024-07-29 21:24:27 +02:00
Jelle van der Waa
7a9f7648da
prometheus: scape websites every minute
As we aren't the speediest at checking, this is fine.
2024-07-18 09:48:46 +02:00
Kristian Klausen
f0b40161ac
prometheus: Add missing monitoring of new pacman subdomain
Fixes: c55b448c ("Add GitLab Pages for pacman")
2024-06-08 20:18:48 +02:00
Kristian Klausen
d5f5cf6b52
Cleanup flyspray leftovers
Fixes: 4e5550a8 ("Decommission bugs.archlinux.org and replace it with a static copy[1]")
2024-03-17 00:18:10 +01:00
Kristian Klausen
e0423d7e0b
Make the "Geo Mirrors" dashboard and metrics publicly available
This may be interesting for our mirror administrators and mirror owners.

I tried backfilling the data, but was unsuccessful, due to a bug[1]. We
may try again if/when the bug is fixed.

[1] https://github.com/prometheus/prometheus/issues/13747
2024-03-16 22:45:18 +01:00
Kristian Klausen
1576ee7027
Add GitHub Pages for archinstall[1]
I don't expect more GitHub Pages to be set up, so using a explict
resource instead of abstracting it, is fine I think.

[1] https://github.com/archlinux/archinstall/issues/2098
2023-11-22 20:46:56 +01:00
Kristian Klausen
d0587003a5
prometheus: Fix alpm-types URL not pointing to a 2xx page
The HTTP code must be 2xx for probe_success to indicate that the probe
succeeded, if not an alert will be sent.

Fixes: 653f8011 ("Add GitLab Pages for alpm-types[1]")
2023-07-15 13:36:52 +02:00
Kristian Klausen
653f8011db
Add GitLab Pages for alpm-types[1]
[1] https://gitlab.archlinux.org/archlinux/alpm/alpm-types/-/issues/36
2023-07-10 17:35:48 +02:00
Jelle van der Waa
0235da01bf
Collect flyspray open issues 2023-06-25 17:35:05 +02:00
Kristian Klausen
5fbf3652f9
Move GitLab's container registry to a dedicated domain (registry.al.org)
It looks more professional and we can move it to a dedicated box if the
load increases.
2023-04-02 16:57:39 +02:00
Evangelos Foutras
9338663fce
Replace runner2 with runner3 (with the same specs)
Equinix's AMS1 DC is being shut down so we need to recreate this box.

For Geo variety, this one is created in Frankfurt instead of Amsterdam.

Ref #495
2023-02-11 17:28:19 +02:00
Evangelos Foutras
6a55c9009f
Replace repro1 with repro3 (same CPU, 32G->64G RAM)
Equinix's AMS1 DC is being shut down so we need to recreate this box.

Ref #495
2023-02-11 16:48:58 +02:00
Evangelos Foutras
268b6003e4
prometheus: disable HostUnusualNetworkThroughputOut
This alert only triggers for america.mirror.pkgbuild.com. Ideally, we
should be able to increase the trigger point for high-bandwidth boxes.
I don't see a straightforward way to implement it, so disable for now.
2023-01-23 20:41:31 +02:00
Evangelos Foutras
0f8ef2c479
Add GitLab Pages for "rfc"
Ref: https://gitlab.archlinux.org/archlinux/rfcs/-/merge_requests/15
2022-11-17 22:29:27 +02:00
Evangelos Foutras
9d8146c844
prometheus: restore conf.d/prometheus default perm
No reason this should be 0600 as it doesn't contain any sensitive data;
switch it back to the package's default permissions of 0644.
2022-11-12 20:40:54 +02:00
Evangelos Foutras
ed19221404
keycloak: remove /auth from all Keycloak endpoints
From [1]: "By default, the new Quarkus distribution removes /auth from
           the context-path."

[1] https://www.keycloak.org/migration/migrating-to-quarkus
2022-11-12 17:33:36 +02:00
Leonidas Spyropoulos
87b2eddfae
aurweb: enable goaurrpc metrics and dashboard
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
Co-authored-by: Kristian Klausen <kristian@klausen.dk>
Co-authored-by: moson-mo <mo-son@mailbox.org>
2022-10-21 15:57:44 +01:00
Kristian Klausen
f5f5b4c733
WireGuard the remaining Prometheus exporters
WireGuard was setup to provide a internal network with confidentiality,
authenticity and integrity[1]. This migrate the remaining Prometheus
exporters to use the internal WireGuard network.

[1] 664deb67 ("WireGuard all hosts")

Fix #384
2022-10-16 16:56:41 +02:00
Evangelos Foutras
29aaed2bd0
syncriscv: add role for mirroring the RISC-V port
Going to be served by all our Geo boxes under riscv.mirror.pkgbuild.com.
2022-09-16 22:22:43 +03:00
Evangelos Foutras
578b781966
Capitalize the handler name in handler invocations
Fixes: 26f289b72bfb ("Capitalize the first letter of all task names")
2022-08-29 21:46:39 +03:00
Evangelos Foutras
26f289b72b
Capitalize the first letter of all task names
ansible-lint 6.5.0 complains about:

  name: All names should start with an
        uppercase letter. (name[casing])
2022-08-23 06:57:13 +03:00
Evangelos Foutras
b6675db5e6
Add new mirrors in Seoul and Sydney 2022-07-10 12:42:15 +03:00
Kristian Klausen
cebfe91ed1
Add GitLab Pages for "Monthly Reports"
Ref: https://gitlab.archlinux.org/archlinux/monthly-reports/-/merge_requests/1
2022-07-03 13:21:47 +02:00
Kristian Klausen
6559224bc8
Add GitLab Pages for "repod"
Ref: https://gitlab.archlinux.org/archlinux/repod/-/merge_requests/65
2022-07-03 13:21:44 +02:00
Kristian Klausen
6159b411a1
Add new domain for project documentation (archlinux.page)
We want non-DevOps to be able to deploy project documentation (ex:
repod) with GitLab Pages and a separate domain was considered the only
sensible solution due to security issues[1].

[1] https://github.blog/2013-04-09-yummy-cookies-across-domains/
2022-07-03 13:21:40 +02:00
Evangelos Foutras
1234dcec73
prometheus: split crt.sh lookups into new script
roles/prometheus/defaults/main.yml used to include a comment with the
commands used to generate a list of HTTPS endpoints to check. Move it
into a proper script and fix it to generate the correct current list.
2022-06-19 20:03:46 +03:00
Evangelos Foutras
a9e0790f53
Remove the three dashes from all YAML documents
These are used to signal the start of the document in a stream of many
documents. As Ansible only supports one YAML document per file this is
unnecessary. About a third of our YAML documents already lacked these.
2022-06-08 14:35:45 +03:00
Evangelos Foutras
3ab65485e8
prometheus: extend dns monitoring to all geo domains 2022-05-14 14:22:40 +03:00
Evangelos Foutras
afb582b108
geomirror: extract acme dns challenge into new role
- add the new role to redirect.archlinux.org
- release mirror.pkgbuild.com of all DNS duties
2022-05-14 14:22:32 +03:00