Differences between revisions 101 and 133 (spanning 32 versions)
Revision 101 as of 2014-03-12 10:56:11
Size: 13514
Comment:
Revision 133 as of 2023-01-12 22:32:05
Size: 9943
Editor: FabianKrack
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Konfigurationsmanagement mit VAMOS, Subversion, SUE und Cfengine == == Konfigurationsmanagement mit VAMOS, Git, SUE, Cfengine und Ansible ==
Line 6: Line 6:
===== SUE Subversion Server =====
 * es existiert ein SVN Repository, welches auf allen Hosts lokal ausgecheckt wird (wenn der Host für sue/svn konfiguriert ist)
 * Features können nach und nach durch Erstellen eines Files $TFEAT/<feature>/svn umgestellt werden
  * es ist daran zu denken, dass das Repo, alle Utilities und Module auch im SVN verfügbar sein müssen
 * der Subversion Server läuft auf znrepo (mit SL6)
 * Repository findet man unter /var/svn/suecf
 * Zugang zum Repo
  * entweder über User/Passwort https://znrepo.ifh.de/suecf/
    read/only Access für Hosts (/usr/sue/etc/suecf-svn.cfg)
    * Konfiguration svn: /var/svn/accfile
  * oder mit Kerberos-Authentisierung https://znrepo.ifh.de/svn
    read/write Access für Admins und für Installationsserver(pallas) mit registry-Ticket
    * Konfiguration svn: /var/svn/accfilekerb (enthält alle Pricipals, die Änderungen vornehmen dürfen)
 * der Subversion Server wird durch das Feature svn konfiguriert
<!> Diese Infos sind teilweise veraltet. Sue wird seit 2020 mit Git verwendet. Außerdem findet eine Migration nach Ansible statt.
Line 23: Line 10:
 * die sue-svn Scripte befinden sich in /usr/sue/sbin, keine Links ins AFS mehr, (rpm DZ_sue)  * die sue Scripte befinden sich in /usr/sue/sbin, keine Links ins AFS mehr, (rpm DZ_sue)
Line 37: Line 24:
 -F <feature>:<dir> to test a feature on a host (maybe before putting the code into svn),  -F <feature>:<dir> to test a feature on a host (maybe before putting the code into git),
Line 47: Line 34:
  check network connection and the availability of the svn server,
  runs 'svn checkout; sue.bootstrap' and then sue.run with the given mode
  check network connection and the availability of the git server,
  runs 'git pull; sue.bootstrap' and then sue.run with the given mode
Line 70: Line 57:
   * SVN Checkout    * Git pull
Line 73: Line 60:

==== Umstellung auf SUE/SVN Umgebung auf einem Linux Host ====
 * alle SL5 und SL6 sind umgestellt
  * feature aaasue installiert ''/usr/sue/etc/suecf-svn.cfg'' (user/passwort für svs) vom cfengine server
     (nur gebraucht bei vorhandenen Installationen, sonst über ai verteilt)
  * feature sue wird nicht mehr verwendet
  * rpm ''DZ_sue'' stattdessen
  * Bootscript /etc/init.d/sue_boot startet ''/usr/sue/sbin/sue.run -m boot''
Line 103: Line 82:
 * auf SL4 und Solaris funktionieren die alten sue Scripten und das ''/products/sue/etc/touchfeatures'' kann verwendet werden
Line 108: Line 86:
==== Nutzung von Git ====
Line 109: Line 88:
==== Nutzung von SVN ==== Die Entwicklung von Sue/Git findet im gitlab auf repo.zeuthen.desy.de statt.
Sue holt sich die Repos von einem der Git Mirror znrepo[1-3].

