You are here: Foswiki>Frontend Web>ZKS>ZKSSysteme (16 Apr 2015, RaphaelMueller)Edit Attach

ZKS Systeme und Services


Systeme

Liste der Rechner auf denen Teile des ZKS laufen

Produktivsystem

Im Produktivsystem läuft die ZRS-Anwendung auf einer der beiden Maschinen zkl003 oder zkl004.

UWZ?

Die Adressen der Schleusenrechner (x86-ThinClient und PPC) sind in der zks-system.dat aufgeführt.

Entwicklung

System IP Location Usage User
kp1czs04 140.181.131.130 Programmentwicklungsraum vme Teil root
kp1czu02 140.181.131.138 Programmentwicklungsraum vme Teil root
kp1czx04 140.181.129.136 Programmentwicklungsraum Touch Teil zks

Services

Auf den PowerPCs laufen die Services bkr++ und uwz++, diese werden derzeit über /etc/inittab gestartet. Init sorgt dafür, dass im Fehlerfall die Services automatisch neu gestartet werden.

Um im Fehlerfall Coredumps zu erhalten und Services manuell anhalten zu können wird auf Libslack Daemon umgestellt.

Libslack Daemon is ein wrapper um Prozesse als System Dienste starten zu können. Er kümmert sich darum ein detach vom Terminal zu machen, die stdout und stderr dem syslog zuzuführen, user privileges zu droppen und Prozesse bei Bedarf neu zu starten.

Der start von Libslack Daemon ist in die normalen initscripte integriert und in den runleveln eingehängt.

Das initscript liegt unter /etc/init.d/zks_bkr. Es unterstützt chkconfig um sich in die runlevel einzuhängen. Der eigentliche Service liegt unter /usr/local/zks2/

Start/Stop/Status

bash# service zks_bkr start
Starting zks_bkr:                                          [  OK  ]

bash# service zks_bkr status
Status of zks_bkr: daemon pid 1794                         [  OK  ]

bash# service zks_bkr stop
Stopping zks_bkr:                                          [  OK  ]

Wenn der dienst erneut gestartet wird obwohl er läuft gibt es ein warnmeldung. Der Dienst wird nicht ein zweites mal gestartet. Gleiches gilt für stop.

Processtable

Zunächst wird der Libslack Daemon gestartet. Dieser entkoppelt sich im aufrufenden Terminal. Danach wird der eigentlich ZKS Service als Child Prozess gestartet.
bash# ps axf
 1995 ?        Ss     0:00 /usr/sbin/daemon ...
 2016 ?        Sl     2:59  \_ /usr/local/zks2/bkr++_main_gcc-4_ppc_6xx ...

Logfiles

Output (stderr und stdout) wird von libslack Daemon in /var/log/messages abgelegt. Auch restarts werden hier protokolliert. Das ZKS selbst loggt nach /usr/local/zks2/zks-log/ (Testsystem), oder /common/zks-log/ (life-System auf der zkl003.

Umbau der Schleusen und Einführung neuer Dosimeter

Der bisherige VME-Schleusenrechner (CU824) überwacht nur noch die parallel zugeführten I/O-Signale (Türstatus, Bereichszustand, Trittmatten,...) und steuert die Türrelais. Die übrigen Aufgaben sind auf eine 'thin client' CPU (x86) verlagert worden, die jetzt in der Schleuse verbaut ist.

Umstellung eines VME-Schleusenrechners auf neue Version mit 'thin client'

login as root
cd /usr/local/zks2
service zks_bkr stop
mv zks_bkr /etc/init.d/
reboot

Nach Umbau einer Schleuse müssen zrs und rlog über die geänderten und erweiterten ZKS-nodes informiert werden. Ein entsprechend geändertes zks-system.dat muss bereitgestellt und über 'packcontrol' das 'zks' Paket neu gestartet werden.

el6 migration 2015

ZKS laeuft in einem eigenen vlan mit eigenem IP Subnetz 192.168.6.0/24.

DHCP/DNS werden durch die normalen IP Server von cscoin bereitgestellt (dcw001, dcw002, ssw001, ssw002). IP Adressen werden regulaer ueber das Sternchen-Tool gepflegt.

Die Linux Server zkl001/zkl002 sind multihomed im ACC und im ZKS netz. Sie stellen tftp, pxeconfig, nfs und die zks dienste bereit.

physical system hostname acc hostname zks
zkl001 zkl001 zkl001z
zkl002 zkl002 zkl002z

zkl00x bilden einen pacemaker cluster und stellen die virtuelle ip zkl00d bzw zkl00dz bereit.

Syslogs der frontends werden an logstash durchgereicht.

software

zrs und rlog

laufen auf zkl00dz. Zip bundle der Software auspacken unter /common/usr/cscofe/opt/zks.

Das rlog schreibt nach /common/usr/cscofe/opt/zks/log

TODO: in pacemaker einhaengen. Derzeit mit der Hand in einer ssh session starten

uwz

laeuft auf einer cpu87.

Zip datei unter /common/export/uwz ablegen und als uwz.zip verlinken. Die Zip datei beinhaltet die configfiles und das startscript.

Software wird per nfsinit nachgeladen. D.h. fuer einen Rechner der sie ausfuehrt muss ein Verzeichnis /common/export/nfsinit/HOSTNAME existieren. Dort drin ein symlink 50-uwz nach ../global/uwz

Beim booten wird das nfs gemountet, die zip datei in die lokale ramdisk entpackt und der dienst gestartet.

Nach dem booten wird kein nfs mehr benoetigt.

Startscript liegt in der ramdisk unter /etc/init/boot.d/99-uwz und kann fuer status, stop, restart, etc verwendet werden

Der eigentliche prozess wird von einem libslack-daemon am laufen gehalten.

Logfiles werden via syslog und zkl00dz an logstash durchgereicht.

Configiles liegen in /etc/zks-system.dat und /etc/control.dat

bkr

laeuft auf einer cu824.

Analog zu uwz

thinclient

TODO
Topic revision: r13 - 16 Apr 2015, RaphaelMueller
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback