Skip to content

0lzi/ansible

Repository files navigation

TODO

  • Tidy up README
  • Tidy up playbooks
  • Tidy up vars > group & host vars
  • Linting

Ansible

Ansible playbooks

Ansible rulebooks

Rulebooks for EDA

My Ansible playbooks for setting up my 4 Raspberry pi

Objectives

  • prepare pi for docker/k8s/k3s
    • /boot/cmdline.txt
  • install packages
  • set ip address on pi based on MAC address
  • create new user and disable pi user and root user login
  • set up sshkey and turn on passwordless login
  • mount nfs folders
  • set up environment

Run ansible-playbook -i "hostname," main.yml

First run when no ssh keys present

Run ansible-playbook -i "inventories/hosts" -kK main.yml

Infra

Hardware

3x Beelink Ryzen 5 5500U 16G RAM , 512G nvme SSD

Roles

- docker # Sets up docker on a host
- packages # Sets packages for base config
- users # Sets up my user
- vm # Creates VMs from ./vars/vms.yml

Usage

Run pipenv install then pipenv shell before running the ansible playbooks.

Playbooks

main.yml - Installs base packages and sets up users
docker-host.yml - Does the same as main.yml + installs docker
pve-vms.yml - Creates VMs based on what is in ./vars/vars.yml <- Looking to swap out for Terraform

Inventory

  • docker-1
  • pi-hole-[1-2]