Um Zugriff zu https://repo.zeuthen.desy.de/infra/sue-cfengine zu erhalten bitte auf 1x Anmelden. Anschließen jemanden aus der Unix Gruppe bitten in die Gitlab Infra Gruppe aufgenommen zu werden. In https://repo.zeuthen.desy.de/profile/keys einen SSH Key hinterlegen oder alternativ immer per HTTPs arbeiten.

 * git clone https://repo.zeuthen.desy.de/infra/sue-cfengine.git
 * cd sue-cfengine
 * gewünsche Änderungen durchführen
 * wenn neue Dateien erstellt wurden. "git add $PATH" bzw. "git add ." im aktullen Pfad
 * git commit -am "meine aktuellen Änderungen sind das und das"
 * git push
 * bei https wird jetzt nach dem Usernamen und Passwort gefragt. Hier mit dem zna* Account sich anmelden.
Line 111: Line 101:
===== Erste Benutzung von SUE/SVN =====
 * Zugangsberechtigung: ~TARCH/svn/ServerSUE/var/svn/accfilekerb
 * auschecken: `svn co https://znrepo.ifh.de/svn` [ <meinrepository> ]
Line 115: Line 102:
===== Einchecken neuer Features =====
 * auschecken
 * einchecken von ~TFEAT/<feature>, ~PFEAT/<feature>, ~TARCH/<feature>, ~PARCH/<feature>
  * Kopieren der neuen Verzeichnisse ins eigene Repo und notwendige Anpassungsarbeiten durchführen
   * bitte vorher nach Möglichkeit aufräumen
  * dann mit ''svn add <meinrepository>/...'' die Verzeichnisse hinzufügen
  * auch prüfen: cfengine Module, utils aktualisieren
  * svn commit <meinrepository> -m 'Kommentar'
 * Testen und Umstellen auf SVN: mehrere Möglichkeiten:
  1) man kann das private ausgecheckte Repository zum Testen verwenden, Beispiel:
     * ''touch /etc/nosue''
     * ''/usr/sue/sbin/sue.bootstrap -F passwd:/afs/ifh.de/user/z/znawn/computing/svn/repo/test -d ''
     * jetzt verwendet sue.update den angegebenen Baum : /usr/sue/sbin/sue.update -n [-v] passwd
     * nach Beenden der Tests ''/usr/sue/sbin/sue.bootstrap;rm /etc/nosue ''
     * touch ~TFEAT/<feature>/svn
Line 131: Line 103:
  2)
     * das feature auf ''noautotest'' stellen
     * touch ~TFEAT/<feature>/svn
     * auf einem Host, der umgestellt wurde, prüfen:
     {{{
    /usr/sue/sbin/sue.checkout
    /usr/sue/sbin/sue.bootstrap
    /usr/sue/sbin/sue.update -n [-v] <feature>
     }}}
  3)
     * nach sue.checkout und sue.bootstrap kann man einzelne Variablen für Tests auf einem Host ändern
     * Beispiel: Repository für feature klogin auf SVN Repo umdefiniert
     {{{
    # Syntax wie /usr/sue/var/env.pl
    cat /tmp/env.pl
    $ENV{"CF_PREFIX_KLOGIN"}='/var/cache/suecf/repo/test';
==== Liste der Features und Status ====
Line 148: Line 105:
    # Option -e erlaubt Überschreiben/Setzen von Variablen aus /usr/sue/var/env.pl
    /usr/sue/sbin/sue.update -n -e /tmp/env.pl [-v] <feature>
     }}}
     * nach notwendigen Anpassungen ''touch ~TFEAT/<feature>/svn''
EL = Enterprise Linux (RHEL,SL,CentOS)
Line 153: Line 107:
 * bei Features, deren Repo vom Vamos Workflow aktualisiert wird, muß auch dafür gesorgt werden, dass SVN Repo aktualisiert wird. Das Feature ''host'' wurde bereits umgestellt, siehe ''/afs/ifh.de/project/VAMOS/prod/conf/workflow-config''. Das Script ''svn_commit'' checkt die Änderungen ein.
  * auf pallas als root ''kinit -k registry; cd /var/site/vamos; svn co `https://znrepo.ifh.de/svn repo` ''
  * unter dem Baum ''/var/site/vamos/repo'' Änderungen vom Workflow einpflegen lassen
