yaazkal.bastille

ansible-role-bastille

Eine Ansible-Rolle, die dabei hilft, einen Server als BastilleBSD Host für das Ausführen von Containern (basierend auf Jails) in FreeBSD zu konfigurieren.

Dies ist eine Ansible-Rolle in Arbeit. Momentan wird die lokale Schnittstelle für das Networking angenommen. Benutze es auf eigenes Risiko.

Installation dieser Rolle

Führe einfach ansible-galaxy install yaazkal.bastille auf deinem Rechner aus. Integriere dann die Rolle in dein eigenes Playbook (siehe das Beispiel unten).

Anforderungen

  • Eine aktuelle unterstützte Version von FreeBSD. Siehe unterstützte Versionen
  • Python auf dem Zielhost installiert.
  • ca_root_nss wird empfohlen, insbesondere auf FreeBSD 11.4 (EOL), um beim Installieren einer benutzerdefinierten Bastille-Version aus einem GitHub-Tag keine Fehler zu erhalten.

Rollenvariablen

Dies sind die Rollenvariablen und ihre Standardwerte. Setze sie in deinen host_vars oder in der Hostdefinition, wie du möchtest (siehe Beispiel).

Variable Standardwert Beschreibung
bastille_version Wenn gesetzt, wird die angegebene Version (Tag) aus dem Bastille-Repo installiert statt der verfügbaren pkg-Version.
bastille_prefix /usr/local/bastille Wo Jails, Releases, Templates, Backups usw. gespeichert werden.
bastille_zfs_enable Auf YES setzen, um einige ZFS-Funktionen zu aktivieren (empfohlen).
bastille_zfs_zpool Der ZFS-Pool, in dem Bastille seine Dateien und Jails hostet.
bastille_timezone Etc/UTC
bastille_ext_if vtnet0 Externe Netzwerkschnittstelle.
bastille_releases 13.2-RELEASE Liste der Releases, die für die Erstellung von Jails verfügbar sein sollen.
bastille_templates Liste der Git-Repos, in denen Templates gehostet werden. Diese Templates werden für Jails verfügbar sein.
bastille_jails Liste der zu erstellenden Jails. Siehe Beispiel für Optionen.

Abhängigkeiten

Keine.

Beispiel Playbook

Ein Playbook könnte so aussehen:

# Dateiname: bastille_provision.yml
- name: "Erstkonfiguration des Systems"
  hosts: bastille
  roles:
    - yaazkal.bastille

Eine Inventar-Datei könnte so aussehen (dieses Beispiel überschreibt alle Standardvariablen):

# Dateiname: hosts.yml
bastille:
  hosts:
    example.com:
      ansible_user: root
      bastille_version: "0.9.20210714"
      bastille_timezone: "America/Bogota"
      bastille_zfs_enable: "YES"
      bastille_zfs_zpool: "zroot"
      bastille_ext_if: "vtnet0"
      bastille_releases:
        - 13.2-RELEASE
        - 12.4-RELEASE
      bastille_templates:
        - https://gitlab.com/bastillebsd-templates/nginx
        - https://github.com/yaazkal/bastille-postgres
      bastille_jails:
        - name: defaultjail
          release: 13.2-RELEASE
          ip: 10.17.89.1
          templates:
            - "bastillebsd-templates/nginx"
        - name: thickjail
          release: 13.2-RELEASE
          ip: 10.17.89.2
          options: -T

Danach kannst du ausführen:

ansible-playbook -i hosts.yml bastille_provision.yml

Lizenz

BSD 3-Klausel. Siehe Lizenzdatei.

Autor-Informationen

@yaazkal - Juan David Hurtado G.

Über das Projekt

Helps configure a server as a BastilleBSD host

Installieren
ansible-galaxy install yaazkal.bastille
Lizenz
bsd-3-clause
Downloads
101
Besitzer
Photographer, engineer or entrepreneur are just words. More than that, I'm not my professions.