linux-system-roles.image_builder
Nazwa Roli
Instaluje i konfiguruje Image Builder jako węzeł budowlany do tworzenia obrazów systemu Fedora i Red Hat Enterprise Linux. Należy zauważyć, że są to pełne obrazy systemu operacyjnego, które mogą być wykorzystywane w chmurze, w wirtualnych środowiskach oraz na serwerach fizycznych, a nie obrazy kontenerowe.
Wymagania
- RHEL/CentOS 7.x wymaga włączenia repozytorium Extras.
- Jeśli uruchamiasz to na lokalnym węźle, RHEL/CentOS będzie potrzebować włączonego repozytorium Ansible.
- Polega na linux-system-roles.cockpit do ustawienia zależności dla graficznego interfejsu użytkownika.
- Opcjonalne rozważania to:
- użycie linux-system-roles.storage do przygotowania dedykowanego systemu plików do przechowywania artefaktów obrazów.
- użycie linux-system-roles.firewall, aby umożliwić zdalny dostęp do Konsoli Web.
Zmienne Roli
Domyślnie będą instalowane podstawowe pakiety dla CLI Image Builder oraz usługi budowania:
vars:
ib_packages: [default, minimal, full]
ib_daemon: [lorax-composer, osbuild-composer]
- minimal (CLI plus jeden z backendów, a nie oba)
- lorax-composer # backend silnika budującego i API, oparty na lorax z klasycznego instalatora Anaconda
- osbuild-composer # nowoczesny backend i API
- composer-cli # interfejs wiersza poleceń
- default (zawiera GUI z Cockpit)
- cockpit-composer # graficzny interfejs w Konsoli Web Cockpit
- full (to samo, co domyślnie, może się zmienić w przyszłości)
- cockpit-composer # graficzny interfejs w Konsoli Web Cockpit
Przykłady Playbooków
Najprostszy przykład.
---
- hosts: fedora, rhel7, rhel8
become: yes
roles:
- linux-system-roles.image_builder
Bardziej zaawansowany przykład, który może konfigurować opcjonalne magazynowanie i zaporę.
- hosts: fedora, rhel7, rhel8
become: yes
# Zakłada, że używasz RHEL System Roles
# yum install --enablerepo=rhel-7-server-ansible-2-rpms rhel-system-roles ansible
#
# Zakłada rolki z 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:
# Opcjonalny przykład konfiguracji drugiego dysku dla węzła,
# aby pomieścić artefakty obrazów systemu. Typowe minimalne obrazy mają ~ 2 GB każdy.
# Inną opcją jest po prostu podlinkowanie do udziału NAS.
- name: Konfiguracja magazynowania dla Image Builder
include_role:
name: linux-system-roles.storage
vars:
use_partitions: false
storage_pools:
- name: image_builder
disks: [''] # coś jak vdb
state: present
volumes:
- name: composer
size: "20G" # oszacowanie w zależności od liczby tworzonych obrazów
fs_label: "imgbldr"
mount_point: '/var/lib/lorax/composer'
when: CONFIG_STORAGE
# Opcjonalnie użyj roli Cockpit, aby zainstalować pełen zestaw,
# w przeciwnym razie rola Image Builder zainstaluje minimalne zależności dla GUI.
- name: Zainstaluj i włącz usługę Konsoli Web RHEL/Fedora (Cockpit)
include_role:
name: linux-system-roles.cockpit
vars:
cockpit_packages: "full" # lub "minimal" lub "default"
- name: Zainstaluj i włącz usługę Image Builder RHEL/Fedora
include_role:
name: linux-system-roles.image_builder
vars:
ib_packages: "full" # lub "minimal" lub "default"
- name: Konfiguruj zaporę dla Konsoli Web
include_role:
name: linux-system-roles.firewall
vars:
firewall:
service: cockpit
state: enabled
when: USE_FIREWALL
Licencja
GPLv3
O projekcie
Install and enable Image Builder for building OS images
Zainstaluj
ansible-galaxy install linux-system-roles.image_builder
Licencja
gpl-3.0
Pobrania
3k
Właściciel