||<rowbgcolor="#ffffe0"> feature || EL || Ansible || Kommentare ||
||<bgcolor="#007700"> aaru ||6,7,8|| (./) || ||
||<bgcolor="#007700"> afs_backup ||7|| || ||
||<bgcolor="#007700"> afs_client ||6,7|| || ||
||<bgcolor="#007700"> afs_server ||6,7|| || ||
||<bgcolor="#007700"> ai ||7|| || ||
||<bgcolor="#007700"> arcx ||6,7|| || ||
||<bgcolor="#007700"> atlas ||5,6|| || obsolete? ||
||<bgcolor="#007700"> automount ||6,7,8|| || Wird ersetzt durch: https://repo.zeuthen.desy.de/ansible-role/autofs ||
||<bgcolor="#007700"> cfengine ||6,7|| || obsolet, davon wollen wir ja weg ;-) ||
||<bgcolor="#007700"> conmgr ||7|| || ||
||<bgcolor="#007700"> cta ||6|| || ||
||<bgcolor="#007700"> cups ||6,7,9|| (./) || wird ersetzt durch https://repo.zeuthen.desy.de/ansible-role/cups-server ||
||<bgcolor="#007700"> cvmfs ||6,7,8|| (./) || ersetzt durch https://repo.zeuthen.desy.de/ansible-role/cvmfs-client ||
||<bgcolor="#007700"> dcache ||7|| || ||
||<bgcolor="#007700"> dhcp ||7|| (./) || ersetzt durch https://repo.zeuthen.desy.de/ansible-role/dhcp-server ||
||<bgcolor="#007700"> doocsadm || 6,7|| || ||
||<bgcolor="#007700"> exclude_macs || 7|| || obsolete ||
||<bgcolor="#007700"> exports || 6,7|| || ||
||<bgcolor="#007700"> ganglia ||7|| || Use Case sollte in Zukunft mit Prometheus/Grafana abgedeckt werden ||
||<bgcolor="#007700"> gdm ||6,7|| || ||
||<bgcolor="#007700"> grid ||7|| || obsolet, ersetzt durch mehrere Ansible-Rollen (myproxy-server, gridftp-server, gridmap) ||
||<bgcolor="#007700"> group ||6,7,8|| || ||
||<bgcolor="#007700"> hostmgt ||7|| (./) || https://repo.zeuthen.desy.de/ansible-role/hostmgt ||
||<bgcolor="#007700"> hosts ||6,7|| || wird durch https://repo.zeuthen.desy.de/ansible-role/etc-hosts ersetzt (auf EL8 default) ||
||<bgcolor="#007700"> httpd ||7|| || ||
||<bgcolor="#007700"> infiniband ||7|| || ||
||<bgcolor="#007700"> iptables ||6,7|| || replaced by Ansible role https://repo.zeuthen.desy.de/ansible-role/nftables on EL8 ||
||<bgcolor="#007700"> iss ||7|| || ||
||<bgcolor="#007700"> kerberos ||6,7|| || wird durch https://repo.zeuthen.desy.de/ansible-role/kerberos-client ersetzt (auf EL8 erfolgt) ||
||<bgcolor="#007700"> kernel ||6,7|| || ||
||<bgcolor="#007700"> klogin ||6,7,8|| || ||
||<bgcolor="#007700"> kvm || 6,7 || || ||
||<bgcolor="#007700"> ldap ||7|| (./) || ersetzt durch https://repo.zeuthen.desy.de/ansible-role/openldap-server ||
||<bgcolor="#007700"> linux ||6,7|| || ||
||<bgcolor="#007700"> localdisks ||6,7|| || ||
||<bgcolor="#007700"> lustre ||7|| || ||
||<bgcolor="#BDB76B"> mailsrv ||7|| || ||
||<bgcolor="#007700"> motd ||7,8|| (./) || https://repo.zeuthen.desy.de/ansible-role/motd ||
||<bgcolor="#007700"> mysql ||7|| || ||
||<bgcolor="#007700"> name_srv ||7|| || ersetzt durch https://repo.zeuthen.desy.de/ansible-role/bind-nameserver , Client-Seite (/etc/resolv.conf) fehlt noch||
||<bgcolor="#007700"> netgroup ||6,7,8|| || ||
||<bgcolor="#007700"> nfs || 5,6 || || obsolete ||
||<bgcolor="#007700"> noc || 7,9 || (./) || wird ersetzt durch https://repo.zeuthen.desy.de/ansible-role/noc ||
||<bgcolor="#007700"> nsswitch ||6,7|| || ab EL8 https://repo.zeuthen.desy.de/ansible-role/authselect ||
||<bgcolor="#007700"> osmng || 6|| || ||
||<bgcolor="#007700"> osmdevel || 6 || obsolete ||
||<bgcolor="#007700"> pac || 5,6|| || ||
||<bgcolor="#007700"> pam ||6,7|| || ab EL8 https://repo.zeuthen.desy.de/ansible-role/authselect ||
||<bgcolor="#007700"> passwd ||6,7,8|| || ||
||<bgcolor="#007700"> passwd_prog ||6,7|| || ||
||<bgcolor="#007700"> postgres || 7|| || ||
||<bgcolor="#007700"> radius ||7,9|| (./) || ersetzt durch https://repo.zeuthen.desy.de/ansible-role/radius ||
||<bgcolor="#007700"> reg_notebooks ||7|| || obsolete ||
||<bgcolor="#007700"> samba || 5,6|| || Ansible role? ||
||<bgcolor="#007700"> scout ||5,6|| || obsolete ||
||<bgcolor="#007700"> security ||6,7|| || ||
||<bgcolor="#007700"> sge ||7|| || braucht nicht portiert werden, SGE ist Auslaufmodell ||
||<bgcolor="#007700"> ssh ||6,7|| || wird durch https://repo.zeuthen.desy.de/ansible-role/openssh ersetzt (auf EL8 default) ||
||<bgcolor="#007700"> sudo ||5,6|| || obsolete since SL7, no clear replacement at the moment ||
||<bgcolor="#007700"> syslog ||6,7,8|| || ||
||<bgcolor="#007700"> tcp_wrapper ||6,7|| || sollte auslaufen, default auf EL8: "allow all" ||
||<bgcolor="#007700"> tidy_up ||6,7|| || ||
||<bgcolor="#007700"> tsm || 7 || || ||
||<bgcolor="#007700"> vamosw ||7|| || ||
||<bgcolor="#007700"> xntp ||6,7,|| || läuft aktuell mit der von Kickstart geschriebenen Konfiguration auf EL8 ||
||<bgcolor="#007700"> znmon ||6,7|| || ||
||<bgcolor="#007700"> zzz ||6,7|| || ||
Line 157: Line 176:
===== Liste der Features und Status =====

