parent
f9f023f3bc
commit
0df15e5da1
74
README.md
74
README.md
|
@ -1,13 +1,13 @@
|
|||
# HW4F Netboot Installer
|
||||
|
||||
Server die automatische Installation über das Netzwerks von Ubuntu 20.04
|
||||
im Rahmen des Projekts https://hardwareforfuture.de(**Hardware for Future**)
|
||||
des https://dezentrale.space(dezentrale e.V).
|
||||
im Rahmen des Projekts [https://hardwareforfuture.de](**Hardware for Future**)
|
||||
des [https://dezentrale.space/](dezentrale e.V).
|
||||
|
||||
Für den Betrieb wird einmalig eine Internetverbindung benötigt.
|
||||
Der Server wird über Ansible aufgesetzt.
|
||||
Hierfür werden verschiedene Komponenten installiert,
|
||||
u.a. FAI (Fully Automatic Installtion).
|
||||
u.a. FAI (Fully Automatic Installation).
|
||||
Mit dem Server wird ein Netz aufgespannt,
|
||||
welches für den Anschluß des zu installierenden Rechner verwendet wird.
|
||||
Wenn die Rechner mit dem Netzwerk verbunden sind,
|
||||
|
@ -15,10 +15,10 @@ können sie über einen Netzwerkboot (F-Testen beim Start des Rechners) über PX
|
|||
PXE lädt die erforderliche Dateien vom Server
|
||||
und der FAI-Installer installiert dann Ubuntu auf den Rechner.
|
||||
|
||||
Es wird ein Nutzer *demo* angelegt.
|
||||
Das Passwort ist *fai*.
|
||||
Dieser Nutzer kann Administrationsrechte erlang
|
||||
und es sollte nach der Anmeldung das Passwort dringenst geändert werden.
|
||||
Es wird ein Nutzer `demo` angelegt.
|
||||
Das Passwort ist `fai`.
|
||||
Dieser Nutzer kann Administrationsrechte erlangen.
|
||||
Das Passwort muss im Anschluss geändert werden.
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
|
@ -32,11 +32,11 @@ Zu installierende Clients:
|
|||
* CPU mit x86-64 Unterstützung
|
||||
* 512 MB RAM empfohlen
|
||||
* mehr als 20 GB Festsplatte oder SSD
|
||||
* PXE-fähig oder USB-Stick mit bootfähigen iPXE oder iPXE-CD zum Booten des Rechern
|
||||
* PXE-fähig oder USB-Stick mit bootfähigen iPXE oder iPXE-CD zum Booten der Rechner
|
||||
|
||||
## Verwendung
|
||||
|
||||
Zunächst ansible für die automatische Installation
|
||||
Zunächst Ansible für die automatische Installation
|
||||
und Konfiguration aller Komponeten herunterladen:
|
||||
|
||||
```console
|
||||
|
@ -44,7 +44,7 @@ apt install python3-pip
|
|||
pip3 install ansible
|
||||
```
|
||||
|
||||
Danach ein Playbook (z.B. *fai.yml*) anlegen
|
||||
Danach ein Playbook (z.B. `fai.yml`) anlegen
|
||||
und die grundlegende Parameter festlegen:
|
||||
|
||||
```yml
|
||||
|
@ -77,7 +77,7 @@ ansible-playbook -i inventory/dezentrale.yml -K --check --diff -v fai.yml
|
|||
### Virtuale Testinstanz
|
||||
|
||||
Für eine testweise Installation kann
|
||||
https://www.vagrantup.com/(Vagrant) verwendet werden.
|
||||
[https://www.vagrantup.com/](Vagrant) verwendet werden.
|
||||
Es richtet anhand der *Vagrantfile* eine virtuelle Maschine ein
|
||||
und provisioniert sie mittels Ansible.
|
||||
Vagrant unterstützt verschiedene Provider für Virtualisierungslösungen
|
||||
|
@ -116,23 +116,24 @@ und es mit dem zweiten Netzwerkport des FAI-Servers zu verbinden.
|
|||
|
||||
Über Ansible-Variablen kann die Installation noch weiter angepasst werden.
|
||||
|
||||
|**Variable** |**Bedeutung** |**Standard** |
|
||||
|--- |--- |--- |
|
||||
|dhcp_interface |NIC des Installtionnetzes. Muss gesetzt sein | |
|
||||
|wan_interface |NIC zum Internet |eth0 |
|
||||
|server_name |Server-Name |hw4f-fai |
|
||||
|domain_name |Domain-Name des Netzes |local |
|
||||
|server_ip |IP des Servers |`192.168.33.1` |
|
||||
|server_netbits |Bits der Netzmaske |24 |
|
||||
|server_netmask |Netzmaske |255.255.255.0 |
|
||||
|apt_cacher_offline_mode |true, um nur den vorhanden Packet-Cache als Repository zu nutzen |false |
|
||||
|debian_release |Debian Release, was für FAI genutzt werden soll. |buster |
|
||||
|pxe_preselected_entry |Vorausgewählte iPXE-Eintag |`__exit` (von lokale Datenträger starten)|
|
||||
|pxe_menu_timeout |Timeout für iPXE-Menu in Milisekunden |5000 |
|
||||
|ipxe_additional_entries |Zusätzliche Einträge für iPXE-Menu |keine |
|
||||
|use_apt_cache_for_server |Apt Cache für den Server selbst verwenden |false |
|
||||
|fai_hw4f_profile_username |Desktop Benutzername |`user` |
|
||||
|fai_hw4f_profile_password |Passwort der Benutzers |`fai` |
|
||||
|
||||
|**Variable** |**Bedeutung** |**Standard** |
|
||||
|--- |--- |---------------------------------------- |
|
||||
|dhcp_interface |NIC des Installtionnetzes (muss gesetzt sein) | |
|
||||
|wan_interface |NIC zum Internet |`eth0` |
|
||||
|server_name |Server-Name |hw4f-fai |
|
||||
|domain_name |Domain-Name des Netzes |local |
|
||||
|server_ip |IP des Servers |`192.168.33.1` |
|
||||
|server_netbits |Bits der Netzmaske |`24 ` |
|
||||
|server_netmask |Netzmaske |`255.255.255.0` |
|
||||
|apt_cacher_offline_mode |true, um nur den vorhanden Packet-Cache als Repository zu nutzen|false |
|
||||
|debian_release |Debian Release, was für FAI genutzt werden soll. |buster |
|
||||
|pxe_preselected_entry |Vorausgewählte iPXE-Eintag |`__exit` (von lokale Datenträger starten)|
|
||||
|pxe_menu_timeout |Timeout für iPXE-Menu in Milisekunden |5000 |
|
||||
|ipxe_additional_entries |Zusätzliche Einträge für iPXE-Menu |keine |
|
||||
|use_apt_cache_for_server |Apt Cache für den Server selbst verwenden |`false` |
|
||||
|fai_hw4f_profile_username |Desktop Benutzername |`user` |
|
||||
|fai_hw4f_profile_password |Passwort der Benutzers |`fai` |
|
||||
|
||||
Beispielsweise kann der Server mit obigen Playbook aufgesetzt werden,
|
||||
eine Rechner mit Ubuntu installiert werden und
|
||||
|
@ -158,7 +159,8 @@ ansible-playbook fai.yml
|
|||
|
||||
#### Zusätzliche Menü-Einträge im iPXE-Menü
|
||||
|
||||
Das vordefinierte Playbook für playbook-vagrant.yml(Vagrant) erhält bereits einen zusätzlichen Eintrag für Memtest.
|
||||
Das vordefinierte Playbook für `playbook-vagrant.yml` (Vagrant)
|
||||
enthält bereits einen zusätzlichen Eintrag für Memtest.
|
||||
|
||||
```
|
||||
ipxe_additional_entries:
|
||||
|
@ -175,7 +177,7 @@ ipxe_additional_entries:
|
|||
# - initrd0.img
|
||||
# - initrd1.img
|
||||
# - ...
|
||||
# multiboot:
|
||||
# multiboot:
|
||||
# - module0.img
|
||||
# - module1.img
|
||||
# - ...
|
||||
|
@ -194,10 +196,10 @@ Es sind folgende Felder für jeden Boot-Eintrag möglich:
|
|||
|**Feld** |**Beschreibung** |**iPXE-Argument** |
|
||||
|--- |--- |--- |
|
||||
|files |Dateien für den Eintrag | |
|
||||
|kernel |Zu ladenden Kernel |`kernel` |
|
||||
|kernel |Zu ladenden Kernel |`kernel` |
|
||||
|args |Argumente des Kernel |an Kernel angehängt |
|
||||
|initrd |InitRD-Images |`initrd` |
|
||||
|multiboot |Images für Multiboot-Kernel |`multiboot` |
|
||||
|initrd |InitRD-Images |`initrd` |
|
||||
|multiboot |Images für Multiboot-Kernel |`multiboot` |
|
||||
|
||||
Der vorausgewählt Eintrag kann über `pxe_preselected_entry` mit dem Label ausgewählt werden.
|
||||
Um FAI auszuwählen muss `__fai` gesetzt werden.
|
||||
|
@ -219,6 +221,6 @@ Um FAI auszuwählen muss `__fai` gesetzt werden.
|
|||
|
||||
## Verweise
|
||||
|
||||
* https://fai-project.org(FAI Project)
|
||||
* https://ipxe.org(iPXE)
|
||||
* https://www.ansible.com(Ansible)
|
||||
* [https://fai-project.org](FAI Project)
|
||||
* [https://ipxe.org](iPXE)
|
||||
* [https://www.ansible.com](Ansible)
|
||||
|
|
Loading…
Reference in New Issue