# raspberrypi-ansible Ansible Projekt für Marc's Raspberry Pi ## ToDo's - [ ] Moodle als Test vonhand auf dem Pi installieren - [ ] Playbook schreiben - [ ] tasks für alle Rollen schreiben - [ ] Configdatein der einzelnen Dienste ausarbeiten und als Templates in den Rollen hinterlegen - [ ] Überlegen, welche Dienste welche Dateien mitbringen/benötigen. (Bei Grafana z. B. Dashboards, Plugin-Module und Flows von NodeRED, etc.) ## Dienste * MQTT * NodeRED * InfluxDB * Telegraf * Grafana * Moodle ## Ansible-Struktur ``` inventory # Allgemeines Inventory-Datei kann gesplittet werden in "production" "staging" Umgebungen. group_vars/ group1.yml # here we assign variables to particular groups group2.yml host_vars/ hostname1.yml # here we assign variables to particular systems hostname2.yml library/ # if any custom modules, put them here (optional) module_utils/ # if any custom module_utils to support modules, put them here (optional) filter_plugins/ # if any custom filter plugins, put them here (optional) site.yml # master Playbook kann ggf. in mehrere Playbooks aufgeteilt/strukturiert werden roles/ common/ # this hierarchy represents a "role" tasks/ # main.yml # <-- tasks file can include smaller files if warranted handlers/ # main.yml # <-- handlers file templates/ # <-- files for use with the template resource ntp.conf.j2 # <------- templates end in .j2 files/ # bar.txt # <-- files for use with the copy resource foo.sh # <-- script files for use with the script resource vars/ # main.yml # <-- variables associated with this role defaults/ # main.yml # <-- default lower priority variables for this role meta/ # main.yml # <-- role dependencies library/ # roles can also include custom modules module_utils/ # roles can also include custom module_utils lookup_plugins/ # or other types of plugins, like lookup in this case mqtt/ # same kind of structure as "common" was above, done for the webtier role nodered/ # "" influxdb/ # "" telegraf/ # "" grafana/ # "" moodle/ # "" ``` Glück Auf!