||<rowbgcolor="#ffffe0"> feature || SL || Status || Kommentare ||
||<bgcolor="#007700"> aaru ||5,6,7||done|| ||
||<bgcolor="#007700"> afs_backup ||5,6||done|| ||
||<bgcolor="#007700"> afs_client ||5,6||done|| ||
||<bgcolor="#007700"> afs_server ||5,6||done|| ||
||<bgcolor="#BDB76B"> ai ||5||done||for SL6 (iptables,SELinux) more to do ||
||<bgcolor="#007700"> arcx ||5,6||done|| ||
||<bgcolor="#007700"> atlas ||5,6||done|| ||
||<bgcolor="#007700"> automount ||5,6||done|| ||
||<bgcolor="#007700"> cfengine ||5,6,7||done|| ||
||<bgcolor="#007700"> conmgr ||5||done|| ||
||<bgcolor="#ff3333"> csinfo ||5||todo|| most of the archive should be packaged in an rpm||
||<bgcolor="#007700"> cta ||5,6||done|| ||
||<bgcolor="#007700"> cups ||5,6||done|| ||
||<bgcolor="#007700"> cvmfs ||5,6||done|| ||
||<bgcolor="#007700"> dcache ||5,6||done|| ||
||<bgcolor="#007700"> dhcp ||5,6||done|| needs workflow support ||
||<bgcolor="#007700"> doocsadm || 5,6||done|| ||
||<bgcolor="#007700"> exclude_macs || 5,6||done|| ||
||<bgcolor="#007700"> exports || 5,6||done|| ||
||<bgcolor="#007700"> ganglia ||5,6||done|| ||
||<bgcolor="#007700"> gdm ||5,6||done|| ||
||<bgcolor="#007700"> grid ||5,6||done|| ||
||<bgcolor="#007700"> group ||5,6,7||done|| ||
||<bgcolor="#007700"> hostmgt ||5,6||done|| ||
||<bgcolor="#007700"> hosts ||5,6,7||done|| ||
||<bgcolor="#007700"> httpd ||5,6||done|| ||
||<bgcolor="#007700"> infiniband ||5,6||done|| ||
||<bgcolor="#007700"> iptables ||5,6,7||done|| ||
||<bgcolor="#007700"> iss ||5,6|| done || ||
||<bgcolor="#007700"> kerberos ||5,6||done|| ||
||<bgcolor="#007700"> kernel ||5,6||done|| ||
||<bgcolor="#007700"> klogin ||5,6,7||done|| ||
||<bgcolor="#007700"> kvm || 5 ||done|| ||
||<bgcolor="#007700"> ldap ||5||done|| ||
||<bgcolor="#007700"> linux ||5,6||done|| ||
||<bgcolor="#007700"> localdisks ||5,6||done|| ||
||<bgcolor="#007700"> lustre ||5,6||done|| ||
|| mailsrv ||5,6||todo|| ||
||<bgcolor="#007700"> motd ||5,6||done|| ||
|| mtf ||5,6||todo|| ? ||
||<bgcolor="#007700"> mysql ||5,6||done|| ||
||<bgcolor="#007700"> nagios ||5,6||done|| now server and client ||
||<bgcolor="#007700"> name_srv ||5,6||done|| ||
||<bgcolor="#007700"> netflow ||5,6||done|| ||
||<bgcolor="#007700"> netgroup ||5,6||done|| needs workflow support||
||<bgcolor="#007700"> nfs || 5,6 || done|| ||
||<bgcolor="#007700"> nsswitch ||5,6,7||done|| ||
|| osm || 5,6||todo|| ||
||<bgcolor="#007700"> osmdevel || 6 || done ||
||<bgcolor="#ff3333"> osmgit || 6 || done, but most should be put into an rpm ||
||<bgcolor="#007700"> pac || 5,6||done|| ||
||<bgcolor="#007700"> pam ||5,6||done|| ||
||<bgcolor="#007700"> passwd ||5,6,7||done|| ||
||<bgcolor="#007700"> passwd_prog ||5,6||done|| ||
||<bgcolor="#007700"> postgres || 5,6||done|| ||
||<bgcolor="#007700"> products ||5||done|| ||
||<bgcolor="#007700"> reg_notebooks ||5,6|| done || radius server, ...||
||<bgcolor="#007700"> rlogsurf || 6||done|| ||
||<bgcolor="#007700"> samba || 5,6||done|| now with a regular archive, no longer uses /project/install ||
||<bgcolor="#007700"> scout ||5,6||done|| ||
||<bgcolor="#007700"> security ||5,6,7||done|| ||
||<bgcolor="#007700"> sge ||5,6||done|| ||
|| spamd ||5,6||todo|| ||
||<bgcolor="#ff3333"> ssh ||5,6,7||done|| ||
||<bgcolor="#007700"> sudo ||5,6||done|| ||
|| svn ||5,6||todo|| ||
||<bgcolor="#007700"> syslog ||5,6||done|| ||
||<bgcolor="#007700"> tcp_wrapper ||5,6,7||done|| but urgently needs configuration cleanup (no hostnames, no netgroups, remove cruft!||
||<bgcolor="#007700"> temp || 5,6||done|| was done since May 2012||
||<bgcolor="#007700"> tidy_up ||5,6, 7||done|| ||
||<bgcolor="#007700"> trusted ||5||done|| updated it, too ||
||<bgcolor="#007700"> tsm || 5,6 ||done|| ||
||<bgcolor="#007700"> vamos ||5,6||todo|| done ||
|| vamosw || 6||todo|| ||
||<bgcolor="#007700"> vsftpd ||5(,6?)||done|| ||
||<bgcolor="#007700"> xntp ||5,6||done|| ||
||<bgcolor="#007700"> znmon || 5,6||done|| ||
||<bgcolor="#007700"> zzz ||5,6||done|| ||

===== Änderungen an Features, die schon im SVN verwaltet werden =====
 * auschecken
 * Änderungen mit ''svn commit <meinrepository> -m 'last modified ' ''einchecken

===== FAQ =====
 * Warum kann ich keine Files ''...@<datum>'' löschen mit ''svn del ...''?
  * Weil in ''@<datum>'' das Datum als Revision gedeutet wird und da diese Revision nicht existiert, wird angenommen, man will die aktuelle löschen und gelöscht wird das aktuelle File <!> .
  * Mit ' ''svn del ...@<datum>@'' ' kann man solche Files löschen.
 * Wie kann man vermeiden, dass ''.svn'' Verzeichnisse beachtet werden?
  * Folgendes ins feature einbauen:
    {{{
       ignore:
               any::
                 .svn
    }}}
 * Wie kann man das execution Bit von Files im SVN setzen?
    {{{
       svn propset svn:executable ON somescript
       svn commit -m 'comment'
    }}}
 * zurückgehen auf ältere Versionen:
  * Infos zu Änderungen
    {{{
     svn log repo/test/archive/rlogsurf/RLoghost/etc/logsurfer/kern.conf
    }}}
  * Änderungen aufzeigen
    {{{
     svn diff -r 212:218 repo/test/archive/rlogsurf/RLoghost/etc/logsurfer/kern.conf
    }}}
  * Auschecken älterer Revisions
    {{{
     svn co -r 212 https://znrepo.ifh.de/svn/test/archive/rlogsurf/RLoghost/etc/logsurfer/
    }}}
  
== Konfigurationsmaster ==
 Infos zum Konfigurationsmaster findet man [[KonfigMaster| hier]]

Konfigurationsmanagement mit VAMOS, Git, SUE, Cfengine und Ansible

Beschreibung von SUE/SVN

<!> Diese Infos sind teilweise veraltet. Sue wird seit 2020 mit Git verwendet. Außerdem findet eine Migration nach Ansible statt.

Konfiguration der Host Systeme
  • einige Scripte unter /products/sue/etc/ können nach der Umstellung nicht mehr benutzt werden und rufen automatisch die neuen Scripte aus dem RPM DZ_sue
  • die sue Scripte befinden sich in /usr/sue/sbin, keine Links ins AFS mehr, (rpm DZ_sue)
  • /usr/sue/sbin/sue.update
    • neue Option -e(env) <path> : es ist möglich, Variablen aus /usr/sue/var/env.pl zu überschreiben

    • es wird im noaction und verbose Modus informiert, welches Feature gerade abgearbeitet wird
  • /usr/sue/sbin/sue.checkout [-h] wird zum Auschecken verwendet, Pfad: /var/cache/suecf/repo
  • /usr/sue/sbin/sue.bootstrap
    • erzeugt alle Links unter /usr/sue/etc/ für die Konfiguration der Features und /usr/sue/var/env.pl
    • dafür wird auf dem vamosweb ein cgi Script mkconf2 gerufen, welches ein aktuelles tar-File generiert mit env.pl, den entsprechenden Featurelinks und mehr

/usr/sue/sbin/sue.bootstrap -h
usage:
        -d|-v     set debug mode
        -h        show usage
        -P <path> generating sue env in this directory
        -F <feature>:<dir>  to test a feature on a host (maybe before putting the code into git),
                  examples: -F sudo:/tmp/test; /tmp/test/feature/sudo and /tmp/test/archive/sudo have to exist
                            -F group:/afs/.ifh.de/common/installation/test
  • /usr/sue/sbin/check_status überprüft Netwerk und ob znrepo verfügbar ist
  • /usr/sue/sbin/set_status ist ein Link auf check_status und wird verwendet, um nach fehlgeschlagenem Checkout oder Sue-Run den Zustand zu melden, aber weitere Mails zu verhindern
  • es gibt jetzt nur noch ein Script, welches beim Booten, für den Full- oder Updates Modus gestartet wird: /usr/sue/sbin/sue.run

/usr/sue/sbin/sue.run -h 
  check network connection and the availability of the git server,
  runs 'git pull; sue.bootstrap' and then sue.run with the given mode
  informs 'scout-linux' in case of problems
Usage:
        -d      set debug mode, no delay
        -v      set verbose mode (more cfengine output), no delay
        -n      set noaction mode, implied debug mode 
        -s      skip sue.bootstrap
        -m <mode>       set mode: full,boot,update or now(default)
                nightly run in 'full' mode with delay
                run in 'boot' mode without delay
                daily run in 'update' mode for requested features ( by vamos workflow )
                run in 'now' mode without delay for given features
                  in future: 
                  daily run can switch to full mode with
                  touchfeatures -F ALL ...
        -h      show usage

  • sue.run
    • während des Bootens darf sue.run nur im "boot" Modus laufen
    • Statuscheck
    • Check, ob /etc/nosue existiert
    • Delay ermitteln
    • Git pull
    • Ermittlung der Features, die abzuarbeiten sind (über Webservice von configsrv)

    • Abarbeitung der Features

FAQ zu SUE/Cfengine

  • Liste der konfigurierten Features
    • /usr/sue/sbin/sue.bootstrap generiert Liste/Verzeichnis

    • Anzeige mit /usr/sue/sbin/sue.update --list

Updates per Cron-Jobs

tagsüber nur per workflow angestoßene Features (6-23 Uhr alle 10 Minuten)
  • cron job: /usr/sue/sbin/sue.run -m update

    • läuft nur, wenn service sue_boot status ein OK zurückmeldet

  • das sind z.Z.: hosts,netgroups,passwd,klogin,ssh
  • oder manuell aktivierte Features per activate [-h] auf SL5/SL6:

   /usr/sue/sbin/activate -F list_of_features [-H list_of_hosts] [-N list_of_netgroups]
  • nach der Abfrage der ToDo-Liste wird diese auf dem configsrv gelöscht

  • Beispiele:

   activate -F scout,sudo -N linux-server
   activate -F ANY -H mydesk              # alle Features, die standardmäßig laufen, der Test erfolgt erst auf dem Client
   activate -F nagios -H ANY

Vollständiger Lauf (ab 3 Uhr mit Verzögerung)
  • cron job: /usr/sue/sbin/sue.run -m full

Nutzung von Git

Die Entwicklung von Sue/Git findet im gitlab auf repo.zeuthen.desy.de statt. Sue holt sich die Repos von einem der Git Mirror znrepo[1-3].

Um Zugriff zu https://repo.zeuthen.desy.de/infra/sue-cfengine zu erhalten bitte auf 1x Anmelden. Anschließen jemanden aus der Unix Gruppe bitten in die Gitlab Infra Gruppe aufgenommen zu werden. In https://repo.zeuthen.desy.de/profile/keys einen SSH Key hinterlegen oder alternativ immer per HTTPs arbeiten.

  • git clone https://repo.zeuthen.desy.de/infra/sue-cfengine.git

  • cd sue-cfengine
  • gewünsche Änderungen durchführen
  • wenn neue Dateien erstellt wurden. "git add $PATH" bzw. "git add ." im aktullen Pfad
  • git commit -am "meine aktuellen Änderungen sind das und das"
  • git push
  • bei https wird jetzt nach dem Usernamen und Passwort gefragt. Hier mit dem zna* Account sich anmelden.

Liste der Features und Status

EL = Enterprise Linux (RHEL,SL,CentOS)

feature

EL

Ansible

Kommentare

aaru

6,7,8

(./)

afs_backup

7

afs_client

6,7

afs_server

6,7

ai

7

arcx

6,7

atlas

5,6

obsolete?

automount

6,7,8

Wird ersetzt durch: https://repo.zeuthen.desy.de/ansible-role/autofs

cfengine

6,7

obsolet, davon wollen wir ja weg ;-)

