-
Kristian Klausen authored
We want to have the repos and the archive on different servers, to ensure separation of concerns. The I/O on gemini is also very sluggish, which is likely related to the archive design (millions of files on spinning rust), and this has resulted in rsync deleting the package database files due to a race condtion[1][2]. The does not solve the race condition, but it should make it less likely. We also need to rethink the archive design, but for now we are just isolating the problem. There is some "brokenness" related to the archive no longer being on the same server as the repos, which will be fixed in subsequent commits. [1] https://lore.kernel.org/linux-btrfs/00ed09b9-d60c-4605-b3b6-f4e79bf92fca@foutras.com/ [2] https://lore.kernel.org/linux-btrfs/ZP8AWKMVYOY0mAwq@debian0.Home/ Relates to #531
Kristian Klausen authoredWe want to have the repos and the archive on different servers, to ensure separation of concerns. The I/O on gemini is also very sluggish, which is likely related to the archive design (millions of files on spinning rust), and this has resulted in rsync deleting the package database files due to a race condtion[1][2]. The does not solve the race condition, but it should make it less likely. We also need to rethink the archive design, but for now we are just isolating the problem. There is some "brokenness" related to the archive no longer being on the same server as the repos, which will be fixed in subsequent commits. [1] https://lore.kernel.org/linux-btrfs/00ed09b9-d60c-4605-b3b6-f4e79bf92fca@foutras.com/ [2] https://lore.kernel.org/linux-btrfs/ZP8AWKMVYOY0mAwq@debian0.Home/ Relates to #531
- Servers
- Table of contents
- gemini
- Services
- lists.archlinux.org
- Services
- archlinux.org
- Services
- aur.archlinux.org
- Services
- bbs.archlinux.org
- Services
- phrik.archlinux.org
- Services
- state.archlinux.org
- Services
- quassel.archlinux.org
- Services
- matrix.archlinux.org
- Services
- homedir.archlinux.org
- Services
- accounts.archlinux.org
- Services
- mirror.pkgbuild.com
- Services
- reproducible.archlinux.org
- Services
- runner1.archlinux.org
- runner3.archlinux.org
- Services
- mail.archlinux.org
- Services
- monitoring.archlinux.org
- Services
- mumble.archlinux.org
- Services
- dashboards.archlinux.org
- Services
- redirect.archlinux.org
- Services
- repos.archlinux.org
- Services
- security.archlinux.org
- Services
- wiki.archlinux.org
- Services
- md.archlinux.org
- Services
- Archive Mirrors
- Servers
- gitlab.archlinux.org
- Services
Servers
Table of contents
-
Servers
- Table of contents
- gemini
- lists.archlinux.org
- archlinux.org
- aur.archlinux.org
- bbs.archlinux.org
- phrik.archlinux.org
- state.archlinux.org
- quassel.archlinux.org
- matrix.archlinux.org
- homedir.archlinux.org
- accounts.archlinux.org
- mirror.pkgbuild.com
- reproducible.archlinux.org
- runner1.archlinux.org
- runner3.archlinux.org
- mail.archlinux.org
- monitoring.archlinux.org
- mumble.archlinux.org
- dashboards.archlinux.org
- redirect.archlinux.org
- repos.archlinux.org
- security.archlinux.org
- wiki.archlinux.org
- md.archlinux.org
- Archive Mirrors
- gitlab.archlinux.org
gemini
Services
- archive (archive.archlinux.org)
lists.archlinux.org
Services
- mailman
archlinux.org
Services
- archweb (Arch's site)
aur.archlinux.org
Services
- aurweb
bbs.archlinux.org
Services
- bbs
phrik.archlinux.org
Services
- phrik (irc bot) users in the phrik group defined in the hosts vars and re-used the archusers role. Users in the phrik group are allowed to restar the irc bot.
state.archlinux.org
Services
- postgres server for terraform state
quassel.archlinux.org
Services
- quassel core
matrix.archlinux.org
Services
- Matrix homeserver (Synapse)
- Matrix
IRC bridge
homedir.archlinux.org
Services
- ~/user/ webhost
accounts.archlinux.org
This server is special. It runs keycloak and is central to our unified Arch Linux account management world.
It has an Ansible playbook for the keycloak service but that only installs the package and starts it but it's configured via a secondary Terraform file only for keycloak keycloak.tf
.
The reason for doing it this way is that Terraform support for Keycloak is much superior and it's declarative too which is great for making sure that no old config remains in the case of config changes.
So to set up this server from scratch, run:
cd tf-stage1
terraform apply
cd ../tf-stage2
terraform import keycloak_realm.master master
terraform apply
Services
- keycloak
mirror.pkgbuild.com
Services
- Regular mirror.
reproducible.archlinux.org
Services
- Runs a master rebuilderd instance
with two workers:
- repro2.pkgbuild.com (Kape server with an EPYC 7702P and 256G RAM)
- repro3.pkgbuild.com (Equinix Metal box with a Xeon E-2278G and 64G RAM)
runner1.archlinux.org
Medium-fast-ish Kape Arch Linux box.
runner3.archlinux.org
Medium-fast-ish Equinix Metal Arch Linux box.
Services
- GitLab runner
mail.archlinux.org
Services
- postfix (mail server)
- rspamd
- dovecot (imap)
monitoring.archlinux.org
Prometheus, Loki and Grafana server which collects performance/metrics and logs from our services and runs alertmanager.
Services
- Alertmanager
- Grafana and docs/grafana.md
- Prometheus
mumble.archlinux.org
Services
- Mumble
dashboards.archlinux.org
Prometheus, and Grafana server which receives selected performance/metrics from monitoring.archlinux.org and make them public accessible.
Services
- Grafana and docs/grafana.md
- Prometheus
redirect.archlinux.org
Services
- Redirects (nginx redirects)
- Authoritative DNS server (PowerDNS) for ACME DNS challenges
- ping
repos.archlinux.org
Services
- repos/sync (repos.archlinux.org)
- sources (sources.archlinux.org)
security.archlinux.org
Services
- security tracker
wiki.archlinux.org
Services
- archwiki
md.archlinux.org
Online collborative markdwown editor for Arch Linux Staff.
Services
Archive Mirrors
The Arch Linux Archive is mirrored to three dedicated servers to help aid global availability.
Servers
- https://america.archive.pkgbuild.com
- https://asia.archive.pkgbuild.com
- https://europe.archive.pkgbuild.com
gitlab.archlinux.org
Services
- GitLab