Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von Version 2.1
bearbeitet von Christian Germann
am 2022/08/09 10:53
am 2022/08/09 10:53
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 6.1
bearbeitet von Jonas Mayer
am 2023/03/15 08:44
am 2023/03/15 08:44
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (3 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 1 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Titel
-
... ... @@ -1,1 +1,1 @@ 1 -Autoconf- Konfigurationerstellen1 +Eigene Autoconf-Rolle erstellen - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. cge@sbede1 +XWiki.jonasmayer@sbede - Inhalt
-
... ... @@ -1,12 +1,12 @@ 1 -Autoconf liegt wie der Vorgänger Ansible im ctrl-g1 Container und dient dazu Einstellungen oder Konfigurationen auf die deployten Rechner ohne ein Image dafür zu schreiben. 1 +Autoconf liegt wie der Vorgänger Ansible im ctrl-g1 Container und dient dazu, Einstellungen oder Konfigurationen auf die deployten Rechner zu übertragen, ohne ein Image dafür zu schreiben. 2 2 3 3 Von SBE ausgelieferte Rollen befinden sich Im Pfad {{box}}/usr/lib/ld-autoconf/logodidact/roles/{{/box}}. 4 4 5 -Selbst erstellte Autoconf-Rollen müssen unter {{box}}/var/lib/ld-autoconf/custom/{{/box}} abgelegt werden, damit diese nicht durch Updates überschrieben werden. 5 +Selbst erstellte Autoconf-Rollen müssen unter {{box}}/data/ld/autoconf/custom{{/box}} (bzw. früher vor Puppet-Version 1.5.x unter {{box}}/var/lib/ld-autoconf/custom/{{/box}}) abgelegt werden, damit diese nicht durch Updates überschrieben werden. 6 6 7 -Der Aufbau einer Autoconf-R egel muss einer Struktur folgen, damit der Server diese Interpretieren kann.7 +Der Aufbau einer Autoconf-Rolle muss einer Struktur folgen, damit der Server diese Interpretieren kann. 8 8 9 -Unterhalb der Regel muss ein Ordner mit Namen {{box}}meta{{/box}} mit einer {{box}}logodidact.yml{{/box}} liegen. 9 +Unterhalb der Regel muss ein Ordner mit Namen {{box}}meta{{/box}} mit einer {{box}}logodidact.yml{{/box}} liegen. In dieser Datei sind Name, Beschreibung, Ersteller sowie weitere Informationen zur Autoconf-Rolle festgelegt. 10 10 11 11 12 12 ==== **Beispielaufbau der logodidact.yml:** ==== ... ... @@ -44,19 +44,27 @@ 44 44 - LINUX 45 45 ))) 46 46 47 - uuid =ID derAutoconf-Regel, muss einmalig sein.Bei einereigenenAutoconf-Regel sollteder Wert ambestenneugeneriert werden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]]47 +display_name = Anzeigename der Autoconf-Rolle im LD Control Center 48 48 49 - tags=beschreibtinwelcherPhasedie Autoconf-Regel aktivist.49 +uuid = ID der Autoconf-Regel, muss einmalig sein. Bei einer eigenen Autoconf-Rolle sollte der Wert am besten neu generiert werden. [[https:~~/~~/www.uuidgenerator.net/>>url:https://www.uuidgenerator.net/]] 50 50 51 - vars =definiertVariablendie denSkriptenübergebenwerden51 +tags = beschreibt, in welchen Phasen die Autoconf-Regel ausgeführt wird. 52 52 53 - display_name =NamederVariable imctrl53 +systems = Legt fest, welche Betriebssystem-Typen durch die Autoconf-Rolle unterstützt werden. Gültige Systeme sind: WINDOWS / LINUX 54 54 55 - optional=bestimmtob dieOption inderAutoconf-Regel optionalist55 +vars = definiert mögliche Variablen, die den Skripten übergeben werden 56 56 57 -type = bestimmt den Wert der Variable. Mögliche Werte STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 58 -ENUM entspricht einem Dropdown-Menü, in dem man aus vordefinierte Werte auswählen kann: 57 + ~* display_name = Name der konfigurierbaren Variable im Control Center 59 59 59 + ~* example = Zeigt einen grau eingefärbten Beispieltext innerhalb Variable an, ohne dass dieser als Wert festgelegt ist (Hilfsmittel für Anwender). 60 + 61 + ~* optional = bestimmt, ob die Variable zwingend mit einem Wert belegt werden muss 62 + 63 + ~* type = bestimmt den Typ der Variable. Gültige Typen sind: STRING, PASSWORD, BOOLEAN, ENUM, ARRAY, INTEGER 64 + 65 + 66 +**Beispiel für eine Variable:** 67 + 60 60 (% class="box" %) 61 61 ((( 62 62 globalLogLevel: ... ... @@ -70,17 +70,19 @@ 70 70 - full 71 71 ))) 72 72 73 - exampleGibteinegrauenBeispielwertfürdieVariablevor.81 +(% style="font-size:12px" %)Tipp: Der Variablentyp ENUM aus dem Beispiel entspricht einem Dropdown-Menü, in dem man aus vordefinierte Werte auswählen kann: 74 74 75 -systems = für welches Betriebssystem existieren Skripte in der Autoconf-Regel 76 76 84 +Für die Funktionalität der Autoconf-Rolle ist es nötig, PowerShell-Skripte am Server abzuspeichern, die die Instruktionen an den Arbeitsstationen ausführen. Diese Skripte liegen unterhalb der Autoconf-Rolle im Verzeichnis {{box}}win{{/box}}. Darin sind folgende Dateinamen zulässig: 77 77 78 - Die eigentliche Skripte liegen direkt unterhalb der Autoconf-Regel imVerzeichnis {{box}}win{{/box}} neben dem Ordner {{box}}meta{{/box}}. Dort kann das Script main.ps1 heißen oder je nach dem in welcher Phase des Deployment es ausgeführt werden soll auch custom.ps1, setup.ps1, audit.ps1.86 +main.ps1 heißen oder je nach dem in welcher Phase des Deployment es ausgeführt werden soll auch custom.ps1, setup.ps1, audit.ps1. 79 79 80 80 81 81 ==== **Beispielaufbau der main.ps1** ==== 82 82 83 83 Im win-Verzeichnis können sich unterschiedliche Powershellskripte befinden. Der jeweilige Name der .ps1 Datei gibt an zu welcher Phase die Datei ausgeführt wird. 92 + 93 +{{code}} 84 84 user.ps1 = user Phase, nach der Anmeldung 85 85 86 86 custom.ps1 = custom Phase ... ... @@ -91,7 +91,7 @@ 91 91 92 92 main.ps1 = alle Phasen 93 93 94 -root@ctrl-g1:~ ~# cat /usr/lib/ld-autoconf/logodidact/roles/ld_wlan_psk/win/main.ps1104 +root@ctrl-g1:~ # cat /usr/lib/ld-autoconf/logodidact/roles/ld_wlan_psk/win/main.ps1 95 95 96 96 Param 97 97 ( ... ... @@ -102,9 +102,10 @@ 102 102 [String] 103 103 $psk 104 104 ) 105 -\\if ($ssid -ne '' -and $psk -ne '') { 115 + 116 +if ($ssid -ne '' -and $psk -ne '') { 106 106 $profile = @' 107 -<WLANProfile xmlns="http: ~/~/www.microsoft.com/networking/WLAN/profile/v1">118 +<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1"> 108 108 <name>{0}</name> 109 109 <SSIDConfig> 110 110 <SSID> ... ... @@ -129,24 +129,32 @@ 129 129 </MSM> 130 130 </WLANProfile> 131 131 '@ -f $ssid, $psk 132 -\\ $file = "$AUTOCONF_TEMP_DIR\ld_wlan_psk\wlan.xml" 133 -\\ $profile | Out-File (New-Item $file -Force) 134 -\\ Get-NetAdapter | Where-Object { $_.PhysicalMediaType -eq 'Native 802.11' -or ` 143 + 144 + $file = "$AUTOCONF_TEMP_DIR\ld_wlan_psk\wlan.xml" 145 + 146 + $profile | Out-File (New-Item $file -Force) 147 + 148 + Get-NetAdapter | Where-Object { $_.PhysicalMediaType -eq 'Native 802.11' -or ` 135 135 $_.PhysicalMediaType -eq 'Wireless LAN' -or ` 136 136 $_.PhysicalMediaType -eq 'Wireless WAN' } | ForEach-Object { 137 -\\ Write-Verbose "Creating wlan profile for '$ssid' on interface '$($_.Name)'" 151 + 152 + Write-Verbose "Creating wlan profile for '$ssid' on interface '$($_.Name)'" 138 138 netsh wlan add profile filename= "$file" interface= "$($_.Name)" 139 139 } 140 -\\ Remove-Item -Path $file -Force 155 + 156 + Remove-Item -Path $file -Force 141 141 } 142 142 143 143 Param() = hier werden die übergebenen Parameter von meta/logodidact.yml zu lokale Variablen. 160 +{{/code}} 144 144 145 - **NeueAutoConf-Regelfreigeben**162 +==== ==== 146 146 147 -Neue Autoconf-Regel müssen mit dem Befehl update-autoconf-archive eingelesen werden. 164 +==== **Neue AutoConf-Regel freigeben** ==== 165 + 166 +Neue Autoconf-Regel müssen mit dem Befehl {{box}}update-autoconf-archive{{/box}} eingelesen werden. 148 148 Ansonsten werden die Autoconfrollen auch zeitbasiert (Alle 4 Stunden) neu eingelesen. 149 -Im Controlcenter im Expertenmodus dann folgenden Knopfen drücken, damit dort auch die neuen Autoconf-Regeln eingelesen werden. 150 - 168 +Drücken Sie Im Controlcenter mit aktivieren Expertenmodus folgenden Knopfen, damit dort auch die neuen Autoconf-Regeln verfügbar werden. 151 151 152 -[[image:https://wiki.sbe.de/xwiki/bin/download/Main/SBE_intern/LogoDIDACT2.0/Lddeploy/Autoconf%20erstellen/WebHome/autoconf.png?rev=1.1||alt="autoconf.png"]] 170 +[[image:attach:autoconf.png||data-xwiki-image-style-border="true"]] 171 +
- autoconf.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.cge@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +73.0 KB - Inhalt