¿Hay una manera de controlar dos services systemd instanciados como una sola unidad?

Tengo un par de web services python que estoy intentando ejecutar en una caja de Fedora 15. Están siendo ejecutados por paster, y la única diferencia en iniciarlos es el file de configuration que leen.

Esto parece ser un buen ajuste para los services instanciados de systemd, pero me gustaría poder controlarlos como una sola unidad. Un objective systemd que requiere ambos services parece ser la forma de abordar eso. Al iniciar el objective se inician ambos services, pero si se detiene el objective, se dejan en ejecución.

Aquí está el file de service:

[Unit] Description=AUI Instance on Port %i After=syslog.target [Service] WorkingDirectory=/usr/local/share/aui ExecStart=/opt/cogo/bin/paster serve --log-file=/var/log/aui/%i deploy-%i.ini Restart=always RestartSec=2 User=aui Group=aui [Install] WantedBy=multi-user.target 

Y aquí está el file de destino:

 [Unit] Description=AUI Requires=aui@5001.service Requires=aui@5002.service After=syslog.target [Install] WantedBy=multi-user.target 

¿Es posible este tipo de agrupación con systemd?

One Solution collect form web for “¿Hay una manera de controlar dos services systemd instanciados como una sola unidad?”

Observe usando la opción BindsTo para unir las unidades. La página de manual systemd.unit(5) describe así:

BindsTo =

Configura las dependencies de requisitos, muy similares en estilo a Requires =, sin embargo, además de este comportamiento, también declara que esta unidad se detiene cuando cualquiera de las unidades listdas desaparece repentinamente. Las unidades pueden desaparecer repentinamente y de forma inesperada si un service termina por su propia elección, un dispositivo está desconectado o un punto de assembly desmontado sin la participación de systemd.

Que suena como debe hacer lo que quieras y atar una unidad a la otra de modo que siempre que el maestro detiene el esclavo se detiene también y viceversa para la puesta en marcha.

No olvide que también puede utilizar Before / After para especificar el order en que deben iniciarse si es necesario.

  • ¿Cómo puedo determinar el usuario / grupo de Linux que ejecuta los trabajos del gestor del sistema?
  • ¿Por qué mi service se reinicia cada 90 segundos?
  • ¿Por qué se está reiniciando mi planificador de CUPS repetidamente?
  • Debian: Systemd no puede iniciar el proceso de Apache
  • request de inicio de service repetida demasiado rápido, negándose a iniciar límite
  • ¿Cómo configurar permissions de files pid de MySQL?
  • git-daemon en systemd: base-path no existe o no es un directory
  • Temporizador de apagado Systemd no funciona
  • Systemd / ssh: No se puede asignar memory
  • Servicios Systemd incoherentes en serveres Centos
  • Cómo utilizar la variable de entorno `$ HOME` en los files de service del sistema
  • Cómo configurar el nombre de host para un sistema Debian Jessie?
  • ¿Por qué obtengo el código de estado 2 y qué significa?
  • El linux y los temas del servidor de Windows, como ubuntu, centos, apache, nginx, debian y consejos de red.