Benutzer-Werkzeuge

Webseiten-Werkzeuge


infrastruktur:server:magrathea

magrathea

magrathea ist ein Server bei Hetzner. Dort laufen mehrere VMs und Container, die Dienste für das Chaotikum bereitstellen.

Verantwortung Paul, Wupo
Zustand Produktiv

Administrativen Zugriff auf den Server haben:

  • Nils
  • Lukas
  • wupo
  • Malte
  • toxicity
  • Fabi
  • starborn
  • Paul
  • dj-wawa
  • Linus

Eine Entsprechende Gruppe (magrathea admins) existiert im Redmine Infra Projekt und muss angepasst werden, wenn diese Liste angepasst wird. Das können Redmine Admins.

Netzwerkdaten

  • IPv6-Addresse: 2a01:4f8:262:48c2::1/64
  • IPv4-Addresse: 138.201.66.177/32
  • IPv4-Subnet: 5.9.249.24/29
  • VMs-Subnetz v4: 192.168.1.0/24
  • VMs-Subnetz v6: 2a01:4f8:262:48c2:1::/80
  • Docker-Subnetz: 2a01:4f8:262:48c2:3::/80

Öffentliche IPv4

Service-Container bekommen nicht selbst öffentliche IP-Adressen, sondern werden per DNAT oder Reverse Proxy angebunden. Außer es ist zwingend notwendig. Für solche Fälle steht haben wir das subnet 5.9.249.24/29.

IP Funktion
5.9.249.24 magrathea
5.9.249.25 git
5.9.249.26 video
5.9.249.27 FFHL-test-gw
5.9.249.28 web-reverse-proxy
5.9.249.29 ffhl-srv02
5.9.249.30
5.9.249.31

IPv6 & internes IPv4

Als internes Netzwerk wird das öffentliche IPv6-Prefix 2a01:4f8:262:48c2:1::/80 verwendet.

Identifier IPv6-suffix IPv4 Funktion
vms ::1 192.168.1.1 default gateway für container/vm
ffhl-gluon01 ::2 192.168.1.2 „Freifunk Router“ für ffhl-srv02
ffhl-srv02 ::3 192.168.1.3, 5.9.249.29 ffhl-srv02
monitoring ::4 192.168.1.4 monitoring
gitlab ::5 192.168.1.5 git
codi ::6 192.168.1.6
social ::6 192.168.1.6 social
pad ::7 192.168.1.7 etherpad
ldap ::8 192.168.1.8 ldap
web ::a 192.168.1.10 NGINX reverse proxy (web)
runner-magrathea ::b 192.168.1.11 gitlab-runner
roundcube ::e 192.168.1.14 roundcube
dokuwiki ::f 192.168.1.15 dokuwiki
gitlab-runner ::10 192.168.1.16 gitlab-runner02
pretix ::12 192.168.1.18
redmine ::13 192.168.1.19 redmine
md ::15 192.168.1.21 md
ffhl-blackbox ::16 192.168.1.22 monitoring ffhl
mail ::25 192.168.1.25 mail
ffhl-gw05 ::1a 192.168.1.26 ffhl-gw05
keycloak ::27 192.168.1.39 keycloak
sediment ::37 192.168.1.55 sediment
video ::26 176.9.147.89, 192.168.1.38 video-storage
nextcloud ::38 192.168.1.56 nextcloud
website ::39 192.168.1.57 website
torproxy ::3a 192.168.1.58
zammad ::3b 192.168.1.59 zammad
openproject ::3c 192.168.1.60 openproject
keycloak2 ::3d 192.168.1.61 keycloak2
syncthing-server ::3e 192.168.1.62 syncthing-server
wupo ::3f 192.168.1.63 wupo
kali ::4c 192.168.1.64
todo ::40 192.168.1.65 todo
docker01 ::41 192.168.1.66 docker01
presence ::42 192.168.1.67 presence
uptime-kuma ::46 192.168.1.70 uptime kuma
vapi ::47 192.168.1.71 vAPI
nooksite-server ::48 192.168.1.72 Server zum Speichern der Einreichungen der NooK
matamo :49 192.168.1.73
listmonk :4a 192.168.1.74 listmonk
postkontor :4b 192.168.1.75
welcome-bot :4c 192.168.1.76 matrix-welcome-bot
verleih-mail-service :4d 192.168.1.77 verleih-mail-service

Wer dieser Liste etwas hinzufügen möchte und nicht besser weiß, was er/sie tut, ist wahrscheinlich gut bedient damit einen neuen Container anzulegen. Wie das geht steht weiter unten.

Docker Netz

Nicht aktiv! (01.10.2022)

2a01:4f8:262:48c2:3::/80

Identifier IPv6-suffix Funktion
docker-host ::1 Gateway
nooksite-server ::aaaa Server für Einreichungen auf der NooK-Website
nooksite-feedback ::aaab Server für Feedback auf der Nook-Website
test ::abcd test

VMs

Laufende VMs

