Differences between revisions 10 and 11
Revision 10 as of 2012-01-31 08:20:42
Size: 7656
Comment:
Revision 11 as of 2012-01-31 09:08:23
Size: 7603
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
 * z.Z. wird nur das Feature scout und hosts dort verwaltet
Line 19: Line 18:
    * Konfiguration svn: /var/svn/accfilekerb
  * Anleitung siehe ...
    * Konfiguration svn: /var/svn/accfilekerb (enthält alle Pricipals, die Änderungen vornehmen dürfen)
Line 24: Line 22:
 * einige Scripte unter /products/sue/etc/ können nach der Umstellung nicht mehr benutzt werden, werden abgebrochen (wenn das RPM DZ_sue installiert ist)  * 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
Line 103: Line 101:
 * auschecken: svn co https://znrepo.ifh.de/svn <meinrepository>  * auschecken: svn co https://znrepo.ifh.de/svn [ <meinrepository> ]
Line 165: Line 163:

===== Beispiele =====
 *

Konfigurationsmanagement mit VAMOS, Subversion, SUE und Cfengine

Beschreibung von SUE/SVN

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

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-svn Scripte befinden sich in /usr/sue/sbin, keine Links ins AFS mehr, (rpm DZ_sue)
  • /usr/sue/sbin/sue.update (Link auf sue.install) fast unverändert, 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 ruft /usr/sue/sbin/mkconf

/usr/sue/sbin/sue.bootstrap -h
usage:
        -d|-v     set debug mode
        -w        use web client, overriding "clever" autodetection
                  only allowed without option 'H' and 'P'
        -h        show usage
        -H <host> run sue.bootstrap for an other host (installation,no all checks),
                  not in combination with option 'w'
        -P <path> generating sue env for an other host in this working directory,
                  mandatory for option 'H'
  • die Option -H und -P wird vom Installationsserver verwendet (ai)
  • Option -w kann auch in der Initialisierungsphase verwendet werden (SL6 Installationsprozedur)
  • /usr/sue/sbin/mkconf generiert /usr/sue/var/env.pl
  • /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, the availability of the svn server,
  runs 'svn checkout; sue.bootstrap' and then sue.run with the given mode
  informs 'scout' 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 or update
                nightly run in full mode with delay
                run in boot mode without delay
                default daily run in update mode
                  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
    • SVN Checkout
    • Ermittlung der Features, die abzuarbeiten sind
    • Abarbeitung der Features

Umstellung auf SUE/SVN Umgebung auf einem Linux Host

  • getestet auf SL5 und SL6, jetzt auch ohne Änderungen bei Neuinstallation
  • suesvn-mod setzen:
    • feature sue-svn holt /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 auf "no" stellen
    • rpm DZ_sue installieren
  • Bootscript /etc/init.d/sue_boot startet /usr/sue/sbin/sue.run -m boot

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

  • das sind z.Z.: hosts,netgroups,passwd,klogin,ssh
  • oder manuell aktivierte Features per touchfeatures

   /products/sue/etc/touchfeatures -F list_of_features [-H list_of_hosts] [-N list_of_netgroups]
  • in Zukunft soll es noch die Option geben, ein vollständiges Update anzustoßen

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

Nutzung von SVN

Erste Benutzung von SUE/SVN
  • Zugangsberechtigung: ~TARCH/svn/ServerSUE/var/svn/accfilekerb
  • auschecken: svn co https://znrepo.ifh.de/svn [ <meinrepository> ]

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

  • im Modifier suesvn-mod 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>
  • 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.

Liste der Features und Status

feature

SL

Status

Kommentare

aaru

5,6

todo

afs_client

5,6

done

arcx

5,6

todo

atlas

5

todo

automount

5,6

done

cfengine

5,6

todo

conmgr

5

todo

cups

5,6

todo

ganglia

5

todo

gdm

5

todo

group

5,6

todo

hosts

5,6

done

kerberos

5,6

todo

kernel

5,6

todo

klogin

5,6

todo

ldap

5

todo

linux

5,6

todo

motd

5,6

todo

nagios

5,6

todo

name_srv

5,6

todo

netgroup

5,6

todo

nsswitch

5,6

todo

pam

5,6

todo

passwd

5,6

todo

passwd_prog

5,6

todo

products

5

todo

scout

5,6

done

security

5,6

todo

ssh

5,6

todo

sudo

5,6

todo

syslog

5,6

todo

tcp_wrapper

5,6

todo

tidy_up

5,6

todo

trusted

5,6

todo

vamos

5,6

todo

xntp

5,6

todo

zzz

5,6

todo

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

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