No description
This repository has been archived on 2024-08-03. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
Find a file
2024-07-20 08:03:28 +00:00
.vscode renovate: adapt traefik version to be renovate manageable 2024-01-30 08:52:50 +01:00
files Cleanup unused ssh keys 2024-06-03 08:19:03 +02:00
group_vars chore(deps): update docker.io/traefik:v2.11 docker digest to d07c3bc 2024-07-07 19:22:43 +00:00
host_vars webmail: Switch to mailu02 2024-07-20 08:03:28 +00:00
inventory move eir & smtprelay to new ansible 2024-06-03 11:45:41 +00:00
roles resolve: Add role 2024-06-15 14:13:35 +02:00
tasks Remove decomissioned vhsots 2024-07-03 12:01:36 +00:00
templates Add plex backup script 2024-03-11 09:36:56 +00:00
.gitignore Add plex backup script 2024-03-11 09:36:56 +00:00
admin.yml Add nsupdate cronjob to admin hosts 2023-11-26 10:36:45 +00:00
ansible.cfg Exclude /run/user from node exporter 2024-03-12 13:59:15 +00:00
backup.yml Move backup mount to dedicated playbook 2022-03-02 20:57:00 +01:00
base.yml Run apt cronjobs more often, fix fhnw-sync02 node-exporter fsTypes 2024-04-23 10:26:52 +00:00
collabora.yml Add collabora 2022-06-02 22:39:55 +02:00
debian.yml Configure dns for k3s cluster with systemd-resolved 2024-06-15 12:34:52 +00:00
docker.yml Enable default docker playbook for matrix hosts 2024-04-08 07:08:32 +00:00
elasticsearch.yml Elastic: remove ingest-attachement as its integrated 2023-10-16 07:52:12 +00:00
firewall.yml Add magni 2022-12-06 19:00:55 +00:00
k3s-cluster.yml Add k8s_cluster to k3s setup, remove duplicate debian import 2023-03-21 22:04:03 +00:00
k8s-cluster.yml Add k8s playbook 2023-04-23 21:18:06 +00:00
mounts.yml Add plex03 basic configs 2023-03-19 17:22:20 +00:00
mysql.yml Add DB for forgejo 2024-03-24 21:01:03 +00:00
nextcloud.yml Add host_package_list, add mount tags, add ebooks to fhnw-next 2022-09-07 20:30:48 +00:00
nginx.yml Add additional nginx configs, ssl, proxy, expires 2022-06-16 21:53:46 +02:00
php.yml Add php role, and playbook 2022-04-07 14:35:35 +02:00
plex.yml Add plex04, add admin06 2024-06-02 15:44:13 +00:00
postgres.yml Add postgres exporter, Add postgres host vars 2022-03-24 11:16:23 +01:00
prometheus.yml Migrate from cloudalchemy.prometheus to prometheus collection, remove grafana 2023-10-17 18:35:07 +00:00
proxmox_nodes.yml Make ssh key deployment more dynamic 2023-03-12 20:20:53 +00:00
public-uptime.yml Make uptime-kuma work 2023-11-06 18:26:02 +00:00
public.yml Add tasks for uptime-kuma configuration 2023-11-06 19:01:21 +01:00
README.md Add link to presentation 2023-02-14 12:29:11 +01:00
redis.yml Setup redis02 2022-04-02 17:31:21 +02:00
renovate.json change to ansible preset 2024-01-20 13:38:13 +01:00
requirements.txt chore(deps): update dependency ansible to v10.1.0 2024-07-07 19:22:39 +00:00
requirements.yml chore(deps): update all non-major ansible dependencies 2024-07-07 19:17:31 +00:00
restart-playbook.yml restart-playbook: add check if restart is required 2024-06-03 18:23:59 +00:00
sabnzbd.yml Add nzbget01 on mani 2023-05-13 15:31:02 +00:00
site.yml Add k8s_cluster to k3s setup, remove duplicate debian import 2023-03-21 22:04:03 +00:00
smtprelay.yml smtprelay03: fix wireguard role, fix private_key 2024-02-06 17:04:58 +00:00
syslog.yml Add magni 2022-12-06 19:00:55 +00:00
ubuntu.yml Migrate node_exporter role to prometheus collection 2023-10-15 18:08:56 +00:00
wireguard.yml add iptables to wireguard, add wireguard04 2023-03-12 17:49:20 +00:00

Ansible Home NG

This is my new ansible home environment based on a proxmox node, and provisioned using the ansible-proxmox repository.

Within the ansible-proxmox repo, the physical hosts are provisioned and the VMs created (might move that to terraform if I'm bored enough), and this repo here, provisions the VMs after the initial setup is done using cloud-init.

The goal is to have a reproducible environment, that is easy to extend.

Inventory

The inventory is based on a dynamic proxmox inventory, using tags as groups. This way adding new hosts to ansible is done automatically, and no further steps are necesary.
Since prometheus is using the proxmox-pve-sd for service discovery it's even ensured that new hosts are automatically monitored.

Passwords

For now all passwords/credentials are stored in ansible vaults, this includes the proxmox credentials used for the dynamic inventory.

Templating:

User https://j2live.ttl255.com/ to validate your templates

Certificates

Add the following to /bin/activate

export REQUESTS_CA_BUNDLE='/etc/ssl/certs/ca-certificates.crt'

Presentation

https://md.studibla.ch/p/LK9guwm0V#/