conmgr

7

cta

6

cups

6,7,9

(./)

wird ersetzt durch https://repo.zeuthen.desy.de/ansible-role/cups-server

cvmfs

6,7,8

(./)

ersetzt durch https://repo.zeuthen.desy.de/ansible-role/cvmfs-client

dcache

7

dhcp

7

(./)

ersetzt durch https://repo.zeuthen.desy.de/ansible-role/dhcp-server

doocsadm

6,7

exclude_macs

7

obsolete

exports

6,7

ganglia

7

Use Case sollte in Zukunft mit Prometheus/Grafana abgedeckt werden

gdm

6,7

grid

7

obsolet, ersetzt durch mehrere Ansible-Rollen (myproxy-server, gridftp-server, gridmap)

group

6,7,8

hostmgt

7

(./)

https://repo.zeuthen.desy.de/ansible-role/hostmgt

hosts

6,7

wird durch https://repo.zeuthen.desy.de/ansible-role/etc-hosts ersetzt (auf EL8 default)

httpd

7

infiniband

7

iptables

6,7

replaced by Ansible role https://repo.zeuthen.desy.de/ansible-role/nftables on EL8

iss

7

kerberos

6,7

wird durch https://repo.zeuthen.desy.de/ansible-role/kerberos-client ersetzt (auf EL8 erfolgt)

