vbotka.linux_postinstall

linux_postinstall

Qualität Build-Status Dokumentationsstatus GitHub-Tag

Ansible-Rolle. Konfigurieren Sie Linux: acpi, Aliases, AppArmor, apt, autorisierte Schlüssel, autofs, automatische Updates, Bluetooth, cron, debsums, dnsmasq, fstab, gpg, gpsd, Gruppen, grub, Hostname, Hosts, chrony, iptables, kvm, latex, libvirt, Lid, logrotate, Modem-Manager, Module, netplan, networkd, NetworkManager, nfsd, Pakete, Passwörter, pm-utils, Postfix, rc.local, Repos, resolvconf, Service, smart, Speech-Dispatcher, ssh, sshd, sudoers, Swap, sysctl, systemd, timesyncd, Zeitzone, tlp, udev, ufw, Benutzer, VirtualBox, wpa_gui, wpa_supplicant, xen, xorg.conf.d, zfs, (wip ...)

Dokumentation auf readthedocs.io

Diese Rolle und die Dokumentation sind in Arbeit. Wenn die Dokumentation zu einer Aufgabe fehlt, ist es notwendig, den Quellcode zu überprüfen, um zu lernen, wie man ihn verwendet. Wenn eine Funktionalität fehlt, ziehen Sie die Rolle config_light in Betracht. Sehen Sie sich verschiedene Beispiele an. Wenn config_light nicht in der Lage ist, das zu tun, was Sie möchten, erstellen Sie neue Aufgaben.

Teilen Sie Ihr Feedback und Probleme gerne mit.

Beiträge sind willkommen.

Unterstützte Plattformen

Diese Rolle wurde entwickelt und getestet auf

Die Unterstützung für andere Plattformen ist in Arbeit. Einige Aufgaben werden auch von Centos unterstützt. Es wird empfohlen, die Variablen in vars/defaults anzupassen und die Aufgaben selbst zu testen.

Anforderungen

Rollen

Sammlungen

  • ansible.posix
  • ansible.utils
  • community.general

Rollenvariablen

Siehe Standardwerte und Beispiele in vars.

Arbeitsablauf

  1. Installieren Sie die Rollen und Sammlungen

Rollen installieren

shell> ansible-galaxy role install vbotka.linux_postinstall
shell> ansible-galaxy role install vbotka.ansible_lib
shell> ansible-galaxy role install vbotka.linux_lib

Die Sammlungen ansible.posix und community.general sind in den Standard-ansible-Paketen enthalten. Wenn sie fehlen, installieren Sie sie

shell> ansible-galaxy collection install ansible.posix
shell> ansible-galaxy collection install ansible.utils
shell> ansible-galaxy collection install community.general
  1. Ändern Sie die Variablen, z. B. in vars/main.yml
shell> editor vbotka.linux_postinstall/vars/main.yml
  • Siehe OS-spezifische Variablen in vars/defaults
  • Siehe Beispiele in vars/main.yml.sample
  • Passen Sie spezifische Variablen für die Flavor an in vars/flavors
  • Aktivieren Sie optional lp_flavors_enable: true. Dies wird das Playbook verlangsamen
  • Optional können Sie angepasste OS-spezifische Variablen in das vars-Verzeichnis legen
  • Siehe tasks/vars.yml für die Benennungskonventionen und die Reihenfolge
  • OS-spezifische Variablen überschreiben Variablen in var/main.yml
  1. Erstellen Sie das Inventar
shell> cat hosts
[group1]
host1.example.com
[group1:vars]
ansible_user=admin
ansible_connection=ssh
ansible_python_interpreter=/usr/bin/python3.8
ansible_perl_interpreter=/usr/bin/perl
  1. Erstellen Sie das Playbook
shell> cat lp.yml
- hosts: group1
  become: yes
  become_user: root
  become_method: sudo
  roles:
    - vbotka.linux_postinstall
  1. Führen Sie das Playbook aus
shell> ansible-playbook lp.yml

Beste Praktiken

Überprüfen Sie die Syntax des Playbooks

