40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  PSL  Not logged in ELOG logo
Entry  Tue Feb 26 02:45:20 2019, anchal, Notes, Computers, Migrating epics channels from acromag1 to c3iocserver acromag.cmd
    Reply  Tue Mar 12 17:04:03 2019, anchal and awade, Summary, Computers, Migrating epics channels from acromag1 to c3iocserver 
       Reply  Sun Mar 17 18:28:06 2019, awade and anchal, Summary, Computers, Migrating epics channels from acromag1 to c3iocserver: killing acromag1 services 
Message ID: 2310     Entry time: Sun Mar 17 18:28:06 2019     In reply to: 2309
Author: awade and anchal 
Type: Summary 
Category: Computers 
Subject: Migrating epics channels from acromag1 to c3iocserver: killing acromag1 services 

Wandered into the PSL just now.  Slow controls were going wild.  Traced it back to the fact that acromag1 and its auto-restarting services were still live. The new dockerized python script services on C3IOCServer were fighting the Acromag1 machine processes.  I've copied the service scripts into the ~/Downloads/ folder of acromag1 and deleted them from /etc/init/.   I then rebooted acromag1 and the problems went away. 

We should achieve whatever is on Acromag1 and probably rebuild that machine with an operating system that is still in long term support 

  • The migration of all EPICS channel hosting and all python programmes has been done from Acromag1 to C3IOCServer. Now Acromag1 is neither hosting anything nor running any codes.
  • All channels are hosted in C3IOCServer through docker services. The channels are grouped into 5 groups which can be independently stopped or restarted now. This will allow to cahnge any channels or add channels without disrupting everything else.
  • All python programmes (Autolockers, PID scripts etc) are also running as separate services.
  • All these services are run inside a container which is utilizing an IP address in our local netwrok. Addresses are reserved for such services.
  • At any time, to see the list of services, ssh into C3IOCserver (ssh and run sudo docker ps.
  • Using the container names, the services can be stopped (sudo docker stop container name), started (sudo docker start container name) or restarted (sudo docker restart container name)
  • To shut down all the python programmes, go to /home/controls/Git/cit_ctnlab/ctn_scripts and run sudo docker-compose down.   To start them again, run  sudo docker-compose up. To run it in background, use flag -d.
  • To shut down all the channels, go to /home/controls/modbus and run sudo docker-compose down. Rest instructions are as above.
  • For adding a new python script as a service, you would need to add any additional packages in /home/controls/Git/pyEPICSDocker/requirement.txt and run "sudo docker build -t pyep ." at the same directory. Delete any previous instance of the image to save space.
  • After this, add the service in Git/cit_ctnlab/ctn_scripts/docker-compose.yml following the examples of existing services.
  • If the packages are LIGO propietary, you would need to mount the cloned git dir into "/dev" folder in the docker-compose.yml file and add sys.path.append('/dep') in your python script. Follow example of netgpibpackage used in PLLautolocker.py.


ELOG V3.1.3-