rembik.kickstart_iso

Rôle Ansible : ISO Kickstart

ci_badge release_badge ansible_role_badge ansible_downloads_badge

Ce rôle crée des images ISO kickstart pour RHEL/CentOS.

Exigences

Les rôles suivants peuvent être installés pour garantir que toutes les exigences sont satisfaites, en utilisant ansible-galaxy role install -r molecule/resources/requirements.yml :

---
roles:
  - name: rembik.bootstrap

Variables du Rôle

Ces valeurs par défaut sont définies dans defaults/main.yml :

---
# https://access.redhat.com/documentation/fr-fr/red_hat_enterprise_linux/7/html/anaconda_customization_guide/sect-boot-menu-customization
# https://access.redhat.com/documentation/fr-fr/red_hat_enterprise_linux/8/html-single/performing_an_advanced_rhel_installation

# Si kickstart_iso_src_file.name ou kickstart_iso_src_file.checksum est indéfini,
# kickstart_iso_src_file.checksum_url et kickstart_iso_src_file.search sont utilisés
# pour déterminer le nom de fichier ISO de base manquant et le checksum.
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'

# Répertoire où les images ISO de base sont enregistrées
kickstart_iso_src_dir: '.images/base'
# Répertoire où les images ISO kickstart sont enregistrées
kickstart_iso_dest_dir: '.images/kickstart'
# Autoriser le remplacement des images ISO kickstart, si certaines existent déjà (oui|non)
kickstart_iso_override: no

# Choisir les premiers disques avec une taille physique minimale kickstart_iso_disk_drive_min_size (GiB)
# jusqu'à une taille minimale de volume OS logique kickstart_iso_disk_volume_min_size (GiB)
# et créer un volume OS logique avec une taille maximale kickstart_iso_disk_volume_max_size (GiB)
kickstart_iso_disk_drive_min_size: 10
kickstart_iso_disk_volume_min_size: 60
kickstart_iso_disk_volume_max_size: 120

kickstart_iso_install_media: 'url --url http://mirror.centos.org/centos/8/BaseOS/x86_64/os/'
kickstart_iso_root_password: 'centos'
kickstart_iso_language: 'de'
kickstart_iso_country: 'DE'
kickstart_iso_timezone: 'Europe/Berlin'
kickstart_iso_completion: 'reboot'
kickstart_iso_network_bootproto: 'dhcp'
kickstart_iso_network_device: 'eth0'
kickstart_iso_network_static_netmask: '255.255.255.0'
kickstart_iso_network_static_gateway: '192.168.1.1'
kickstart_iso_network_static_nameserver: ['192.168.1.1']
# Si kickstart_iso_network_bootproto est statique, utilisez kickstart_iso_network_static_hosts
# pour créer des images ISO statiques hôtes supplémentaires
# kickstart_iso_network_static_hosts:
#   - {ip: '192.168.1.1', name: 'host01'}

Dépendances

Aucune.

Exemple de Playbook

Voici un exemple de playbook pour créer une image ISO kickstart CentOS 8 sur localhost ; conçu pour des versions réseau via DHCP.

---
- hosts: localhost
  become: true

  tasks:
    - include_role:
        name: rembik.kickstart_iso

Voici un exemple de playbook pour créer des images ISO kickstart CentOS 7 sur localhost ; conçu pour une configuration réseau statique.

---
- hosts: localhost
  become: true

  pre_tasks:
    - name: Obtenir tous les hôtes (y compris l'IP) de l'inventaire
      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'
        kickstart_iso_network_bootproto: 'static'
        kickstart_iso_network_static_netmask: '255.255.252.0'
        kickstart_iso_network_static_gateway: '10.0.0.1'
        kickstart_iso_network_static_nameserver:
          - '10.0.2.1'
          - '10.0.3.1'

Tests

Ce rôle est testé régulièrement sur les distributions Linux suivantes :

python_badge ansible_badge ansible_previous_badge ansible_latest_badge ansible_devel_badge
alpine_badge x1 x1 e2 e1 e2
centos_badge x x e
debian_badge x1 x1 e2 e1 e2
fedora_badge x1 x1 e2 e1 e2
opensuse_badge x1 x2 x1 x2 e1 e2
redhat_badge x x e
ubuntu_badge x1 x1 e2 e1 e2
xl el

Contribuer

Si vous trouvez des problèmes, veuillez les signaler sur cette page des problèmes du projet GitHub ou envisagez de contribuer au code en suivant cette ligne directrice.

Licence

Licence Apache, Version 2.0

Informations sur l'auteur

Brian Rimek

À propos du projet

Creates kickstart ISO images for RHEL/CentOS.

Installer
ansible-galaxy install rembik.kickstart_iso
Licence
apache-2.0
Téléchargements
256
Propriétaire