ffhl-gluon01ffhl-gluon01 Uplink ins FF-Netz für ffhl-srv02 Verantwortung FFHL (paul, yksflip, linus) Hostname IPv6 keine IPv4 keine/NAT
ffhl-srv02ffhl-srv02 Service VM für ffhl Verantwortung FFHL (paul, yksflip, linus) Hostname srv02.luebeck.freifunk.net IPv6 2a01:4f8:160:3067::3 IPv4 5.9.249.24

Derzeit nicht laufende VMs

Zugang zum Management Interface

Das proxmox interface ist unter magrathea.chaotikum.net:8006

Die Zugänge werden nicht über das zentrale LDAP verwaltet

Wenn du Zugriff benötigst, wende dich an die Infrastruktur AG

Container

Container sind per Default nur per IPv6 aus dem Internet erreichbar. Soll ein Service auch über IPv4 nutzbar sein, so sollte die Domain für den Server als CNAME auf gallifrey.chaotikum.net konfiguriert werden und die benötigten Ports per DNAT weitergereicht werden (IPv4 + IPv6).

Der Eintrag eines CNAMEs findet auf inwx.com statt, Zugang zum Account des Chaotikums hat der Vorstand. Dort ist unter DomainDomain List die Domain auszuwählen, zu der eine Subdomain erstellt werden soll. Unten DNS Records auswählen und einen neuen Eintrag entsprechend zu einem funktionierenden alten hinzufügen.

Produktive

DockerDocker Verantwortung Paul Container docker01 W. Ports ? OS ? Server magrathea Zustand Produktiv infrasystem container magrathea ldapconnected productive Services Network
DokuwikiDokuwiki Verantwortung Toxicity Container dokuwiki W. Ports keine OS Debian 12.5 Server magrathea Zustand
PadPad Verantwortung Paul Container pad W. Ports keine OS Debian 10.11 Server magrathea Zustand Produktiv
GitlabGitlab Verantwortung Malte Container gitlab W. Ports keine OS Debian 11.11 Server magrathea Zustand
gitlab-runner magratheagitlab-runner magrathea Verantwortung Paul Container/VM gitlab-runner W. Ports keine OS Debian 12.5 Server
KeycloakKeycloak Verantwortung Malte, TVLuke Container keycloak W. Ports keine OS Debian 12.5 Server magrathea Zustand
LDAPLDAP Verantwortung Malte, TVLuke Container ldap W. Ports ldaps (tcp/636) OS Debian 12.5 Server gallifrey Zustand
ListmonkListmonk Verantwortung Paul Container Über portainer im docker W. Ports keine OS ? Server magrathea Zustand Produktiv infrasystem container magrathea ldapconnected ldapmembersonly productive Hier findet sich die technische Dokumentation der Chaotikum Listmonk. Die Nutzungshinweise zu unserem Cloudspeicher findest du
MailMail Verantwortung Kai, Max Container mail W. Ports keine OS Debian 10.13 Server magrathea Zustand Produktiv
Matrix Welcome BotMatrix Welcome Bot Verantwortung TVLuke Container welcome-matrix-bot W. Ports ? OS ? Server magrathea Zustand
md (Hedgedoc)md (Hedgedoc) Verantwortung Malte Container md W. Ports keine OS Debian 12.5 Server magrathea Zustand
MonitoringMonitoring Verantwortung Paul Container monitoring W. Ports keine OS Debian 11.4 Server magrathea Zustand Produktiv
NextcloudNextcloud Verantwortung wupo (wupo@chaotikum.org), Paul, Max Container nextcloud W. Ports keine OS Debian 11.8 Server magrathea
PostkontorPostkontor Verantwortung TVLuke Container postkontor W. Ports ? OS ? Server magrathea Zustand testing
PresencePresence Verantwortung TVLuke Container presence W. Ports ? OS ? Server magrathea Zustand produktiv
PretixPretix Verantwortung TVLuke, Paul Container pretix W. Ports keine OS Debian 11.5 Server magrathea Zustand Produktiv
RedmineRedmine Verantwortung TVLuke Container redmine W. Ports keine OS Debian 10.11 Server magrathea Zustand Produktiv
RoundcubeRoundcube Verantwortung max, Kai Container roundcube W. Ports keine OS Debian 10.11 Server magrathea Zustand Produktiv
SedimentSediment Verantwortung Malte Container sediment W. Ports keine OS Debian 12.5 Server magrathea Zustand
SocialSocial Verantwortung Starborn, Wupo Container social W. Ports keine OS Debian 11.2 Server magrathea Zustand Produktiv infrasystem container magrathea ldapconnected ldapmembersonly productive Hier findet sich die technische Dokumentation des Chaotikum Social Server, der im Moment die Anwendung „Mastodon” umfasst. Die Nutzerdoku findet sich
VideoVideo Verantwortung Malte Container videostorage W. Ports keine OS Debian 11.9 Server magrathea Zustand
WebWeb Verantwortung Paul, Wupo Container web W. Ports 80, 443 OS Debian 12.1 Server magrathea Zustand
Chaotikum-WebsiteChaotikum-Website Verantwortung Malte Container chaotikum-website W. Ports keine OS Debian 12.5 Server magrathea Zustand
WupoWupo Verantwortung Wupo Container wupo W. Ports 443,80 OS Debian 11.11 Server magrathea Zustand
ZammadZammad Verantwortung Malte Container zammad W. Ports keine OS Debian 12.8 Server magrathea Zustand

Im Test

Open ProjectOpen Project Verantwortung doralitze Container openproject W. Ports keine public address/domain openproject.chaotikum.net
Verleih Mail ServiceVerleih Mail Service Verantwortung TVLuke Container verleih-mail-service W. Ports ? OS ? Server magrathea

Deaktiviert

CodiCodi Verantwortung Container codi W. Ports keine OS Debian 10.10 Server magrathea Zustand Aus infrasystem container magrathea inactive Codi ist tot. Wir haben jetzt ein
JitsiJitsi Verantwortung ? Container ? W. Ports 10000/udp OS ? Server magrathea Zustand Produktiv container magrathea world inactive
MatrixMatrix Verantwortung Paul Container Matrix W. Ports TBA OS Debian unstable Server magrathea Zustand Testbetrieb
PeertubePeertube Verantwortung Paul Container peertube W. Ports keine OS debian11 (bullseye) Server magrathea Zustand testing
SpaceDeckSpaceDeck Verantwortung Paul Container spacedeck W. Ports keine OS debian10 Server magrathea Zustand deleted
TheLoungeTheLounge Verantwortung Paul Container thelounge W. Ports keine OS debian10 Server magrathea Zustand
WhitebboardWhitebboard Verantwortung paul Container whiteboard W. Ports keine OS debian10 Server magrathea Zustand deleted
WorkadventureWorkadventure Verantwortung ? Container ? W. Ports keine OS ? Server magrathea Zustand Produktiv

Gelöscht

Aufsetzen eines neuen Containers

Zunächst muss eine freie IP-Adresse für den neuen Container gefunden werden. Schaue dafür in der Liste oben nach. Versuche, die IPs möglichst fortlaufend auszuwählen.

  • General
    • Klicke oben rechts auf „Create CT“
    • Trage einen Hostname ein, wähle bei Resource Pool „chaotikum“ aus
    • Trage deinen SSH key ein
  • Template
    • Wähle deinen Container Template. In den meisten Fällen debian-11.
  • Disks
    • Wähle bei disksize eine angemessene Größe aus
      • Achtung: Die Disk später größer machen geht immer. Die Disk shrinken allerdings nicht. Also mache sie im Zweifelsfall eher etwas kleiner
  • Memory
    • 2048 ist für den Anfang eine Guter Richtwert
    • Kann später während der Runtime noch verändert werden
  • Networks
    • Trage bei jeweils deine IPv4 und IPv6 Adressen ein mit einer Netzmaske von /24 (IPv4) und /80 (IPv6)
    • Default Gateway ist jeweils 192.168.1.1 und 2a01:4f8:262:48c2:1::1
  • Confirm
    • Finish!
  • Damit der Container automatisch startet, setze unter Options Autostart auf yes

Letzter aber wichtigster Schritt: Dokumentation im Wiki erstellen

Docker

Dieser Teil ist nicht mehr aktuell (07.10.2022)

Auf Magrathea läuft docker. Das Netz für docker ist 2a01:4f8:262:48c2:3::/80.

Die Container sind per default nicht von außen erreichbar, können aber von dem VM-Netz angesprochen werden (z.B. für vom Web-container)

Ein docker-compose könnte so aussehen:

version: '3'
services:
  test:
    image: nginxdemos/hello
    restart: always
    networks:
      public:
        # IP-Belegung beachten! (Tabelle oben)
        ipv6_address: 2a01:4f8:262:48c2:3::abcd

networks:
  public:
    external:
      name: services

Backup

Backups werden täglich um 4 Uhr gemacht.

Also Storage wird ein Proxmox Backup Server benutzt. Der Backupserver läuft als VM im nsbp auf Case.

Um Backups zu restoren ist kein Zugriff auf den Backupserver nötig. Alle verfügbaren Backups sind über das Proxmox Interface von magrathea sichtbar.

Anstatt eine gesamte VM/Container zu restoren, können auch nur einzelne Dateien restored werden. Welche Datei das sein soll, lässt sich ebenfalls über das Webinterface auswählen.

Name

Magrathea is a fictional planet in the „Hitchhiker's Guide to the Galaxy“ book series. Magrathea is an ancient planet located in orbit around the twin suns Soulianis and Rahm in the heart of the Horsehead Nebula. https://hitchhikers.fandom.com/wiki/Magrathea

infrastruktur/server/magrathea.txt · Zuletzt geändert: 24.05.2024 19:38 von Lukas Ruge