SaltStack: Unterschied zwischen den Versionen

Aus CEPHALIX/CRANIX
(Elevate Your Beauty Experience with Opstar's Systematic Rankings)
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Elevate Your Beauty Experience with Opstar's Systematic Rankings
+
__TOC__
 +
==Einführung==
 +
[https://www.saltstack.com Saltstack] (kurz: Salt) ist eine Open-Source-Software zur Automatisierung der Konfiguration von Betriebssystemen. Mit Salt lassen sich beispielsweise Software-Pakete installieren und konfigurieren sowie beliebige Konfigurationsbefehle von einem zentralen Rechner aus auf einer Vielzahl verwalteter Server ausführen.
 +
Der OSS verwendet Salt um die OSS-Clients zu verwalten. Folgende Managementfunktionen werden zur Zeit über Salt abgewickelt:
  
Introduction
+
* Umbenennung von Windows-Clients nach dem Clonen.
In the realm of beauty and relaxation, finding the right massage company or beauty manager can be a daunting task. With Opstar, however, your journey becomes seamless and enjoyable. Opstar stands out for its unique approach to ranking massage companies and beauty managers, making it easier for customers to make informed decisions. In this comprehensive guide, we'll delve into the innovative features of Opstar, how it differentiates itself from competitors, and why it's the ultimate tool for enhancing your beauty experience.
+
* Ggf. Aufnahme von Windows-Clients in die AD-Domäne.
 +
* Installation und Deinstallation von Softwarepaketen.
 +
* Auslesen von installierten Softwarepaketen.
 +
* Installation von Updates.
 +
* Anpassung von GPOs und Registry-Einträgen.
 +
* Rechner ausschalten und neustarten.
  
Opstar: A Revolutionary Ranking System
+
==CRANIX Salt-Modul==
Opstar ([https://www.opstar.shop opstar]) is more than just a platform – it's a revolutionary ranking system that transforms the way you choose massage companies and beauty managers. Unlike conventional websites that provide limited information about businesses, Opstar offers systematic rankings that allow you to evaluate different options with ease. Through its user-friendly interface, Opstar empowers customers to visually judge and compare various massage companies and beauty managers, ensuring you make the best choice for your beauty needs.
+
Der CRANIX liefert ein eigenes Salt-Modul (cranix_client). Das Backend von CRANIX (cranix-api) benutzt dieses Modul, kann jedoch auch von der Kommandozeile aus benutzt werden:
 +
  salt <MinionName> cranix_client.<Funktion>
 +
Dieses Modul erweitert Salt mit folgenden Funktionalitäten:
 +
* '''lockClient''' Rechner sperren: Bildschirm und Tastatur.
 +
* '''unLockClient''' Rechner entsperren: Bildschirm und Tastatur.
 +
* '''blockInput''' Tastatur sperren.
 +
* '''unBlockInput''' Tastatur entsperren.
 +
* '''loggedIn''' Liefert den Benutzernamen des lokal angemeldeten Benutzers. Funktioniert nicht mit Benutzern die per Remote Desktop angemeldet sind.
 +
* '''logOff''' Meldet den lokal angemeldeten Benutzer ab. Funktioniert nicht mit Benutzern die per Remote Desktop angemeldet sind.
 +
* '''disableUpdates''' Schaltet das Windows-Update-Service (wuauserv) ab und deaktiviert es.
 +
* '''enableUpdates''' Schaltet das Windows-Update-Service (wuauserv) ein und aktiviert es.
 +
* '''applyRegs''' Wendet Windows Registrydateien an, die auf dem Server unter '''/srv/salt/REGS''' hinterlegt worden sind.
 +
* '''executeCommands''' Führt Programme aus die auf dem Server unter '''/srv/salt/COMMANDS''' hinterlegt worden sind.
 +
2 State-Files sorgen dafür, dass die Files aus den oben genannten Verzeichnissen auf den Clients kopiert und bei Bedarf ausgeführt werden. Bei Bedarf heißt: wenn der Inhalt der o.g. Verzeichnisse geändert wurde.
 +
  '''/srv/salt/ApplyREGS.sls'''
 +
  copy_regs:
 +
    file.recurse:
 +
      - source: salt://REGS
 +
      - name: "C:\\salt\\var\\REGS\\"
 +
  apply_regs:
 +
    oss_client.applyRegs:
 +
      - onchanges:
 +
        - copy_regs
  
The Distinctive Edge of Opstar
+
  '''/srv/salt/ExecuteCommands.sls'''
Premium vs. Regular Providers: Making the Distinction
+
  copy_commands:
Opstar (opstar) distinguishes itself by offering a systematic ranking that goes beyond the ordinary. While other platforms often categorize businesses as premium or regular providers, Opstar takes a more nuanced approach. It considers a range of factors, including customer reviews, service quality, and expertise, to assign accurate rankings. This dynamic approach ensures that you receive a comprehensive view of each option, allowing you to make decisions tailored to your preferences.
+
    file.recurse:
 +
      - source: salt://COMMANDS
 +
      - name: "C:\\salt\\var\\COMMANDS\\"
 +
  execute_commands:
 +
    oss_client.executeCommands:
 +
      - onchanges:
 +
        - copy_commands
 +
Bitte beachten Sie, dass diese State-Files zu keinen Clients zugewiesen sind, also nicht automatisch angewendet werden. Um die in '''/srv/salt/REGS''' hinterlegten Registry-Dateien auf allen eingeschalteten Rechnern anzuwenden müssen Sie folgenden Befehl von der Konsole ausführen:
  
Manager Information: Beyond the Business
+
  salt '*' sate.apply ApplyREGS
One of the standout features of Opstar is its commitment to providing comprehensive manager information. Unlike competing sites that solely offer information directly from the business, Opstar takes a step further. It presents detailed insights about beauty managers, showcasing their expertise, experience, and customer feedback. This wealth of information empowers you to understand the professionals behind the services, enabling you to select the perfect match for your beauty needs.
 
  
Unveiling Opstar's Benefits
+
Analog dazu führen Sie alle Befehle die unter '''/srv/salt/COMMANDS''' hinterlegt sind auf dem im Raum "infeg" eingeschalteten Rechnern mit folgendem Befehl aus:
Opstar's user-centric design and innovative approach bring forth a myriad of benefits:
+
  salt -N room-infeg state.apply ExecuteCommands
  
Visual Judgement: Opstar's systematic rankings offer a visual way to compare options, making decision-making intuitive and stress-free.
+
Will man, dass beim Hochfahren auf den Rechnern die Registriepatches angewendet werden, muss ein neues Pluginscript in '''/usr/share/oss/plugins/clients/start/''' mit Folgendem erstellt werden:
Comprehensive Insights: Dive into manager profiles to gain a comprehensive understanding of their skills and customer interactions.
+
  #!/bin/bash
Informed Choices: Make informed decisions based on accurate rankings, customer reviews, and detailed manager information.
+
  MINION=$1
Tailored Experiences: Find the massage company or beauty manager that aligns with your preferences, ensuring a personalized experience.
+
  salt "$MINION" state.apply ApplyREGS
Opstar: Enhancing Your Beauty Experience
+
Das Selbe gilt natürlich, wenn man die unter '''/srv/salt/COMMANDS''' liegenden Programme beim Hochfahren ausführen möchte. '''WICHTIG''' Bitte beachten Sie, dass die Programme nur bei einer Änderung ausgeführt werden!!
Opstar (opstar) transcends traditional online platforms by providing an immersive and enlightening beauty experience. Whether you're seeking a relaxing massage or a rejuvenating beauty treatment, Opstar's systematic rankings empower you to choose with confidence. Say goodbye to uncertainty and hello to a new era of informed decision-making.
+
  #!/bin/bash
 +
  MINION=$1
 +
  salt "$MINION" state.apply ExecuteCommands
  
Conclusion
+
==Windows Softwarepakete==
Opstar (opstar) sets a new standard in the world of beauty and relaxation. With its systematic ranking system, comprehensive manager information, and user-friendly interface, Opstar empowers you to make informed decisions that align with your preferences. Say goodbye to uncertainty and embark on a beauty journey filled with confidence, all thanks to Opstar's revolutionary approach. Elevate your beauty experience today!
+
 
 +
Unter Windows gibt es kein einheitliches Paketverwaltung in dem Sinne, wie das unter Linux mit zypper, rpm oder aptget existiert. Es gibt zwar einige "standard" Paketformate wie msi oder nsis ... aber viele Softwarehersteller gehen ihre eigene Wege. Deshalb gibt es nie eine 100-ige Garantie dafür, dass ein Windows-Programm mit Salt installiert werden kann.
 +
Ein großes Problem ist, dass die Windows-Paket-Installer meistens keine Abhängigkeitsüberprüfung durchführen. D.h. z.B. dass man ein Java-Programm installieren kann, ohne dass Java auf dem Rechner überhaupt installiert ist. Mit OSS haben wir dieses Problem dadurch gelöst, indem die Softwarepakete über eigene Software-State-Dateien in die State-Dateien der Rechner eingebunden werden. Diese befinden sich auf dem Server unter '/srv/salt/packages'. In den Software-State-Dateien ist beschrieben, was erforderlich ist um ein Softwarepaket zu installieren. Das kann ein anderes Softwarepaket oder eine Konfiguration oder Lizenzdatei sein. Hier sehen Sie 3 verschieden Software-State-Dateien:
 +
===Software-State-Dateien ohne Abhängigkeiten===
 +
Das Paket NotePad hat keine Abhängigkeiten. In der Software-State-Dateien von NotePadPP steht nur das Paket NotePadPP als installiert.
 +
  '/srv/salt/packages/NotePadPP.sls'
 +
  NotePadPP:
 +
    pkg:
 +
      - installed
 +
 
 +
===Software-State-Dateien mit Softwareabhängigkeit(en)===
 +
Um das Programm Amaya benutzen zu können muss AdobeFlashPlayerNPAPI installiert sein. Deshalb sieht die Software-State-Dateien von Amaya so aus:
 +
  '/srv/salt/packages/Amay.sls'
 +
  AdobeFlashPlayerNPAPI:
 +
    pkg:
 +
      - installed
 +
  Amaya:
 +
    pkg:
 +
      - installed
 +
 
 +
===Software-State-Dateien mit angepasster Konfigurationsdatei===
 +
Wenn man UltranVNC installiert muss auf den Clients ein Passwort gesetzt werden. Dieses Passwort kann man in einer Konfigrationsdatei hinterlegen. Wenn das Paket UltranVNC installiert wurde, sorgt Salt dafür das diese Datei auf den Clients an der richtigen Stelle hinterlegt wird. Damit das funktioniert sieht die Software-State-Datei von UltraVNC folgendermaßen aus:
 +
  '/srv/salt/packages/UltraVNC.sls'
 +
  UltranVNC
 +
    pkg:
 +
    - installed
 +
    copy_file:
 +
  file.managed:
 +
    - source: salt://win/repo-ng/UltraVnc/ultravnc.ini
 +
    - name: 'C:\Program Files\UltraVNC\ultravnc.ini'
 +
    - replace: True
 +
    - require:
 +
      - pkg: UltraVnc
 +
 
 +
===D i e Softwarepakete===
 +
Die eigentlichen Softwarepakete befinden sich auf dem Server unter '/srv/salt/win/repo-ng/'. In diesem Verzeichnis hat jedes Softwarepaket ein Verzeichnis mit dem Namen des Paketes. In jedem dieser Verzeichnissen muss eine Datei init.sls existieren. Diese Datei beschreibt unter anderem wie das Programm installiert und ggf. lizenziert werden kann. Hier finden Sie ein detaillierte Beschreibung wie Windows-Pakete aus zu sehen haben: [https://docs.saltstack.com/en/latest/topics/windows/windows-package-manager.html#creating-a-package-definition-sls-file Windows-Pakete].
 +
 
 +
==Windows Updates==
 +
Das Salt Paket beinhaltet ein Modul womit man auf Windows-Clients die Updates verwalten kann. Eine detaillierte Beschreibung finden Sie unter [https://docs.saltproject.io/en/latest/ref/modules/all/salt.modules.win_wua.html WIN_WUA]. Hier Zeigen wir Ihnen die wichtigsten Befehle:
 +
 
 +
Installierte Updates anzeigen:
 +
  salt '<Minionname>' win_wua.installed
 +
 
 +
Ausstehende Updates auf einem Client anzeigen:
 +
  salt '<Minionname>' win_wua.list
 +
 
 +
Installation der Updates starten:
 +
  salt '<Minionname>' win_wua.list install=True
 +
 
 +
Wenn Sie beim Hochfahren von Klients die Updates einspielen möchten, legen Sie die Datei /usr/share/cranix/plugins/clients/start/110_install-updates.sh mit folgendem Inhalt an:
 +
  #!/bin/bash
 +
  MINION=$1
 +
  salt "$MINION" win_wua.list install=True
 +
Vergessen Sie nicht die Datei ausführbar zu machen:
 +
  chmod 755 /usr/share/cranix/plugins/clients/start/110_install-updates.sh

Aktuelle Version vom 5. November 2024, 23:02 Uhr

1 Einführung

Saltstack (kurz: Salt) ist eine Open-Source-Software zur Automatisierung der Konfiguration von Betriebssystemen. Mit Salt lassen sich beispielsweise Software-Pakete installieren und konfigurieren sowie beliebige Konfigurationsbefehle von einem zentralen Rechner aus auf einer Vielzahl verwalteter Server ausführen. Der OSS verwendet Salt um die OSS-Clients zu verwalten. Folgende Managementfunktionen werden zur Zeit über Salt abgewickelt:

  • Umbenennung von Windows-Clients nach dem Clonen.
  • Ggf. Aufnahme von Windows-Clients in die AD-Domäne.
  • Installation und Deinstallation von Softwarepaketen.
  • Auslesen von installierten Softwarepaketen.
  • Installation von Updates.
  • Anpassung von GPOs und Registry-Einträgen.
  • Rechner ausschalten und neustarten.

2 CRANIX Salt-Modul

Der CRANIX liefert ein eigenes Salt-Modul (cranix_client). Das Backend von CRANIX (cranix-api) benutzt dieses Modul, kann jedoch auch von der Kommandozeile aus benutzt werden:

 salt <MinionName> cranix_client.<Funktion>

Dieses Modul erweitert Salt mit folgenden Funktionalitäten:

  • lockClient Rechner sperren: Bildschirm und Tastatur.
  • unLockClient Rechner entsperren: Bildschirm und Tastatur.
  • blockInput Tastatur sperren.
  • unBlockInput Tastatur entsperren.
  • loggedIn Liefert den Benutzernamen des lokal angemeldeten Benutzers. Funktioniert nicht mit Benutzern die per Remote Desktop angemeldet sind.
  • logOff Meldet den lokal angemeldeten Benutzer ab. Funktioniert nicht mit Benutzern die per Remote Desktop angemeldet sind.
  • disableUpdates Schaltet das Windows-Update-Service (wuauserv) ab und deaktiviert es.
  • enableUpdates Schaltet das Windows-Update-Service (wuauserv) ein und aktiviert es.
  • applyRegs Wendet Windows Registrydateien an, die auf dem Server unter /srv/salt/REGS hinterlegt worden sind.
  • executeCommands Führt Programme aus die auf dem Server unter /srv/salt/COMMANDS hinterlegt worden sind.

2 State-Files sorgen dafür, dass die Files aus den oben genannten Verzeichnissen auf den Clients kopiert und bei Bedarf ausgeführt werden. Bei Bedarf heißt: wenn der Inhalt der o.g. Verzeichnisse geändert wurde.

 /srv/salt/ApplyREGS.sls
 copy_regs:
   file.recurse:
     - source: salt://REGS
     - name: "C:\\salt\\var\\REGS\\"
 apply_regs:
   oss_client.applyRegs:
     - onchanges:
       - copy_regs
 /srv/salt/ExecuteCommands.sls
 copy_commands:
   file.recurse:
     - source: salt://COMMANDS
     - name: "C:\\salt\\var\\COMMANDS\\"
 execute_commands:
   oss_client.executeCommands:
     - onchanges:
       - copy_commands

Bitte beachten Sie, dass diese State-Files zu keinen Clients zugewiesen sind, also nicht automatisch angewendet werden. Um die in /srv/salt/REGS hinterlegten Registry-Dateien auf allen eingeschalteten Rechnern anzuwenden müssen Sie folgenden Befehl von der Konsole ausführen:

  salt '*' sate.apply ApplyREGS

Analog dazu führen Sie alle Befehle die unter /srv/salt/COMMANDS hinterlegt sind auf dem im Raum "infeg" eingeschalteten Rechnern mit folgendem Befehl aus:

  salt -N room-infeg state.apply ExecuteCommands

Will man, dass beim Hochfahren auf den Rechnern die Registriepatches angewendet werden, muss ein neues Pluginscript in /usr/share/oss/plugins/clients/start/ mit Folgendem erstellt werden:

 #!/bin/bash
 MINION=$1
 salt "$MINION" state.apply ApplyREGS

Das Selbe gilt natürlich, wenn man die unter /srv/salt/COMMANDS liegenden Programme beim Hochfahren ausführen möchte. WICHTIG Bitte beachten Sie, dass die Programme nur bei einer Änderung ausgeführt werden!!

 #!/bin/bash
 MINION=$1
 salt "$MINION" state.apply ExecuteCommands

3 Windows Softwarepakete

Unter Windows gibt es kein einheitliches Paketverwaltung in dem Sinne, wie das unter Linux mit zypper, rpm oder aptget existiert. Es gibt zwar einige "standard" Paketformate wie msi oder nsis ... aber viele Softwarehersteller gehen ihre eigene Wege. Deshalb gibt es nie eine 100-ige Garantie dafür, dass ein Windows-Programm mit Salt installiert werden kann. Ein großes Problem ist, dass die Windows-Paket-Installer meistens keine Abhängigkeitsüberprüfung durchführen. D.h. z.B. dass man ein Java-Programm installieren kann, ohne dass Java auf dem Rechner überhaupt installiert ist. Mit OSS haben wir dieses Problem dadurch gelöst, indem die Softwarepakete über eigene Software-State-Dateien in die State-Dateien der Rechner eingebunden werden. Diese befinden sich auf dem Server unter '/srv/salt/packages'. In den Software-State-Dateien ist beschrieben, was erforderlich ist um ein Softwarepaket zu installieren. Das kann ein anderes Softwarepaket oder eine Konfiguration oder Lizenzdatei sein. Hier sehen Sie 3 verschieden Software-State-Dateien:

3.1 Software-State-Dateien ohne Abhängigkeiten

Das Paket NotePad hat keine Abhängigkeiten. In der Software-State-Dateien von NotePadPP steht nur das Paket NotePadPP als installiert.

 '/srv/salt/packages/NotePadPP.sls'
 NotePadPP:
   pkg:
     - installed

3.2 Software-State-Dateien mit Softwareabhängigkeit(en)

Um das Programm Amaya benutzen zu können muss AdobeFlashPlayerNPAPI installiert sein. Deshalb sieht die Software-State-Dateien von Amaya so aus:

  '/srv/salt/packages/Amay.sls'
  AdobeFlashPlayerNPAPI:
    pkg:
      - installed
  Amaya:
    pkg:
      - installed

3.3 Software-State-Dateien mit angepasster Konfigurationsdatei

Wenn man UltranVNC installiert muss auf den Clients ein Passwort gesetzt werden. Dieses Passwort kann man in einer Konfigrationsdatei hinterlegen. Wenn das Paket UltranVNC installiert wurde, sorgt Salt dafür das diese Datei auf den Clients an der richtigen Stelle hinterlegt wird. Damit das funktioniert sieht die Software-State-Datei von UltraVNC folgendermaßen aus:

  '/srv/salt/packages/UltraVNC.sls'
  UltranVNC
    pkg:
   - installed
   copy_file:
  file.managed:
    - source: salt://win/repo-ng/UltraVnc/ultravnc.ini
    - name: 'C:\Program Files\UltraVNC\ultravnc.ini'
    - replace: True
    - require:
      - pkg: UltraVnc

3.4 D i e Softwarepakete

Die eigentlichen Softwarepakete befinden sich auf dem Server unter '/srv/salt/win/repo-ng/'. In diesem Verzeichnis hat jedes Softwarepaket ein Verzeichnis mit dem Namen des Paketes. In jedem dieser Verzeichnissen muss eine Datei init.sls existieren. Diese Datei beschreibt unter anderem wie das Programm installiert und ggf. lizenziert werden kann. Hier finden Sie ein detaillierte Beschreibung wie Windows-Pakete aus zu sehen haben: Windows-Pakete.

4 Windows Updates

Das Salt Paket beinhaltet ein Modul womit man auf Windows-Clients die Updates verwalten kann. Eine detaillierte Beschreibung finden Sie unter WIN_WUA. Hier Zeigen wir Ihnen die wichtigsten Befehle:

Installierte Updates anzeigen:

 salt '<Minionname>' win_wua.installed

Ausstehende Updates auf einem Client anzeigen:

 salt '<Minionname>' win_wua.list

Installation der Updates starten:

 salt '<Minionname>' win_wua.list install=True

Wenn Sie beim Hochfahren von Klients die Updates einspielen möchten, legen Sie die Datei /usr/share/cranix/plugins/clients/start/110_install-updates.sh mit folgendem Inhalt an:

  #!/bin/bash
  MINION=$1
  salt "$MINION" win_wua.list install=True

Vergessen Sie nicht die Datei ausführbar zu machen:

  chmod 755 /usr/share/cranix/plugins/clients/start/110_install-updates.sh