yaazkal.bastille

ansible-role-bastille

Rola Ansible, która pomaga skonfigurować serwer jako host BastilleBSD do uruchamiania kontenerów (baze jail) w FreeBSD.

To jest rola Ansible w trakcie rozwoju. W tej chwili zakłada lokalny interfejs do sieci. Używasz tego na własne ryzyko.

Instalacja tej roli

Wystarczy uruchomić ansible-galaxy install yaazkal.bastille na swoim komputerze. Następnie zintegrować rolę w swoim własnym playbooku (zobacz przykład poniżej).

Wymagania

  • Aktualna wspierana wersja FreeBSD. Zobacz wspierane wersje.
  • Zainstalowany Python na docelowym hoście.
  • ca_root_nss zalecane szczególnie na FreeBSD 11.4 (EOL), aby uniknąć problemów podczas instalacji niestandardowej wersji Bastille z tagu GitHub.

Zmienne roli

To są zmienne roli i ich domyślne wartości, ustaw je w host_vars lub definicji hosta według własnych potrzeb (zobacz przykład).

Zmienna Wartość domyślna Opis
bastille_version Jeśli ustawiona, instaluje podaną wersję (tag) z repo Bastille zamiast wersji z pakietu.
bastille_prefix /usr/local/bastille Gdzie znajdują się jails, releases, templates, backpus itd.
bastille_zfs_enable Ustaw na TAK, aby włączyć pewne funkcje ZFS (zalecane).
bastille_zfs_zpool Zbiornik ZFS, w którym Bastille będzie przechowywać swoje pliki i jails.
bastille_timezone Etc/UTC
bastille_ext_if vtnet0 Zewnętrzny interfejs sieciowy.
bastille_releases 13.2-RELEASE Lista wydań dostępnych do tworzenia jaili.
bastille_templates Lista repozytoriów Git, w których znajdują się szablony. Te szablony będą dostępne dla jaili.
bastille_jails Lista jaili do utworzenia. Zobacz przykład dla opcji.

Zależności

Brak.

Przykładowy Playbook

Playbook może wyglądać tak:

# Nazwa pliku: bastille_provision.yml
- name: "Początkowa konfiguracja systemu"
  hosts: bastille
  roles:
    - yaazkal.bastille

Plik inwentarza może wyglądać tak (ten przykład nadpisuje wszystkie domyślne zmienne):

# Nazwa pliku: 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

Następnie możesz uruchomić:

ansible-playbook -i hosts.yml bastille_provision.yml

Licencja

Licencja BSD 3 klauzule. Zobacz plik LICENCJA.

Informacje o autorze

@yaazkal - Juan David Hurtado G.

O projekcie

Helps configure a server as a BastilleBSD host

Zainstaluj
ansible-galaxy install yaazkal.bastille
Licencja
bsd-3-clause
Pobrania
101
Właściciel
Photographer, engineer or entrepreneur are just words. More than that, I'm not my professions.