Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
Dokumentation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Linux-Infrastruktur-Automatisierung
Dokumentation
Commits
05cce4e1
Commit
05cce4e1
authored
Mar 13, 2019
by
mainja67707
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Minor fixes
parent
42bfbbf8
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
42 additions
and
40 deletions
+42
-40
Bericht.tex
Bericht.tex
+42
-40
No files found.
Bericht.tex
View file @
05cce4e1
...
...
@@ -8,7 +8,7 @@
\usepackage
[utf8]
{
inputenc
}
\usepackage
[T1]
{
fontenc
}
\usepackage
{
titlesec
}
\usepackage
{
url
}
\usepackage
{
x
url
}
%box around verbatim
\usepackage
{
fancyvrb
}
% Use Links
...
...
@@ -26,7 +26,7 @@
\definecolor
{
mauve
}{
rgb
}{
0.58,0,0.82
}
\lstset
{
frame=tb,
language=bash
language=bash
,
aboveskip=3mm,
belowskip=3mm,
showstringspaces=false,
...
...
@@ -186,7 +186,6 @@ citestyle=alphabetic
\item
SSSD:
\\
\url
{
https://github.com/colin-stubbs/salt-formula-sssd
}
\end{itemize}
\\
Diese Formulas werden in der Master-Konfiguration
/etc/salt/master unter der Kategorie
file
\textunderscore
{}
roots alle
...
...
@@ -204,7 +203,6 @@ citestyle=alphabetic
-
\
sssd
-
\
sssd.sysauth
\end{Verbatim}
\\
Mit dem include wird sicher gestellt, dass diese Optionen zur
Installation und Konfiguration ausgeführt werden.
\subsection
{
Passwort-Verschlüsselung
}
...
...
@@ -243,7 +241,7 @@ citestyle=alphabetic
Für die Konfiguration des Salt-Minions muss die IP des Salt-Masters
und dessen Fingerabdruck in der Konfigurationsdatei /etc/salt/minion
hinterlegt werden. Anschließend muss der Minion noch vom Master
hinzugefügt werden. Ersteres soll über das Open
Build
Service
hinzugefügt werden. Ersteres soll über das Open
Build
Service
PXE-image bereits automatisiert geschehen.
\section
{
Software-Stack
}
Die durch Salt verwaltete und konfigurierte Software ist im
...
...
@@ -444,7 +442,7 @@ citestyle=alphabetic
images verwendet wird.
Leider war SUSE Studio zum Projektzeitpunkt nicht mehr öffentlich
verfügbar, weshalb besagte images nun über kiwi in Kombination mit
dem Open
Build
Service gebaut werden müssen.
dem Open
Build
Service gebaut werden müssen.
\section
{
kiwi
}
Kiwi ist der Name des Kommandozeilentools, welches hinter SUSE
Studio stand.
...
...
@@ -491,21 +489,21 @@ citestyle=alphabetic
Preferenzen des Nutzers anzupassen.
\end{itemize}
\begin{Verbatim}
[frame=single]
<preferences>
<type image="oem" boot="oemboot/suse-leap15.0" bootloader="grub2"
bootpartition="true" installpxe="true" bootprofile="default"
bootkernel="std" filesystem="ext4" firmware="efi"
kernelcmdline="splash"/>
<version>2.8.0</version>
<packagemanager>zypper</packagemanager>
<locale>en
_
US</locale>
<keytable>de</keytable>
<timezone>Europe/Berlin</timezone>
<rpm-excludedocs>true</rpm-excludedocs>
<rpm-check-signatures>false</rpm-check-signatures>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
</preferences>
<preferences>
<type image="oem" boot="oemboot/suse-leap15.0" bootloader="grub2"
bootpartition="true" installpxe="true" bootprofile="default"
bootkernel="std" filesystem="ext4" firmware="efi"
kernelcmdline="splash"/>
<version>2.8.0</version>
<packagemanager>zypper</packagemanager>
<locale>en
_
US</locale>
<keytable>de</keytable>
<timezone>Europe/Berlin</timezone>
<rpm-excludedocs>true</rpm-excludedocs>
<rpm-check-signatures>false</rpm-check-signatures>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
</preferences>
\end{Verbatim}
Besonders interessant sind hierbei die types-Attribute, deren
korrekte Konfiguration und Verständnis uns die meiste Zeit
...
...
@@ -540,7 +538,7 @@ citestyle=alphabetic
Beispielpasswort eingefügt, welches, da es öffentlich sichtbar
ist, zwingend geändert werden sollte.
\subsubsection
{
repository
}
Hier werden die Paketquellen, aus welchen der Open
Build
Service
Hier werden die Paketquellen, aus welchen der Open
Build
Service
die zu installierenden Pakete beziehen soll, angegeben.
Alternativ können diese auch als Archiv im Projekt mitgeliefert
werden.
...
...
@@ -567,8 +565,10 @@ citestyle=alphabetic
aufräumen.
\subsubsection
{
config.sh
}
Wird am Ende der Installation, aber vor den Paketskripten im
Generieren des Verzeichnisbaums-Abschnitt ausgeführt.
Abschnitt
\hyperref
[subsec:gen_verz_img]
{
\it
{
Generieren des
Verzeichnisbaums
}}
ausgeführt.
\subsection
{
Generieren des Verzeichnisbaums
}
\label
{
subsec:gen
_
verz
_
img
}
Zu Beginn erstellt kiwi aus der gegebenen Konfigurationsdatei einen
Verzeichnisbaum.
Dieser lässt sich über ein change-root-Tool wir chroot beliebig
...
...
@@ -591,8 +591,8 @@ citestyle=alphabetic
generiertwerden.
Möglich sind beispielsweise USB-Live-Images, PXEBoot, Amazon EC2,
Docker, KVM/Qemu, VirtualBox, VMWare oder auch Vagrant-Images.
\\
\section
{
Open
Build
Service
}
Der Open
Build
Service ist ein OpenSource-Projekt, welches von
\section
{
Open
Build
Service
}
Der Open
Build
Service ist ein OpenSource-Projekt, welches von
SUSE-Entwicklern erstellt und seitdem aktiv gemaintaint wird.
Es ermöglicht Paketierern das automatische Bauen von Paketen
oder images und hat einen Fokus auf Continuos Integration.
\\
...
...
@@ -618,19 +618,19 @@ citestyle=alphabetic
der Paketautor muss sich immer alle aktuellen Pakete
herunterladen und sein Paket gegen diese bauen).
\end{enumerate}
Diesen beiden Problemen möchte der Open
Build
Service
Diesen beiden Problemen möchte der Open
Build
Service
vorbeugen.
\\
Das Prinzip ist hierbei einfach, statt seine erstellten
Pakete selbst lokal zu bauen, übernimmt diese Aufgabe der
Open
Build
Service. Diesem stehen hierfür verschiedene Worker
Open
Build
Service. Diesem stehen hierfür verschiedene Worker
zur Verfügung, die die Aufträge nach einer Warteschlange
abarbeiten.
\\
Sollten sich innerhalb des Paketes oder einer seiner
Abhängigkeiten etwas ändern, so wird dies vom
Open
Build
Service automatisch registriert und das Paket zum
Open
Build
Service automatisch registriert und das Paket zum
erneuten Bauen eingereiht.
\subsubsection
{
osc
}
osc ist das Kommandozeilentool, um mit dem Open
Build
Service
osc ist das Kommandozeilentool, um mit dem Open
Build
Service
zu interagieren. Zwar gibt es auch ein Webinterface, jedoch
ist das osc-tool meiner Erfahrung nach trotz Einlernungszeit
binnen kürzester Zeit effektiver und einfacher zu
...
...
@@ -638,7 +638,7 @@ citestyle=alphabetic
Eingestellt ist das Tool auf build.opensuse.org, wobei auch
andere, selbstgehostete Versionen eingestellt werden können.
\subsection
{
rpmlint
}
Der Open
Build
Service verwendet eine speziell konfigurierte
Der Open
Build
Service verwendet eine speziell konfigurierte
Version des rpmlint-tools.
Dieses überprüft bauende Pakete auf bekannte Schwachstellen
und Probleme.
...
...
@@ -665,11 +665,11 @@ citestyle=alphabetic
Whitelist setzen und hierdurch das Bauen ermöglichen.
\subsection
{
Images auf dem OBS
}
Seit der Einstellung des SUSE Studio-Projekts werden images
über den Open
Build
Service erstellt.
über den Open
Build
Service erstellt.
Auch SUSE-eigene Images wie Live-CDs/-USB-Sticks, images für
diverse Hypervisor (KVM, VirtualBox, VMWare usw.) und Container
(z.b. Docker) optimiert und andere Dienstleister wie AWS werden
über den Open
Build
Service gebaut.
über den Open
Build
Service gebaut.
Hierfür werden dem Entwickler einige Templates zur Verfügung
gestellt, jedoch sind diese, zumindest zum Projektzeitpunkt,
veraltet und deshalb für uns nicht weiter zu gebrauchen.
\\
...
...
@@ -680,14 +680,14 @@ citestyle=alphabetic
eines korrekten Quellrepositories zu sein, da zum
Projektzeitpunkt ein Bug für -mini-Pakete, welche standardmäßig
in den images dabei sind, für Paketkonflikte sorgt.
\\
Im Gegensatz zum lokalen Bauvorgang hat der Open
Build
Service im
Im Gegensatz zum lokalen Bauvorgang hat der Open
Build
Service im
Umgang mit kiwi einige Eigenheiten. Diese wären:
\begin{itemize}
\item
Die Konfigurationsdatei muss eine *.kiwi-Datei sein
(config.xml ist als Dateiname nicht möglich)
\end{itemize}
\subsection
{
OBS auf anderen Systemen
}
Der Open
Build
Service unterstützt neben SUSE-Distributionen auch
Der Open
Build
Service unterstützt neben SUSE-Distributionen auch
beispielsweise Debian, Ubuntu, Red Hat, sowie sogar Windows
beim Paketbau.
Auch andere Architekturen sind neben x86 (z.b. AMD64, z Systems,
...
...
@@ -794,16 +794,18 @@ citestyle=alphabetic
openSUSE mit eigenem Image installieren
kernel preload/linux
append initrd=preload/pxeboot.initrd
rawimage=ftp://preload/opensuse-leap-15.0-image.x86
_
64-2.8.0-Build80.1.raw rawdevice=/dev/sda vga=normal pxe=1
rawimage=ftp://preload/opensuse-leap-15.0-image.x86
_
64-2.8.0
-Build80.1.raw rawdevice=/dev/sda vga=normal pxe=1
\end{Verbatim}
\section
{
UEFI
}
Die Clients im Linux-Labor sind zwar schon etwas älter, aber bei der
Projektplanung ging man davon aus, dass diese kein UEFI beim PXE-Bootvorgang
mehr benötigen würden. Leider ließ sich das BIOS nicht so konfigurieren,
dass PXE mit Legacy funktioniert. Selbst ein BIOS-Update hat nicht geholfen.
Deshalb mussten aus dem openSUSE-Repository
http://download.opensuse.org/distribution/leap/15.0/repo/oss/boot/x86
_
64/loader/
und http://download.opensuse.org/distribution/leap/15.0/repo/oss/EFI/BOOT/
Deshalb mussten aus dem openSUSE-Repository
(
\url
{
http://download.opensuse.org/distribution/leap/15.0/repo/oss/boot/x86
_
64/loader/
}
und
\url
{
http://download.opensuse.org/distribution/leap/15.0/repo/oss/EFI/BOOT/
}
)
die Dateien message, memtest, bootx64.efi, grub.efi und grub.cfg ins Verzeichnis
/opt/tftpboot/ kopiert werden. In der grub.cfg musste dann der menuentry
von Installation auf das PXE-Verzeichnis unseres Images angepasst werden.
...
...
@@ -814,7 +816,7 @@ citestyle=alphabetic
Weil die Systeme kein Legacy unterstützen, ist damit auch die Konfiguration
vom PXE-Server komplexer geworden.
\section
{
UEFI und Legacy bei unterschiedlichen Systemen
}
Die Virtuellen Maschinen von Herrn Prof.
Stappert verwenden kein UEFI
.
Die Virtuellen Maschinen von Herrn Prof.
\
Stappert verwenden kein UEFI
\@
.
Somit sind die notwendigen Dateien (unter UEFI) hier nicht notwendig.
Weil die Datei pxelinux.0 im selben Verzeichnis liegt, kann man ohne Probleme
auch Legacy-Systeme installieren, indem man den Eintrag pxelinux.0 statt
...
...
@@ -845,7 +847,7 @@ citestyle=alphabetic
einfacherer, modernere Lösung geben soll. Dies erfuhren wir am
27.Februar, kurz vor der Fertigstellung unserer Variante.
\\
An dieser Stelle muss auf jeden Fall die Dokumentation angepasst werden,
welche leider allgemein im Falle von kiwi mit dem Open
Build
Service sehr
welche leider allgemein im Falle von kiwi mit dem Open
Build
Service sehr
schwer nachzuvollziehen (und teilweise nicht mehr auf dem neuesten
Stand) war.
\printbibliography
{}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment