linux-system-roles.image_builder
Nom du Rôle
Installe et configure Image Builder comme nœud de construction pour créer des images du système d'exploitation Fedora et Red Hat Enterprise Linux. Notez qu'il ne s'agit pas d'images de conteneurs, mais plutôt d'images complètes du système d'exploitation qui peuvent être déployées dans des environnements cloud, virtuels ou sur du matériel nu.
Exigences
- RHEL/CentOS 7.x dépendent de l'activation du dépôt Extras.
- Si vous exécutez cela sur le nœud local, RHEL/CentOS aura besoin du dépôt Ansible activé.
- Dépend de linux-system-roles.cockpit pour configurer les dépendances de l'interface graphique.
- Considérations optionnelles incluent :
- utiliser linux-system-roles.storage pour préparation d'un système de fichiers dédié pour stocker les artefacts d'image.
- utiliser linux-system-roles.firewall pour rendre la console Web accessible à distance.
Variables du Rôle
Par défaut, les paquets principaux pour l'interface de ligne de commande Image Builder et le service de construction seront installés :
vars:
ib_packages: [default, minimal, full]
ib_daemon: [lorax-composer, osbuild-composer]
- minimal (CLI plus un moteur de backend, pas les deux)
- lorax-composer # moteur de construction et API de backend, basé sur lorax de l'installateur Anaconda classique
- osbuild-composer # moteur de backend et API de nouvelle génération
- composer-cli # une interface de ligne de commande
- default (inclut l'interface graphique de Cockpit)
- cockpit-composer # une interface frontale graphique dans la console web Cockpit
- full (identique à default aujourd'hui, peut changer à l'avenir)
- cockpit-composer # une interface frontale graphique dans la console web Cockpit
Exemples de Playbooks
L'exemple le plus simple.
---
- hosts: fedora, rhel7, rhel8
become: yes
roles:
- linux-system-roles.image_builder
Un exemple plus avancé qui peut configurer un stockage et un pare-feu optionnels.
- hosts: fedora, rhel7, rhel8
become: yes
# Supposons que vous utilisez RHEL System Roles
# yum install --enablerepo=rhel-7-server-ansible-2-rpms rhel-system-roles ansible
#
# Supposons les rôles provenant de galaxy
# ansible-galaxy install linux-system-roles.storage
# ansible-galaxy install linux-system-roles.firewall
# ansible-galaxy install linux-system-roles.cockpit
vars:
USE_FIREWALL: 1
CONFIG_STORAGE: 0
tasks:
# Exemple optionnel pour configurer un deuxième disque pour votre nœud afin de contenir
# les artefacts d'image de système d'exploitation créés. Les images minimales typiques font environ 2 Go chacune.
# Une autre option est de simplement lier à un partage NAS.
- name: Configurer le stockage pour Image Builder
include_role:
name: linux-system-roles.storage
vars:
use_partitions: false
storage_pools:
- name: image_builder
disks: [''] # quelque chose comme vdb
# type: lvm
state: present
volumes:
- name: composer
size: "20G" # estimation selon le nombre d'images créées
# type: lvm
# fs_type: xfs
fs_label: "imgbldr"
mount_point: '/var/lib/lorax/composer'
when: CONFIG_STORAGE
# Vous pouvez également utiliser le rôle Cockpit pour installer l'ensemble complet,
# sinon le rôle Image Builder installera les dépendances minimales pour l'interface graphique.
- name: Installer et activer le service RHEL/Fedora Web Console (Cockpit)
include_role:
name: linux-system-roles.cockpit
vars:
cockpit_packages: "full" # ou "minimal" ou "default"
- name: Installer et activer le service RHEL/Fedora Image Builder
include_role:
name: linux-system-roles.image_builder
vars:
ib_packages: "full" # ou "minimal" ou "default"
- name: Configurer le pare-feu pour la console Web
include_role:
name: linux-system-roles.firewall
vars:
firewall:
service: cockpit
state: enabled
when: USE_FIREWALL
Licence
GPLv3
À propos du projet
Install and enable Image Builder for building OS images
Installer
ansible-galaxy install linux-system-roles.image_builder
Licence
gpl-3.0
Téléchargements
3k
Propriétaire