You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.4 KiB

Server Infrastruktur

Sammlung von Ansible Playbooks und Roles zur verwaltung der Server infrastruktur. Als Blaupause habe ich die Arch Infrastructur von archlinux.org verwendet.

Playbooks

install-arch.yml

Mit diesem Playbook kann bei Hetzner im Robot eine frische Arch Linux installation aufgesetzt werden. Der Server wird hierzu in den Rescue-Modus versetzt, aus Sicherheitsgründen wird dies derzeit nicht automatisiert durchgeführt. Danach werden die Festplatten formatiert und zu einem RAID1 Verbund vereint. Anschließend wird das aktuelle Arch Linux Image geladen und installiert. Nach der Netwerkkonfiguration und der Aktivierung von SSH wird der Server neu gestartet und der aktuelle SSH-Key aus der knownhosts datei gelöscht.

Start des Playbooks: ansible-playbook playbooks/install-arch.yml -l $host

Für das Playbook werden folgende Variablen benötigt:

Variable Wert Bedeutung
hostname Der Name des hosts der aufgesetzt werden soll
ipv4_address Die IPv4 addresse des hosts
ipv4_netmask "/32" Die verwendete Maske für das Netzwerk
ipv6_address siehe ipv4
ipv6_netmask "/128" siehe ipv4
ipv4_gateway die Adresse des Gateways
ipv6_gateway
filesystem btrfs oder ext4 Wahl des filesystems für den host

Die Variablen werden unter host_vars in der datei abgelegt.

All-hosts-basic

Dieses Playbook richtet eine frische Installation ein indem es nützliche Tools installiert, User anlegt, das Netwerk einrichtet und somit eine Basis für ein System herstellt.

ansible-playbook playbooks/all-hosts-basic.yml -l $host

Informationen zu den Installierten tools finden sie in der Datei roles/tools/tasks/main.yml. Die Nutzer werden in group_vars/all/archusers.yml definiert und ihre Publickeys unter publickeys/<username>.pub abgelegt.

ToDo

  • borg-server einrichtung (auf Synology)
  • Monitoring
  • LXC-Container Installation und Verwaltung