docs, config and ansible stuff for the "Erstaufnahmeeinrichtung Am Deutschen Platz"
 
 
 
Go to file
Gregor Michels fcc5e277dd monitoring: rename ansible install prometheus task 2022-07-13 01:31:09 +02:00
ansible-environment add venv for ansible 2022-07-03 01:24:40 +02:00
documentation documentation: first rework 2022-07-03 03:25:42 +02:00
files monitoring: prometheus: add simple alerting rule 2022-07-13 01:27:07 +02:00
password-store pass: add mailbox pw ffl-eae-adp-mon01@brainpeach.de 2022-07-13 01:22:44 +02:00
templates monitoring: configure alertmanager to send mails 2022-07-13 01:29:46 +02:00
.gitignore add a way to build an offline copy of the documentation 2022-07-03 02:13:11 +02:00
README.md README: fix documentation link 2022-07-03 03:27:37 +02:00
ansible-environment.txt add venv for ansible 2022-07-03 01:24:40 +02:00
ansible-inventory rename some ansible files/directories 2022-07-03 02:07:50 +02:00
ansible.cfg rename some ansible files/directories 2022-07-03 02:07:50 +02:00
environment environment: also configure http(s) proxy and enter python venv 2022-07-03 02:07:50 +02:00
playbook_create_ssh_config.yml playbook_create_ssh_config: make jumphosts possible 2022-06-30 01:41:11 +02:00
playbook_distribute_authorized_keys.yml playbook_distribute_authorized_keys: make available on all platforms! 2022-06-30 02:38:24 +02:00
playbook_provision_accesspoints.yml accesspoints: also install iwinfo 2022-07-03 00:43:26 +02:00
playbook_provision_backbone.yml poc for tunnel provisioning 2022-06-28 21:59:22 +02:00
playbook_provision_eap-adp-jump01.yml eae-adp-jump01: install prometheus node_exporter 2022-07-03 02:14:44 +02:00
playbook_provision_hyper01.yml add playbook_provision_hyper01 2022-07-03 02:07:50 +02:00
playbook_provision_monitoring.yml monitoring: rename ansible install prometheus task 2022-07-13 01:31:09 +02:00

README.md

Freifunk Leipzig - Erstaufnahme Einrichtung - Am Deutschen Platz

This repo contains the config and documentation for our installation at the "Erstaufnahme Einrichtung - Am Deutschen Platz"


this is a work in progress


Usage

Requirements

  • pass (password manager)
  • pandoc (offline documentation generation)
  • python3 (ansible)
  • python3-venv (ansible)
  • rsync (ansible)

Initial Setup

  1. install requirements
  2. clone repo and change directory: git clone https://git.sr.ht/~hirnpfirsich/ffl-eae-adp && cd ffl-aea-adp
  3. create python3 virtual enviroment: python3 -m venv ansible-environment
  4. enter python3 virtual environment: . ansible-environment/bin/activate
  5. install ansible and dependencies: pip3 install -r ansible-environment.txt
  6. import all gpg keys for pass: gpg --import files/gpg/*
  7. trust all imported gpg keys: gpg --edit-key <id> with trust and 5 for every key
  8. create ssh_config with all hosts: ansible-playbook playbook_create_ssh_config.yml (use -e jumphost=eae-adp-jump01 to configure ssh to use eae-adp-jump01 as the jump host)
  9. leave python3 virtual environment: deactivate

Daily Usage

Before doing enything you need to enter the environment: . environment

After using playbook_create_ssh_config.yml you can call ssh simply with the name of the machine (ie. ssh gw-core01). The ssh_config file is generated from the ansible-inventory. Should something in the inventory change or you want to use/change the jumphost simply reexecute the playbook.

Passwords managed using pass. Simply call pass after sourcing the environment.

Descriptions

  • environment: configure environment (path to pass store, http(s) socks proxy and python venv for ansible)
  • playbook_create_ssh_config.yml: playbook to create an additional ssh_config file (.ssh/ffl_eae_adp_config) that get's included in the default ssh_config
  • playbook_distribute_authorized_keys.yml: deploy files/authorized_keys on all machines
  • playbook_provision_accesspoints.yml: configure accesspoints
  • playbook_provision_backbone.yml: configure wg tunnel and ospf link between gw-core01 and eae-adp-jump01
  • playbook_provision_eap-adp-jump01.yml: general system configuration for eae-adp-jump01 (monitoring, routing, ...)
  • playbook_provision_hyper01.yml: general system configuration for hyper01 and create vms/containers
  • playbook_provision_monitoring.yml: configure and install prometheus and grafana on monitoring01