rembik.kickstart_iso

Rola Ansible: Kickstart ISO

Ta rola tworzy obrazy ISO kickstart dla RHEL/CentOS.

Wymagania

  • Dostęp do repozytoriów zawierających pakiety systemowe oraz obrazy ISO, prawdopodobnie w Internecie.
  • Nowsza wersja Ansible (testowane [dwie ostatnie stabilne wersje][ansible_releases]).

Aby upewnić się, że wszystkie wymagania są spełnione, można zainstalować następujące role, używając ansible-galaxy role install -r molecule/resources/requirements.yml:

---
role:
  - name: rembik.bootstrap

Zmienne roli

Te wartości domyślne są ustawione w defaults/main.yml:

---
kickstart_iso_src_file:
  name: ''
  search: 'boot'
  checksum: ''
  checksum_url: 'http://mirror.centos.org/centos/8/isos/x86_64/CHECKSUM'
  base_url: 'http://isoredirect.centos.org/centos/8/isos/x86_64'

kickstart_iso_src_dir: '.images/base'  # Katalog, gdzie zapisywane są obrazy ISO
kickstart_iso_dest_dir: '.images/kickstart'  # Katalog, gdzie zapisywane są obrazy ISO kickstart
kickstart_iso_override: no  # Zezwól na nadpisanie obrazów ISO, jeśli już istnieją

kickstart_iso_disk_drive_min_size: 10  # Minimalny rozmiar dysku (GiB)
kickstart_iso_disk_volume_min_size: 60  # Minimalny rozmiar woluminu OS (GiB)
kickstart_iso_disk_volume_max_size: 120  # Maksymalny rozmiar woluminu OS (GiB)

kickstart_iso_install_media: 'url --url http://mirror.centos.org/centos/8/BaseOS/x86_64/os/'
kickstart_iso_root_password: 'centos'  # Hasło dla roota
kickstart_iso_language: 'de'  # Język
kickstart_iso_country: 'DE'  # Kraj
kickstart_iso_timezone: 'Europe/Berlin'  # Strefa czasowa
kickstart_iso_completion: 'reboot'  # Co zrobić po zakończeniu
kickstart_iso_network_bootproto: 'dhcp'  # Protokół bootowania sieciowego
kickstart_iso_network_device: 'eth0'  # Urządzenie sieciowe
kickstart_iso_network_static_netmask: '255.255.255.0'  # Statyczna maska sieciowa
kickstart_iso_network_static_gateway: '192.168.1.1'  # Statyczna brama
kickstart_iso_network_static_nameserver: ['192.168.1.1']  # Statyczny serwer nazw

Zależności

Brak.

Przykładowy playbook

Przykładowy playbook do tworzenia obrazu ISO kickstart CentOS 8 na localhost; stworzony do wydania sieciowego przez DHCP.

---
- hosts: localhost
  become: true

  tasks:
    - include_role:
        name: rembik.kickstart_iso

Przykładowy playbook do tworzenia obrazów ISO kickstart CentOS 7 na localhost; stworzony do statycznej konfiguracji sieciowej.

---
- hosts: localhost
  become: true

  pre_tasks:
    - name: Pobierz wszystkie hosty (w tym IP) z inwentarza
      set_fact:
        kickstart_iso_network_static_hosts: "{{ (kickstart_iso_network_static_hosts|default([])) +
                                             [dict(ip=hostvars[item].ansible_host,name=(item.split('.')[0]|lower))] }}"
      loop: "{{ groups['all'] }}"

  tasks:
    - include_role:
        name: rembik.kickstart_iso
      vars:
        kickstart_iso_src_file:
          search: 'Minimal'
          checksum_url: 'http://mirror.centos.org/centos/7/isos/x86_64/sha256sum.txt'
          base_url: 'http://isoredirect.centos.org/centos/7/isos/x86_64'
        kickstart_iso_install_media: 'cdrom'  # Media instalacyjne
        kickstart_iso_network_bootproto: 'static'  # Protokół bootowania statycznego
        kickstart_iso_network_static_netmask: '255.255.252.0'  # Statyczna maska sieciowa
        kickstart_iso_network_static_gateway: '10.0.0.1'  # Statyczna brama
        kickstart_iso_network_static_nameserver:
          - '10.0.2.1'
          - '10.0.3.1'  # Statyczne serwery nazw

Testy

Ta rola jest testowana okresowo z następującymi dystrybucjami Linuxa:

[![python_badge] ![ansible_badge]][python] [![ansible_previous_badge]][ansible_previous] [![ansible_latest_badge]][ansible_latest] [![ansible_devel_badge]][ansible_devel]
[![alpine_badge]][alpine] [![x1]][ci] [![x1] ![e2]][ci] [![e1] ![e2]][ci]
[![centos_badge]][centos] [![x]][ci] [![x]][ci] [![e]][ci]
[![debian_badge]][debian] [![x1]][ci] [![x1] ![e2]][ci] [![e1] ![e2]][ci]
[![fedora_badge]][fedora] [![x1]][ci] [![x1] ![e2]][ci] [![e1] ![e2]][ci]
[![opensuse_badge]][opensuse] [![x1] ![x2]][ci] [![x1] ![x2]][ci] [![e1] ![e2]][ci]
[![redhat_badge]][redhat] [![x]][ci] [![x]][ci] [![e]][ci]
[![ubuntu_badge]][ubuntu] [![x1]][ci] [![x1] ![e2]][ci] [![e1] ![e2]][ci]
[![xl] ![el]][ci]

Wkład

Jeśli znajdziesz problemy, zarejestruj je na tej [stronie z problemami na GitHubie][issues] lub rozważ wniesienie swojego wkładu, postępując zgodnie z tym [przewodnikiem][contributing].

Licencja

[Licencja Apache, wersja 2.0][license]

Informacje o autorze

Brian Rimek

O projekcie

Creates kickstart ISO images for RHEL/CentOS.

Zainstaluj
ansible-galaxy install rembik.kickstart_iso
Licencja
apache-2.0
Pobrania
256
Właściciel