kernel

6,7

klogin

6,7,8

kvm

6,7

ldap

7

(./)

ersetzt durch https://repo.zeuthen.desy.de/ansible-role/openldap-server

linux

6,7

localdisks

6,7

lustre

7

mailsrv

7

motd

7,8

(./)

https://repo.zeuthen.desy.de/ansible-role/motd

mysql

7

name_srv

7

ersetzt durch https://repo.zeuthen.desy.de/ansible-role/bind-nameserver , Client-Seite (/etc/resolv.conf) fehlt noch

netgroup

6,7,8

nfs

5,6

obsolete

noc

7,9

(./)

wird ersetzt durch https://repo.zeuthen.desy.de/ansible-role/noc

nsswitch

6,7

ab EL8 https://repo.zeuthen.desy.de/ansible-role/authselect

osmng

6

osmdevel

6

obsolete

pac

5,6

pam

6,7

ab EL8 https://repo.zeuthen.desy.de/ansible-role/authselect

passwd

6,7,8

passwd_prog

6,7

postgres

7

radius

7,9

(./)

ersetzt durch https://repo.zeuthen.desy.de/ansible-role/radius

reg_notebooks

7

obsolete

samba

5,6

Ansible role?

scout

5,6

obsolete

security

6,7

sge

7

braucht nicht portiert werden, SGE ist Auslaufmodell

ssh

6,7

wird durch https://repo.zeuthen.desy.de/ansible-role/openssh ersetzt (auf EL8 default)

sudo

5,6

obsolete since SL7, no clear replacement at the moment

syslog

6,7,8

tcp_wrapper

6,7

sollte auslaufen, default auf EL8: "allow all"

tidy_up

6,7

tsm

7

vamosw

7

xntp

6,7,

läuft aktuell mit der von Kickstart geschriebenen Konfiguration auf EL8

znmon

6,7

zzz

6,7

Konfigurationsmaster

  • Infos zum Konfigurationsmaster findet man hier

KonfigurationsManagement (last edited 2023-01-12 22:32:05 by FabianKrack)