Commit 4281089f authored by mainja67707's avatar mainja67707

Add Details to Salt-managed Software

parent 2f1d4191
......@@ -122,22 +122,105 @@ citestyle=alphabetic
\text{*}.sls.
Die drei verwendeten Verzeichnisse heißen standardmäßig salt,
pillar, formulas.
\subsection{salt}
Im salt-Verzeichnis werden die distributionsspezifischen Profile
angelegt.
Wichtig ist hier insbesondere die top.sls-Datei, welche bei einem
simplen state.apply abgearbeitet wird.
Folgt diesem noch ein Dateiname, so wird diese im salt-Verzeichnis
erwartet.\\
Das Verzeichnis ist für normale Paketinstallationen über die
standard-Paketinstaller gedacht, wodurch eine simple Paketliste ohne
weitere Konfigurationen hinreichend ist.
\subsection{pillar}
Das Pillar-Verzeichnis steht für Variablen, Sensitive Daten,
Konfigurationen und sonstige zu übertragende Daten zur Verfügung.
\subsection{formulas}
Konfigurations-/Installationsschnittstelle für aufwendigere Pakete,
welche meist nicht über einen Paketmanager installierbar sind.
\subsection{salt}
Im salt-Verzeichnis werden die distributionsspezifischen Profile
angelegt.
Wichtig ist hier insbesondere die top.sls-Datei, welche bei einem
simplen state.apply abgearbeitet wird.
Folgt diesem noch ein Dateiname, so wird diese im
salt-Verzeichnis erwartet.\\
Das Verzeichnis ist für normale Paketinstallationen über die
standard-Paketinstaller gedacht, wodurch eine simple Paketliste
ohne weitere Konfigurationen hinreichend ist.
\subsection{pillar}
Das Pillar-Verzeichnis steht für Variablen, Sensitive Daten,
Konfigurationen und sonstige zu übertragende Daten zur
Verfügung.
\subsection{formulas}
Konfigurations-/Installationsschnittstelle für aufwendigere
Pakete, welche meist nicht über einen Paketmanager installierbar
sind.
\section{Salt-Minion}
Der Salt-Minion ist die Clientseitige Software, welche auf den
automatisch zu konfigurierenden Linux-Rechnern installiert werden
muss. Er führt die vom Salt-Master erhaltenen Befehle aus und
konfiguriert somit das System nach der hinterlegten Anleitung.\\
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 OpenBuildService
PXE-image bereits automatisiert geschehen.
\section{Software-Stack}
Die durch Salt verwaltete und konfigurierte Software ist im
folgenden mit einem kurzen Erfahrungsbericht und weiterführenden,
wichtigen Hinweisen kurz aufgezählt.
\subsection{Java}
Die Java Runtime Environment und das Java Software Development
Kit sind zwei grundlegende Anforderungen für Universitätsrechner
für Studierende mit Programmierkenntnissen.
Leider mussten wir jedoch feststellen, das Java und openSUSE
sich nach wie vor nur schwer zur Zusammenarbeit überreden
lassen.
\subsection{JetBrains}
Um die Softwareentwicklung den Studierenden möglicht einfach zu
machen, installierten wir einige IDEs. Die JetBrains-Produkte
erfreuen sich hierbei unter den Studenten an zunehmender
Beliebtheit, da diese ihnen über eine Studentenlizen auch auf
ihren Privatrechnern kostenlos zur Verfügung steht.
Neben dem Standartumfang sind sie besonders für ihre
CodeCompletion-Funktionen bekannt.\\
Wir haben uns hierbei für drei IDEs entschieden:
\begin{itemize}
\item Intellij für Java-Entwicklung
\item PhpStorm für Webentwicklung
\item CLion für C/C++ Entwicklung
\end{itemize}
\subsubsection{Installation}
Die IDEs werden über die zugehörigen Formulare automatisch
installiert und stehen den Studierenden zur Verfügung.\\
Für Intellij IDEA musste weiterhin Java installiert werden.
\subsubsection{Lizensierung}
Um die IDEs nutzen zu können, muss der Hochschuleigene
Lizenzserver verwendet werden.\\
Um die Webaddresse des Lizenzservers automatisiert zu
hinterlegen, muss im HOME-Verzeichnis der Studierenden ein
Folgende Dateistruktur für jede IDE angelegt werden:
\textquotedblleft.\textless{}IDE\textgreater{}
\textless{}Versionsnummer\textgreater{}/config/
\textless{}IDE\textunderscore{}in\textunderscore{}
Kleinbuchstaben\textgreater{}.key
\textqoutedblright{}
erstellt werden.\\
Hierfür werden diese unter /etc/jetbrains erstellt und beim
Login in das HOME-Verzeichnis der Studierenden kopiert.
\subsubsection{Erfahrungsbericht}
Problematisch war hier insbesondere das erstellen der
Verzeichnisse, da hierfür die Versionsnummer ausgelesen
werden musste.\\
Nach einigen anfänglich erfolglosen Versuchen diese aus
Konfigurationsdateien zu extrahieren entwickelten
wir ein Shellskript, welches diese Information aus den
Ordnernamen unter /usr/local/jetbrains extrahiert.
\subsection{VisualStudio Code}
Neben den JetBrains IDEs erfreut sich auch VisualStudio Code
immer größerer Beliebtheit. Da dieses, im Gegensatz zu
VisualStudio, OpenSource-Softare ist, wollten wir auch dieses
Tool zur Verfügung stellen.
\subsubsection{Installation}
Für VisualStudio Code existiert ein Formula.\\
Bis auf den im Erfahrungsbericht angesprochenen Bug verlief
die Installation hiermit problemlos.
\subsubsection{Erfahrungsbericht}
Da für die Installation ein zusätzliches Repository zum
Paketmanager zypper hinzugefügt werden sollte, fanden wir
hier einen Bug.\\
Entgegen der Annahme importiert rpm den GPG-Schlüssel nicht
automatisch mit in seinen Schlüsselspeicher. Die Folge war
dementsprechend, das das Paket von einem für rpm unbekannten
GPG-Schlüssel signiert und somit zurückgewiesen wurde.\\
Unser Workaround besteht darin, mittels Salt den rpm-Befehl
seperat auszuführen und somit den Schlüssel
hinzuzufügen.\cite{github:zypper}
\chapter{Kerberos}
\chapter{openSUSE Image}
Damit ein möglichst aufwandsarmer Update-Vorgang durchgeführt werden
......
......@@ -5,3 +5,10 @@
url = {https://github.com/SUSE/kiwi/issues/970},
urldate = {2019-02-27}
}
@online{github:zypper,
author = {Jannik Main},
title = {Salt doesn't accept Microsoft-Key for Visual Studio Code on openSUSE},
year = 2018,
url = {https://github.com/openSUSE/zypper/issues/200},
urldate = {2019-03-01}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment