Proxmox Virtual Environment (PVE) - tokoeka.netzwissen.de

Die Architektur lehnt sich an die three tier Architektur professioneller Rechenzentren an. Applikations-Server sind nicht "internet-facing", sondern werden über den SSL Accelerator/Load Balancer adressiert. ssh Zugriff ist nur aus dem internen Netz des Root Servers möglich.

Ein zentraler haproxy Container dient als SSL Accelerator (optional für Load Balancing). Applikationen laufen in lxc Containern. die, wo immer möglich, Unprivileged laufen. Wo es sinnvoll ist, werden mehrere Services in einem gemeinsamen Container zusammengefasst. Leistungs-hungrigere virtuelle Maschinen unter KVM werden nur genutzt, wenn Anwendungen selbst als Container in einem Docker-Host laufen (docker1, docker2, docker3).

Datenbanken laufen in getrennten Datenbank-Containern für mariadb und postgresql, getrennt vom Applikations-Container. Persistente Daten werden in eigenen *.raw oder *.qcow Images geführt. Backups landen über PVE auf einer separaten Hetzner storagebox. PVE nutzt zur Zeit noch kein Clustering und keine Object-Storage (CEPH, AWS S3), kann aber umgestellt werden.

112 Load Balancer lb1 - devel.netzwissen.de

extern 138.201.52.38 , intern 10.10.10.21

DNS: Hosts/Services gehen per CNAME auf devel.netzwissen.de

Haproxy nimmt https Request an, agiert als ssl Accelerator und verteilt Web-Services auf die app Server

optional: Load Balancing

der lokale sshd ist verlegt auf 222.

108 Identity Provider kc1 - login.netzwissen.de

10.10.10.20

keycloak 20.x

haproxy reverse proxy » 8080

https://www.keycloak.org/documentation

https://www.keycloak.org/getting-started/getting-started-zip

https://www.keycloak.org/docs/latest/server_installation/index.html

Daten

123 db1b - 10.10.10.16

ubuntu 20.04 focal (upd. 7.5.23)

mariadb 10.4

Web Administration https://netzwissen.de/phpmyadmin/ (» app1)

124 db2b - 10.10.10.18

Zentrale postgresql Datenbank

Web Administration https://netzwissen.de/phppgadmin/ (» app1)

103 db3b - 10.10.10.35

Zentrale mongodb Datenbank

V 4.4.4

turnkeylinux

Applikationsserver

111 app1 - devel.netzwissen.de

10.10.10.22

10.10.10.22:82 hugo

https://www.netzwissen.de/phpmyadmin nach db1

https://www.netzwissen.de/phppgpadmin nach db2

Ubuntu 22 LTS jammy

php 8

APACHE

113 app2 - 10.10.10.25

https://passbolt.netzwissen.de » 10.10.10.25:81 - cake php

https://cryptpad.netzwissen.de » 10.10.10.25:3020 - nodejs

Ubuntu 20 LTS focal

NGINX

121 app3old - 10.10.10.26 INACTIVE

https://cloud.netzwissen.de (ownCloud Enterprise) » 10.10.10.26:83

https://wiki.netzwissen.de » 10.10.10.26:82

Ubuntu 22 LTS jammy

APACHE

php 7.4 + 8

» update-alternatives –config php

127 app3 - cloud.netzwissen.de

10.10.10.26:83 ownCloud Enterprise

Ubuntu 20 LTS focal

APACHE

php 7.4

recovered from snapshot 04.03.23

117 app4 - 10.10.10.27

https://solardenkmaeler.de (p.81)

https://freifunk-esslingen.de (p.82)

https://netzwissen.eu (p.83)

Ubuntu 20 LTS focal

NGINX

118 app5 - 10.10.10.28 INACTIVE

Python 3.8 environment, python-venv

https://mv.netzwissen.de openslides 3.3 mit DB Backend postgresql (db2)

Ubuntu 20 LTS focal

100 app6 - netzwissen.de

10.10.10.30

https://netzwissen.de » /var/www/netzwissen.de

https://netzwissen.de/matomo/ » /var/www/matomo

https://netzwissen.de/webmail/ » roundcube /var/www/roundcube

ubuntu 22.04 LTS jammy, php 8

APACHE

125 app7 - 10.10.10.37

pixelfed

122 app8 - matrix.netzwissen.de

10.10.10.36

Dendrite (Go)

115 app9 - 10.10.10.23 INACTIVE

10.10.10.23 port 80 (nginx)

OCIS Prod

110 app10 - wiki.netzwissen.de

10.10.10.19 port 82 (apache2)

ubuntu 22.04 LTS

php 8

126 app11 - 10.10.10.17

10.10.10.19 port 82 (apache2)

ubuntu 22.04 LTS

php 8

109 app12 - 10.10.10.38

ubuntu 20.04 LTS

128 app14 - 10.10.10.38 INACTIVE

ubuntu 20.04 LTS

114 mail - Mail Server - mail.netzwissen.de

extern IP 136.243.85.153 (war bis 21.5.22: mail1.netzwissen.de 138.201.52.27)

lxc mail1 114

dovecot imaps pops

postfix smtp

ubuntu 20.04 LTS

http://mghadam.blogspot.com/2019/11/how-to-proxy-ssl-imappop3smtp-using.html

https://wiki.dovecot.org/HAProxy

https://www.haproxy.com/de/blog/efficient-smtp-relay-infrastructure-with-postfix-and-load-balancers/

119 gitea1 - gitea.netzwissen.de

gitea.netzwissen.de geht wg. der ssh port 22 Verwaltung über gitea NICHT über den load balancer lb1. Der normale ssh Port wird nur für git genutzt, Shell Zugang nur vom Host aus über pct enter.

10.10.10.29, extern 136.243.85.155

https://gitea.netzwissen.de

letsencrypt lokal

gitea horcht auf localhost:3010 - golang, systemd

NGINX reverse proxy

102 idp5 - 10.10.10.17 KVM INACTIVE

Univention UCS - nur temporär (138.201.52.53)

Docker VMs

120 docker1 10.10.10.14

Portainer: p. 8000

Passbolt: p. 8002

Hedgedoc: p. 8004

DRONE: p. 8010

OpenSlides: under construction

116 docker2 10.10.10.33

forum.netzwissen.de

Discourse

p. 10.10.10.33:84

Container local_discourse/data

Container local_discourse/web_only

talk.netzwissen.de

Rocket Chat 5.x

p. 10.10.10.33:3000

https://talk.netzwissen.de

Container rocket.chat

Container bitnami/mongodb:4.4

104 docker3 10.10.10.35

* ubuntu 22.04 LTS jammy * docker CE * portainer p. 8000