Hi there,
I'm planning a "platform resilience" plan to OS updates, so I have my FE server to restart the services at bootup.
Did anyone already worked on a "sas.servers"-like script for systemd?
Thanks all!
Marco
You mean not using the systemv emulation layer anymore?
Hi Greg, my deployment is a commonly multi-tiered VA install, but the customer IT wants to manage OS patches and restart the hosts freely, being sure the SAS platform would get back online.
I'm already using LSM, I've forked it on GitHub to make my personalisations (e.g., not update check on startup, manage a Grid, and some other tweaks). The UserExit scripts aren't documented much, so I had to tinker a lot to manage extra components like solr.
I think I'll get it in the systemd script au lieu de sas.servers, since it would check the BE prerequisites.
I've modded the sas.servers.mid.template to do some housekeeping at shutdown (delete tmlogs, empty tomcat work and temp, rotate catalina.out) ... I'm pimping my deploys ! 😄
lsm isn't a full systemd thing, isn't it?
We got a fully systemd service implementation: (2 server, start/stop control from external)
sasallservices.service loaded active exited SAS Applications
sascachelocator.service loaded active running SAS Cache Locator Service ins_41415
sasconnect.service loaded active running SAS Connect Spawner
sasdeployd.service loaded active running SAS Deployment Agent
sasdipjrun.service loaded active running SAS DIP Job Runner
sashqagent.service loaded active running SAS Environment Manager Agent
sasirstudio.service loaded active running SAS Information Retrieval Studio Server
sasmeta.service loaded active running SAS MetadataServer
sasobj.service loaded active running SAS Object Spawner
sasrgpd.service loaded active running SAS Web Infrastructure Data Server RGF
saswip.service loaded active running SAS Web Infrastructure Data Server SharedServices
We don't use lsm.
Don't remember why we didn't use it ad hoc.
We missed an official SAS supported modern startup concept without the systemv systemd compatibility layer which is very old meanwhile
Oh, sorry, I misunderstood your first sentence.
I've seen some Ansible implementations, others via sorts-of a framework bound to an operation manager, each with pros and cons, but whether you check single script output (single service or sas.servers) or listening ports... It's always difficult to keep the "wants" of services , and you'll always have to check them manually.
LSM does a great job with minimum implementation effort.
@MarcoGhiglieri , @gwootton : is there an exemplary demonstration, how to implement the lsm-script into a system d call/script? I am familiar with the lsm-Tool that we use for our multi-tiered VA installaltion.
Hi! This is what is put in sas.service, it's working but I'm sure I need to refine it (Requires, WantedBy)
[Unit] Description=SAS Services Requires=network.target [Service] User=sasinst Group=sas ExecStart=/bin/bash -c '/sas/SAS_lsm/SAS_lsm -c /sas/SAS_lsm/va.cfg -a 1 -e' ExecStop=/bin/bash -c '/sas/SAS_lsm/SAS_lsm -c /sas/SAS_lsm/va.cfg -o 1 -e' RemainAfterExit=Yes [Install] WantedBy=multi-user.target
" RemainAfterExit=Yes " was tricky to find.
Had to work a lot with
Any improvements are wellcome! 🙂
The SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment.
SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.
Find more tutorials on the SAS Users YouTube channel.