shell> ansible-playbook lp.yml --syntax-check

Überprüfen Sie die Variablen. Optional können Sie Flavors erkennen und speichern

shell> ansible-playbook lp.yml -t lp_vars

Führen Sie das Playbook im Prüfmodus aus

shell> ansible-playbook lp.yml --check

Wenn alles in Ordnung ist, führen Sie das Playbook zweimal aus. Beim zweiten Durchlauf sollten alle Aufgaben OK sein und 0 geändert, unerreichbar und fehlerhaft.

shell> ansible-playbook lp.yml

Automatische Installation von Paketen

Pakete, die in den Variablen lp_*_packages aufgeführt sind, werden automatisch von den tasks/packages.yml installiert, wenn sie durch die Variablen lp_*_install aktiviert sind. Zum Beispiel,

lp_libvirt_install: true
lp_libvirt_packages:
  - libvirt0
  - libvirt-bin
  - libvirt-daemon
  - libvirt-daemon-driver-storage-rbd
  - libvirt-daemon-system
  - virtinst

Die in lp_libvirt_packages aufgeführten Pakete werden in die Pakete aufgenommen, die installiert werden mit

shell> ansible-playbook lp.yml -t lp_packages_auto -e lp_packages_auto=true

Siehe:

Automatische Verwaltung von Diensten

Die Variable lp_service_auto enthält eine Liste von Diensten, die automatisch vom Task service.yml verwaltet werden. Ein Dienst wird vom Task service.yml verwaltet, wenn lp_<service>: true. Wenn Sie lp_<service>: false setzen, wird die Verwaltung des Dienstes durch den Task service.yml deaktiviert. Die Variablen lp_<service>_enable und lp_<service>_state steuern die Aktivierung und den Zustand des Dienstes. Zum Beispiel, Dienst udev, wenn gesetzt lp_udev: true, wird aktiviert und gestartet, da es unter lp_service_auto aufgeführt ist und standardmäßig (Priorität 2.):

lp_udev: true
lp_udev_enable: true
lp_udev_state: started

Führen Sie den folgenden Befehl aus, um zu sehen, welche Dienste verwaltet werden.

shell> ansible-playbook lp.yml -e lp_service_debug=true -t lp_service_debug

Siehe:

Empfohlene Konfiguration nach der Installation des OS

  1. Konfigurieren Sie Benutzer, Sudoers und permanente Netzwerkschnittstellen
ansible-playbook lp.yml -t lp_vars
ansible-playbook lp.yml -t lp_hostname
ansible-playbook lp.yml -t lp_groups
ansible-playbook lp.yml -t lp_users
ansible-playbook lp.yml -t lp_sudoers
ansible-playbook lp.yml -t lp_udev
ansible-playbook lp.yml -t lp_netplan
ansible-playbook lp.yml -t lp_wpasupplicant
ansible-playbook lp.yml -t lp_reboot -e 'lp_reboot=true lp_reboot_force=true'
  1. Konfigurieren Sie die Firewall. Zum Beispiel iptables
shell> ansible-playbook lp.yml -t lp_iptables
  1. Testen Sie die Installation der Pakete
shell> ansible-playbook -t lp_packages -e 'lp_package_install_dryrun=true' lp.yml
  1. Installieren Sie Pakete
shell> ansible-playbook -t lp_packages lp.yml
  1. Überprüfen, installieren und konfigurieren Sie andere Aufgaben
shell> ansible-playbook lp.yml --check
shell> ansible-playbook lp.yml

Ansible-Lint

Verwenden Sie die Konfigurationsdatei .ansible-lint.local, wenn Sie ansible-lint ausführen. Einige Regeln könnten deaktiviert und einige Warnungen ignoriert werden. Siehe die Hinweise in der Konfigurationsdatei.

shell> ansible-lint -c .ansible-lint.local

Lizenz

Lizenz

Autoreninformation

Vladimir Botka

Referenzen

Über das Projekt

Configure Linux.

Installieren
ansible-galaxy install vbotka.linux_postinstall
Lizenz
bsd-2-clause
Downloads
446
Besitzer